bad dependency in pg_dump output related to support function breaks binary upgrade
| От | Pavel Stehule |
|---|---|
| Тема | bad dependency in pg_dump output related to support function breaks binary upgrade |
| Дата | |
| Msg-id | CAFj8pRCz7_G8M-TB_DzNP0O5fe6jW5DFVyTv9-UT-QcVfQNPHA@mail.gmail.com обсуждение исходный текст |
| Ответы |
Re: bad dependency in pg_dump output related to support function breaks binary upgrade
|
| Список | pgsql-hackers |
Hi
some Orafce's user reported problems with pg_upgrade. I checked this issue and it looks like pg_dump problem:
pg_restore: creating FUNCTION "public.nvarchar2("public"."nvarchar2", integer, boolean)"
pg_restore: while PROCESSING TOC:
pg_restore: from TOC entry 612; 1255 33206 FUNCTION nvarchar2("public"."nvarchar2", integer, boolean) pavel
pg_restore: error: could not execute query: ERROR: function public.nvarchar2_transform(internal) does not exist
Command was: CREATE FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) RETURNS "public"."nvarchar2"
LANGUAGE "c" IMMUTABLE STRICT SUPPORT "public"."nvarchar2_transform"
AS '$libdir/orafce', 'nvarchar2';
pg_restore: while PROCESSING TOC:
pg_restore: from TOC entry 612; 1255 33206 FUNCTION nvarchar2("public"."nvarchar2", integer, boolean) pavel
pg_restore: error: could not execute query: ERROR: function public.nvarchar2_transform(internal) does not exist
Command was: CREATE FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) RETURNS "public"."nvarchar2"
LANGUAGE "c" IMMUTABLE STRICT SUPPORT "public"."nvarchar2_transform"
AS '$libdir/orafce', 'nvarchar2';
--
-- TOC entry 612 (class 1255 OID 33206)
-- Name: nvarchar2("public"."nvarchar2", integer, boolean); Type: FUNCTION; Schema: public; Owner: pavel
--
CREATE FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) RETURNS "public"."nvarchar2"
LANGUAGE "c" IMMUTABLE STRICT SUPPORT "public"."nvarchar2_transform"
AS '$libdir/orafce', 'nvarchar2';
-- For binary upgrade, handle extension membership the hard way
ALTER EXTENSION "orafce" ADD FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean);
ALTER FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) OWNER TO "pavel";
--
-- TOC entry 607 (class 1255 OID 33201)
-- Name: nvarchar2_transform("internal"); Type: FUNCTION; Schema: public; Owner: pavel
--
CREATE FUNCTION "public"."nvarchar2_transform"("internal") RETURNS "internal"
LANGUAGE "c" IMMUTABLE STRICT
AS '$libdir/orafce', 'orafce_varchar_transform';
-- For binary upgrade, handle extension membership the hard way
ALTER EXTENSION "orafce" ADD FUNCTION "public"."nvarchar2_transform"("internal");
ALTER FUNCTION "public"."nvarchar2_transform"("internal") OWNER TO "pavel";
-- TOC entry 612 (class 1255 OID 33206)
-- Name: nvarchar2("public"."nvarchar2", integer, boolean); Type: FUNCTION; Schema: public; Owner: pavel
--
CREATE FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) RETURNS "public"."nvarchar2"
LANGUAGE "c" IMMUTABLE STRICT SUPPORT "public"."nvarchar2_transform"
AS '$libdir/orafce', 'nvarchar2';
-- For binary upgrade, handle extension membership the hard way
ALTER EXTENSION "orafce" ADD FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean);
ALTER FUNCTION "public"."nvarchar2"("public"."nvarchar2", integer, boolean) OWNER TO "pavel";
--
-- TOC entry 607 (class 1255 OID 33201)
-- Name: nvarchar2_transform("internal"); Type: FUNCTION; Schema: public; Owner: pavel
--
CREATE FUNCTION "public"."nvarchar2_transform"("internal") RETURNS "internal"
LANGUAGE "c" IMMUTABLE STRICT
AS '$libdir/orafce', 'orafce_varchar_transform';
-- For binary upgrade, handle extension membership the hard way
ALTER EXTENSION "orafce" ADD FUNCTION "public"."nvarchar2_transform"("internal");
ALTER FUNCTION "public"."nvarchar2_transform"("internal") OWNER TO "pavel";
the supporting function should be dumped first before function where supporting function is used.
Regards
Pavel
В списке pgsql-hackers по дате отправления: