Thread: pg_upgrade fails to restore function
Hi All
During the pg_upgrade from PostgreSQL 9.4 to PostgreSQL 10.0, the error”[archiver (db)] Error while PROCESSING TOC:” happened, The upgrade failed. OS is RHEL 6.5 , The error is as below:
<pg_upgrade log>pg_restore: connecting to database for restore
pg_restore: creating pg_largeobject "pg_largeobject"
pg_restore: creating pg_largeobject_metadata "pg_largeobject_metadata"
pg_restore: creating SCHEMA "bo_user0300"
pg_restore: creating SCHEMA "d0007359_bex2018"
pg_restore: creating SCHEMA "d0007359_dan2014"
---- omit ------
---- omit ------
---- omit ------
pg_restore: creating PROCEDURE "zchuo_ult18.kp_delkakeihyo(character)"
pg_restore: creating FOREIGN DATA WRAPPER "dblink_fdw"
pg_restore: [archiver (db)] Error while PROCESSING TOC:
pg_restore: [archiver (db)] Error from TOC entry 470023; 2328 777028 FOREIGN DATA WRAPPER dblink_fdw postgres
pg_restore: [archiver (db)] could not execute query: ERROR: function dblink_fdw_validator(text[], oid) does not exist
Command was: CREATE FOREIGN DATA WRAPPER "dblink_fdw" VALIDATOR "dblink_fdw_validator";
-- For binary upgrade, handle extension membership the hard way
ALTER EXTENSION "dblink" ADD FOREIGN DATA WRAPPER "dblink_fdw";
Please help to let me know how to address this error?
I appreciate your quick response. Thank you!
Regards,
Roger
"=?gb18030?B?Um9nZXIgU3Vubnk=?=" <947035276@qq.com> writes: > During the pg_upgrade from PostgreSQL 9.4 to PostgreSQL 10.0, the error¡±[archiver (db)] Error while PROCESSING TOC:¡±happened, The upgrade failed. OS is RHEL 6.5 , The error is as below: > <pg_upgrade log>pg_restore: connecting to database for restorepg_restore: creating pg_largeobject "pg_largeobject"pg_restore:creating pg_largeobject_metadata "pg_largeobject_metadata"pg_restore: creating SCHEMA "bo_user0300"pg_restore:creating SCHEMA "d0007359_bex2018"pg_restore: creating SCHEMA "d0007359_dan2014" ---- omit ----------omit ---------- omit ------ > pg_restore: creating PROCEDURE "zchuo_ult18.kp_delkakeihyo(character)" > pg_restore: creating FOREIGN DATA WRAPPER "dblink_fdw" > pg_restore: [archiver (db)] Error while PROCESSING TOC: > pg_restore: [archiver (db)] Error from TOC entry 470023; 2328 777028 FOREIGN DATA WRAPPER dblink_fdw postgrespg_restore:[archiver (db)] could not execute query: ERROR: function dblink_fdw_validator(text[], oid) does not exist > Command was: CREATE FOREIGN DATA WRAPPER "dblink_fdw" VALIDATOR "dblink_fdw_validator"; Is that really the first error, or did you "omit" some? What it looks like is that dblink_fdw_validator had previously failed to be created, probably because you don't have dblink.so installed in the destination database. Or maybe it's not the right version of dblink.so. regards, tom lane
HI Tom
Thank you very much for your help. This issue has been solved.
Regards,
Henry
"Roger Sunny" <947035276@qq.com> writes:
> During the pg_upgrade from PostgreSQL 9.4 to PostgreSQL 10.0, the error¡±[archiver (db)] Error while PROCESSING TOC:¡± happened, The upgrade failed. OS is RHEL 6.5 , The error is as below:
> <pg_upgrade log>pg_restore: connecting to database for restorepg_restore: creating pg_largeobject "pg_largeobject"pg_restore: creating pg_largeobject_metadata "pg_largeobject_metadata"pg_restore: creating SCHEMA "bo_user0300"pg_restore: creating SCHEMA "d0007359_bex2018"pg_restore: creating SCHEMA "d0007359_dan2014" ---- omit ---------- omit ---------- omit ------
> pg_restore: creating PROCEDURE "zchuo_ult18.kp_delkakeihyo(character)"
> pg_restore: creating FOREIGN DATA WRAPPER "dblink_fdw"
> pg_restore: [archiver (db)] Error while PROCESSING TOC:
> pg_restore: [archiver (db)] Error from TOC entry 470023; 2328 777028 FOREIGN DATA WRAPPER dblink_fdw postgrespg_restore: [archiver (db)] could not execute query: ERROR: function dblink_fdw_validator(text[], oid) does not exist
> Command was: CREATE FOREIGN DATA WRAPPER "dblink_fdw" VALIDATOR "dblink_fdw_validator";
Is that really the first error, or did you "omit" some? What it
looks like is that dblink_fdw_validator had previously failed to
be created, probably because you don't have dblink.so installed
in the destination database. Or maybe it's not the right version
of dblink.so.
regards, tom lane
Thank you very much for your help. This issue has been solved.
Regards,
Henry
------------------ 原始邮件 ------------------
发件人: "Tom Lane"<tgl@sss.pgh.pa.us>;
发送时间: 2018年3月3日(星期六) 晚上11:30
收件人: "Roger Sunny"<947035276@qq.com>;
抄送: "pgsql-general"<pgsql-general@lists.postgresql.org>;
主题: Re: pg_upgrade fails to restore function
> During the pg_upgrade from PostgreSQL 9.4 to PostgreSQL 10.0, the error¡±[archiver (db)] Error while PROCESSING TOC:¡± happened, The upgrade failed. OS is RHEL 6.5 , The error is as below:
> <pg_upgrade log>pg_restore: connecting to database for restorepg_restore: creating pg_largeobject "pg_largeobject"pg_restore: creating pg_largeobject_metadata "pg_largeobject_metadata"pg_restore: creating SCHEMA "bo_user0300"pg_restore: creating SCHEMA "d0007359_bex2018"pg_restore: creating SCHEMA "d0007359_dan2014" ---- omit ---------- omit ---------- omit ------
> pg_restore: creating PROCEDURE "zchuo_ult18.kp_delkakeihyo(character)"
> pg_restore: creating FOREIGN DATA WRAPPER "dblink_fdw"
> pg_restore: [archiver (db)] Error while PROCESSING TOC:
> pg_restore: [archiver (db)] Error from TOC entry 470023; 2328 777028 FOREIGN DATA WRAPPER dblink_fdw postgrespg_restore: [archiver (db)] could not execute query: ERROR: function dblink_fdw_validator(text[], oid) does not exist
> Command was: CREATE FOREIGN DATA WRAPPER "dblink_fdw" VALIDATOR "dblink_fdw_validator";
Is that really the first error, or did you "omit" some? What it
looks like is that dblink_fdw_validator had previously failed to
be created, probably because you don't have dblink.so installed
in the destination database. Or maybe it's not the right version
of dblink.so.
regards, tom lane