Thread: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Erwin Moller
Date:
Hi, While trying to move an old 8.1 Postgres install to a new server with postgres 10.10, I get an error, listed hereunder: I am trying to get a mydump_x_x_x.sql file to use to reinstall on the target machine. From my new machine I connect to my old machine like this: erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -d myremotedb Password: pg_dump: [archiver (db)] query failed: ERROR: relation "pg_opfamily" does not exist pg_dump: [archiver (db)] query was: SELECT classid, objid, refclassid, refobjid, deptype FROM pg_depend WHERE deptype != 'p' AND deptype != 'e' UNION ALL SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, refclassid, refobjid, deptype FROM pg_depend d, pg_amop o WHERE deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass AND objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND amopfamily = refobjid) UNION ALL SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, refclassid, refobjid, deptype FROM pg_depend d, pg_amproc p WHERE deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass AND objid = p.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND amprocfamily = refobjid) ORDER BY 1,2 And no archive is created. Does any of you kind people have advice? I am sure this worked on postgres9. Regards, Erwin Moller
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Ian Barwick
Date:
On 8/20/19 7:12 PM, Erwin Moller wrote: > Hi, > > While trying to move an old 8.1 Postgres install to a new server with postgres 10.10, I get an error, listed hereunder: > I am trying to get a mydump_x_x_x.sql file to use to reinstall on the target machine. > > From my new machine I connect to my old machine like this: > erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -dmyremotedb > Password: > pg_dump: [archiver (db)] query failed: ERROR: relation "pg_opfamily" does not exist > pg_dump: [archiver (db)] query was: SELECT classid, objid, refclassid, refobjid, deptype FROM pg_depend WHERE deptype !='p' AND deptype != 'e' > UNION ALL > SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, refclassid, refobjid, deptype FROM pg_depend d, pg_amopo WHERE deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass AND objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclassAND amopfamily = refobjid) > UNION ALL > SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, refclassid, refobjid, deptype FROM pg_depend d, pg_amprocp WHERE deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass AND objid = p.oid AND NOT (refclassid= 'pg_opfamily'::regclass AND amprocfamily = refobjid) > ORDER BY 1,2 > > And no archive is created. > > Does any of you kind people have advice? I am sure this worked on postgres9. It looks like this was broken just before 10.10 was released, and has since been fixed; see: https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6844adba54f7d96f30f834efc6d9aa1e52e5672d Your options are: - find a 10.9 or earlier package and use the pg_dump from that - build pg_dump yourself - wait for 10.11 to come out (though I imagine that won't be for a month or two) Regards Ian Barwick -- Ian Barwick https://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Erwin Moller
Date:
Op 8/20/2019 om 2:07 PM schreef Ian Barwick: > On 8/20/19 7:12 PM, Erwin Moller wrote: >> Hi, >> >> While trying to move an old 8.1 Postgres install to a new server with >> postgres 10.10, I get an error, listed hereunder: >> I am trying to get a mydump_x_x_x.sql file to use to reinstall on the >> target machine. >> >> From my new machine I connect to my old machine like this: >> erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date >> +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -d >> myremotedb >> Password: >> pg_dump: [archiver (db)] query failed: ERROR: relation "pg_opfamily" >> does not exist >> pg_dump: [archiver (db)] query was: SELECT classid, objid, >> refclassid, refobjid, deptype FROM pg_depend WHERE deptype != 'p' AND >> deptype != 'e' >> UNION ALL >> SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, >> refclassid, refobjid, deptype FROM pg_depend d, pg_amop o WHERE >> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass AND >> objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >> amopfamily = refobjid) >> UNION ALL >> SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, >> refclassid, refobjid, deptype FROM pg_depend d, pg_amproc p WHERE >> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass >> AND objid = p.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >> amprocfamily = refobjid) >> ORDER BY 1,2 >> >> And no archive is created. >> >> Does any of you kind people have advice? I am sure this worked on >> postgres9. > > It looks like this was broken just before 10.10 was released, and has > since been fixed; > see: > > https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6844adba54f7d96f30f834efc6d9aa1e52e5672d > > Your options are: > - find a 10.9 or earlier package and use the pg_dump from that > - build pg_dump yourself > - wait for 10.11 to come out (though I imagine that won't be for a > month or two) > > > Regards > > Ian Barwick > Thanks a lot, Ian! That saved me an upcoming headache. I searched a lot on Google but couldn't find any relevant information. Will installing Postgres 11 also work? (Not the Ubuntu18.04 default for Postgres, but doable). Or does those pg_dump versions also expect pg_opfamily to exist? Thanks for your time! Regards, Erwin Moller
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Adrian Klaver
Date:
On 8/20/19 6:18 AM, Erwin Moller wrote: > > > Op 8/20/2019 om 2:07 PM schreef Ian Barwick: >> On 8/20/19 7:12 PM, Erwin Moller wrote: >>> Hi, >>> >>> While trying to move an old 8.1 Postgres install to a new server with >>> postgres 10.10, I get an error, listed hereunder: >>> I am trying to get a mydump_x_x_x.sql file to use to reinstall on the >>> target machine. >>> >>> From my new machine I connect to my old machine like this: >>> erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date >>> +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -d >>> myremotedb >>> Password: >>> pg_dump: [archiver (db)] query failed: ERROR: relation "pg_opfamily" >>> does not exist >>> pg_dump: [archiver (db)] query was: SELECT classid, objid, >>> refclassid, refobjid, deptype FROM pg_depend WHERE deptype != 'p' AND >>> deptype != 'e' >>> UNION ALL >>> SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, >>> refclassid, refobjid, deptype FROM pg_depend d, pg_amop o WHERE >>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass AND >>> objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>> amopfamily = refobjid) >>> UNION ALL >>> SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, >>> refclassid, refobjid, deptype FROM pg_depend d, pg_amproc p WHERE >>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass >>> AND objid = p.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>> amprocfamily = refobjid) >>> ORDER BY 1,2 >>> >>> And no archive is created. >>> >>> Does any of you kind people have advice? I am sure this worked on >>> postgres9. >> >> It looks like this was broken just before 10.10 was released, and has >> since been fixed; >> see: >> >> https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6844adba54f7d96f30f834efc6d9aa1e52e5672d >> >> >> Your options are: >> - find a 10.9 or earlier package and use the pg_dump from that >> - build pg_dump yourself >> - wait for 10.11 to come out (though I imagine that won't be for a >> month or two) >> >> >> Regards >> >> Ian Barwick >> > > Thanks a lot, Ian! > > That saved me an upcoming headache. I searched a lot on Google but > couldn't find any relevant information. > > Will installing Postgres 11 also work? (Not the Ubuntu18.04 default for > Postgres, but doable). > Or does those pg_dump versions also expect pg_opfamily to exist? From the bug that introduced the issue: https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=07b39083c "Per bug #15934 from Tom Gottfried. Back-patch to all supported branches." So I'm guessing it is in the most recent release of all current versions. > > Thanks for your time! > > Regards, > Erwin Moller > > > > > -- Adrian Klaver adrian.klaver@aklaver.com
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation "pg_opfamily" does not exist
From
Tom Lane
Date:
Adrian Klaver <adrian.klaver@aklaver.com> writes: > On 8/20/19 6:18 AM, Erwin Moller wrote: >> Will installing Postgres 11 also work? (Not the Ubuntu18.04 default for >> Postgres, but doable). >> Or does those pg_dump versions also expect pg_opfamily to exist? > From the bug that introduced the issue: > https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=07b39083c > "Per bug #15934 from Tom Gottfried. Back-patch to all supported branches." > So I'm guessing it is in the most recent release of all current versions. Yeah, it's broken in all the August minor releases. Sorry about that :-( regards, tom lane
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Erwin Moller
Date:
Op 8/20/2019 om 3:32 PM schreef Adrian Klaver: > On 8/20/19 6:18 AM, Erwin Moller wrote: >> >> >> Op 8/20/2019 om 2:07 PM schreef Ian Barwick: >>> On 8/20/19 7:12 PM, Erwin Moller wrote: >>>> Hi, >>>> >>>> While trying to move an old 8.1 Postgres install to a new server >>>> with postgres 10.10, I get an error, listed hereunder: >>>> I am trying to get a mydump_x_x_x.sql file to use to reinstall on >>>> the target machine. >>>> >>>> From my new machine I connect to my old machine like this: >>>> erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date >>>> +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -d >>>> myremotedb >>>> Password: >>>> pg_dump: [archiver (db)] query failed: ERROR: relation >>>> "pg_opfamily" does not exist >>>> pg_dump: [archiver (db)] query was: SELECT classid, objid, >>>> refclassid, refobjid, deptype FROM pg_depend WHERE deptype != 'p' >>>> AND deptype != 'e' >>>> UNION ALL >>>> SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, >>>> refclassid, refobjid, deptype FROM pg_depend d, pg_amop o WHERE >>>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass >>>> AND objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>>> amopfamily = refobjid) >>>> UNION ALL >>>> SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, >>>> refclassid, refobjid, deptype FROM pg_depend d, pg_amproc p WHERE >>>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass >>>> AND objid = p.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>>> amprocfamily = refobjid) >>>> ORDER BY 1,2 >>>> >>>> And no archive is created. >>>> >>>> Does any of you kind people have advice? I am sure this worked on >>>> postgres9. >>> >>> It looks like this was broken just before 10.10 was released, and >>> has since been fixed; >>> see: >>> >>> https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6844adba54f7d96f30f834efc6d9aa1e52e5672d >>> >>> >>> Your options are: >>> - find a 10.9 or earlier package and use the pg_dump from that >>> - build pg_dump yourself >>> - wait for 10.11 to come out (though I imagine that won't be for a >>> month or two) >>> >>> >>> Regards >>> >>> Ian Barwick >>> >> >> Thanks a lot, Ian! >> >> That saved me an upcoming headache. I searched a lot on Google but >> couldn't find any relevant information. >> >> Will installing Postgres 11 also work? (Not the Ubuntu18.04 default >> for Postgres, but doable). >> Or does those pg_dump versions also expect pg_opfamily to exist? > > > From the bug that introduced the issue: > > https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=07b39083c > > "Per bug #15934 from Tom Gottfried. Back-patch to all supported > branches." > > So I'm guessing it is in the most recent release of all current versions. Thank you, Adrian. That is a bummer. Since I have no idea how to safely install an older version of pg_dump alongside my current 10.10 install, I will wait for the patch. Thank you for your responses! Regards, Erwin Moller
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Adrian Klaver
Date:
On 8/20/19 7:37 AM, Erwin Moller wrote: > > Op 8/20/2019 om 3:32 PM schreef Adrian Klaver: >> On 8/20/19 6:18 AM, Erwin Moller wrote: >>> >>> >>> Op 8/20/2019 om 2:07 PM schreef Ian Barwick: >>>> On 8/20/19 7:12 PM, Erwin Moller wrote: >>>>> Hi, >>>>> >>>>> While trying to move an old 8.1 Postgres install to a new server >>>>> with postgres 10.10, I get an error, listed hereunder: >>>>> I am trying to get a mydump_x_x_x.sql file to use to reinstall on >>>>> the target machine. >>>>> >>>>> From my new machine I connect to my old machine like this: >>>>> erwin@ubuntu:~$ pg_dump -f "/home/erwin/mydump_$(date >>>>> +%d_%m_%Y).sql" -C -h somehost.com -p 5433 -U myvalidusername -d >>>>> myremotedb >>>>> Password: >>>>> pg_dump: [archiver (db)] query failed: ERROR: relation >>>>> "pg_opfamily" does not exist >>>>> pg_dump: [archiver (db)] query was: SELECT classid, objid, >>>>> refclassid, refobjid, deptype FROM pg_depend WHERE deptype != 'p' >>>>> AND deptype != 'e' >>>>> UNION ALL >>>>> SELECT 'pg_opfamily'::regclass AS classid, amopfamily AS objid, >>>>> refclassid, refobjid, deptype FROM pg_depend d, pg_amop o WHERE >>>>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amop'::regclass >>>>> AND objid = o.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>>>> amopfamily = refobjid) >>>>> UNION ALL >>>>> SELECT 'pg_opfamily'::regclass AS classid, amprocfamily AS objid, >>>>> refclassid, refobjid, deptype FROM pg_depend d, pg_amproc p WHERE >>>>> deptype NOT IN ('p', 'e', 'i') AND classid = 'pg_amproc'::regclass >>>>> AND objid = p.oid AND NOT (refclassid = 'pg_opfamily'::regclass AND >>>>> amprocfamily = refobjid) >>>>> ORDER BY 1,2 >>>>> >>>>> And no archive is created. >>>>> >>>>> Does any of you kind people have advice? I am sure this worked on >>>>> postgres9. >>>> >>>> It looks like this was broken just before 10.10 was released, and >>>> has since been fixed; >>>> see: >>>> >>>> https://git.postgresql.org/gitweb/?p=postgresql.git;a=commitdiff;h=6844adba54f7d96f30f834efc6d9aa1e52e5672d >>>> >>>> >>>> Your options are: >>>> - find a 10.9 or earlier package and use the pg_dump from that >>>> - build pg_dump yourself >>>> - wait for 10.11 to come out (though I imagine that won't be for a >>>> month or two) >>>> >>>> >>>> Regards >>>> >>>> Ian Barwick >>>> >>> >>> Thanks a lot, Ian! >>> >>> That saved me an upcoming headache. I searched a lot on Google but >>> couldn't find any relevant information. >>> >>> Will installing Postgres 11 also work? (Not the Ubuntu18.04 default >>> for Postgres, but doable). >>> Or does those pg_dump versions also expect pg_opfamily to exist? >> >> >> From the bug that introduced the issue: >> >> https://git.postgresql.org/gitweb/?p=postgresql.git;a=commit;h=07b39083c >> >> "Per bug #15934 from Tom Gottfried. Back-patch to all supported >> branches." >> >> So I'm guessing it is in the most recent release of all current versions. > > Thank you, Adrian. > > That is a bummer. > Since I have no idea how to safely install an older version of pg_dump > alongside my current 10.10 install, I will wait for the patch. A quick test showed that: 1) Go here: https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/ 2) Grab https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/postgresql-client-11_11.4-1.pgdg18.10%2b1_amd64.deb 3) Using Ark extract pg_dump from data.tar.xz at path /usr/lib/postgresql/11/bin ./pg_dump -V pg_dump (PostgreSQL) 11.4 (Ubuntu 11.4-1.pgdg18.10+1) I do not have a 8.1 instance to try against, so I could not test that part. > > Thank you for your responses! > > Regards, > Erwin Moller > > > > > -- Adrian Klaver adrian.klaver@aklaver.com
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Adrian Klaver
Date:
On 8/20/19 8:02 AM, Adrian Klaver wrote: > On 8/20/19 7:37 AM, Erwin Moller wrote: >> >> That is a bummer. >> Since I have no idea how to safely install an older version of pg_dump >> alongside my current 10.10 install, I will wait for the patch. > > A quick test showed that: > > 1) Go here: > https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/ > > 2) Grab > https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/postgresql-client-11_11.4-1.pgdg18.10%2b1_amd64.deb > > > 3) Using Ark extract pg_dump from data.tar.xz at path > /usr/lib/postgresql/11/bin Just to be clear I did the above in my home directory so as not to overwrite the installed programs. Also probably not a bad idea to rename the below to something like pg_dump_11_4 to keep things straight. > > > ./pg_dump -V > pg_dump (PostgreSQL) 11.4 (Ubuntu 11.4-1.pgdg18.10+1) > > > I do not have a 8.1 instance to try against, so I could not test that part. > > > >> >> Thank you for your responses! >> >> Regards, >> Erwin Moller >> >> >> >> >> > > -- Adrian Klaver adrian.klaver@aklaver.com
Re: pg_dump problems: [archiver (db)] query failed: ERROR: relation"pg_opfamily" does not exist
From
Erwin Moller
Date:
On 8/20/2019 5:11 PM, Adrian Klaver wrote:
Thanks Adrian,
It took some time for me to get back to this, but thanks to your suggestions I got it working.
Since I am not too familiar with the inner workings of Ubuntu, some of your suggestions took me a while longer to parse, but with succes. ;-)
In case some other unskilled soul like me happens on this problem, here is what I did in babysteps:
I didn't want to grap the version you suggested (11.4), since I run 10.10, so I wanted to be safe and use 10.9 client tools:
Found it here:
https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-10/
postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb
I created a new directory in my home:
mkdir pg_dump_10.9
cd pg_dump_10.9
wget https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-10/postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb
now how to extract my pg_dump? After a short Google I did the following:
dpkg-deb -R ./postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb tmp
then walked to the right (new) directory:
cd tmp/usr/lib/postgresql/10/bin
There it was.: pg_dump from 10.9. Yes!
I moved it to my home-dir, and renamed it as you suggested (to avoid confusion).
Work right from there. :-)
I was expecting all kind of dependencies I had to solve, but it worked right out of the box.
Thanks Adrian.
Regards,
Erwin Moller
On 8/20/19 8:02 AM, Adrian Klaver wrote:On 8/20/19 7:37 AM, Erwin Moller wrote:That is a bummer.
Since I have no idea how to safely install an older version of pg_dump alongside my current 10.10 install, I will wait for the patch.
A quick test showed that:
1) Go here:
https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/
2) Grab
https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-11/postgresql-client-11_11.4-1.pgdg18.10%2b1_amd64.deb
3) Using Ark extract pg_dump from data.tar.xz at path
/usr/lib/postgresql/11/bin
Just to be clear I did the above in my home directory so as not to overwrite the installed programs.
Also probably not a bad idea to rename the below to something like pg_dump_11_4 to keep things straight.
./pg_dump -V
pg_dump (PostgreSQL) 11.4 (Ubuntu 11.4-1.pgdg18.10+1)
I do not have a 8.1 instance to try against, so I could not test that part
Thanks Adrian,
It took some time for me to get back to this, but thanks to your suggestions I got it working.
Since I am not too familiar with the inner workings of Ubuntu, some of your suggestions took me a while longer to parse, but with succes. ;-)
In case some other unskilled soul like me happens on this problem, here is what I did in babysteps:
I didn't want to grap the version you suggested (11.4), since I run 10.10, so I wanted to be safe and use 10.9 client tools:
Found it here:
https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-10/
postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb
I created a new directory in my home:
mkdir pg_dump_10.9
cd pg_dump_10.9
wget https://apt.postgresql.org/pub/repos/apt/pool/main/p/postgresql-10/postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb
now how to extract my pg_dump? After a short Google I did the following:
dpkg-deb -R ./postgresql-client-10_10.9-1.pgdg18.10+1_amd64.deb tmp
then walked to the right (new) directory:
cd tmp/usr/lib/postgresql/10/bin
There it was.: pg_dump from 10.9. Yes!
I moved it to my home-dir, and renamed it as you suggested (to avoid confusion).
Work right from there. :-)
I was expecting all kind of dependencies I had to solve, but it worked right out of the box.
Thanks Adrian.
Regards,
Erwin Moller