Re: Issue with pg_dump due to Schema OID Error - Mailing list pgsql-general

From Adrian Klaver
Subject Re: Issue with pg_dump due to Schema OID Error
Date
Msg-id a4f362fe-7035-4871-a080-07a0309b7ab0@aklaver.com
Whole thread Raw
List pgsql-general
On 12/19/24 01:43, arons wrote:
> I forgot to attache the script.

In MyTestBugSchema01.baseProc() you meant to have:

select MyTestBugSchema.afunction( u.username )

instead of

select MyTestBugSchema2.afunction( u.username )

In other words there is a predefined MyTestBugSchema?

> 
> On Thu, Dec 19, 2024 at 10:41 AM Renzo Dani <renzo.dani@gmail.com 
> <mailto:renzo.dani@gmail.com>> wrote:
> 
>     Hi,
> 
> 
>     Recently, I encountered a problem during a database export using
>     pg_dump.
> 
> 
>     Here is the error message:
> 
> 
>     pg_dump: last built-in OID is 16383
> 
>     pg_dump: reading extensions
> 
>     pg_dump: identifying extension members
> 
>     pg_dump: reading schemas
> 
>     pg_dump: reading user-defined tables
> 
>     pg_dump: reading user-defined functions
> 
>     pg_dump: error: schema with OID 41960442 does not exist
> 
> 
>     To investigate the issue, I ran the following query:
> 
> 
>     SELECT * FROM pg_proc WHERE pronamespace = 41960442;
> 
> 
>     The result:
> 
> 
>
oid;proname;pronamespace;proowner;prolang;procost;prorows;provariadic;prosupport;prokind;prosecdef;proleakproof;proisstrict;proretset;provolatile;proparallel;pronargs;pronargdefaults;prorettype;proargtypes;proallargtypes;proargmodes;proargnames;proargdefaults;protrftypes;prosrc;probin;prosqlbody;proconfig;proacl
> 
>     41966618;remapprotocoltypeids;41960442;19214494;13547;100;0;0;-;f;f;f;f;f;v;u;1;0;25;25;;;{pprotocoltypeids};;;
> 
> 
>     I resolved the issue by removing the problematic record (admin
>     privileges required):
> 
> 
>     DELETE FROM pg_proc WHERE oid = 41966618;
> 
> 
>     This situation seems inconsistent and likely should not occur under
>     normal conditions.
> 
> 
>     While I’m unsure exactly when this issue originated in our
>     environment, I was able to reproduce it by performing concurrent
>     modifications on the schema.
> 
> 
>     To demonstrate, I wrote a bash script (test_bug.sh) that starts two
>     threads running in parallel.
> 
>     Each thread drops the schema with CASCADE and recreates it using the
>     SQL script search_bug.sql.
> 
> 
>     To use the script, you’ll need to adapt two variables at the
>     beginning of the script: PGPASSWORD and URL.
> 
> 
>     Using this script, I reproduced the problem on PostgreSQL versions
>     16.1 and 17.1.
> 
>     It typically takes less than a minute to trigger the issue.
> 
>     The script terminates automatically as soon as the problem is detected.
> 
> 
>     Here are additional references that might be related to this issue:
> 
> 
>     https://www.postgresql.org/message-id/flat/20110209003823.GA93840%40mr-paradox.net
<https://www.postgresql.org/message-id/flat/20110209003823.GA93840%40mr-paradox.net>
> 
>     https://www.postgresql.org/message-id/flat/BB8AF37F-E3D9-4DE0-B398-AF89748704F5%40bandwidth.com
<https://www.postgresql.org/message-id/flat/BB8AF37F-E3D9-4DE0-B398-AF89748704F5%40bandwidth.com>
> 
> 
> 
>     Let me know if you need additional information.
> 
> 
>     Best regards
> 
>     Renzo
> 

-- 
Adrian Klaver
adrian.klaver@aklaver.com




pgsql-general by date:

Previous
From: Daniel Frey
Date:
Subject: Pipeline Mode vs Single Row Mode / Chunked Rows Mode
Next
From: Adrian Klaver
Date:
Subject: Re: Issue with pg_dump due to Schema OID Error