Thread: Bug in PostgreSQL

From:
Rambabu V
Date:

Hi Team,

While taking pgdump we are getting error message cache lookup failed for function 7418447. While trying select * from pg_proc where oid=7418447 returns zero rows. Please help us on this. 
From:
Steve Crawford
Date:



On Wed, Jun 27, 2018 at 8:31 AM Rambabu V <> wrote:
Hi Team,

While taking pgdump we are getting error message cache lookup failed for function 7418447. While trying select * from pg_proc where oid=7418447 returns zero rows. Please help us on this. 

Searching on that error messages yields a suggestion from Tom Lane to try that select with enable_indexscan and enable_bitmapscan
turned off.

This question is probably better asked in the "General" mailing list. Also please include the OS and PostgreSQL version as well as any other observations that may shed light on the issue.

Cheers,
Steve
From:
Joseph Curtin
Date:

OID is a temp-var that is only consistent within a Query Execution.


On Thu, Jun 28, 2018 at 12:50 AM, Steve Crawford <> wrote:


On Wed, Jun 27, 2018 at 8:31 AM Rambabu V <> wrote:
Hi Team,

While taking pgdump we are getting error message cache lookup failed for function 7418447. While trying select * from pg_proc where oid=7418447 returns zero rows. Please help us on this. 

Searching on that error messages yields a suggestion from Tom Lane to try that select with enable_indexscan and enable_bitmapscan
turned off.

This question is probably better asked in the "General" mailing list. Also please include the OS and PostgreSQL version as well as any other observations that may shed light on the issue.

Cheers,
Steve



--
-Joseph Curtin
http://www.jbcurtin.com
@jbcurtin
From:
Laurenz Albe
Date:

Rambabu V wrote:
> While taking pgdump we are getting error message cache lookup failed for function 7418447.
> While trying select * from pg_proc where oid=7418447 returns zero rows. Please help us on this. 

That means that some catalog data are corrupted.

If possible, restore from a backup.

Did you experiences any crashes recently?  Is your storage reliable?

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com


From:
Andres Freund
Date:

Hi,

On 2018-06-28 08:55:21 +0200, Laurenz Albe wrote:
> Rambabu V wrote:
> > While taking pgdump we are getting error message cache lookup failed for function 7418447.
> > While trying select * from pg_proc where oid=7418447 returns zero rows. Please help us on this. 
> 
> That means that some catalog data are corrupted.

It does *NOT* have mean that. You can get such reports e.g. because
there was concurrent DDL. Most things are protected against via locks,
but there's enough of a window between getting the list of objects and
locking to cause issues for tables. And for functions it's fairly easy
to get into trouble because there's a mismatch between the snapshot
pg_dump uses (a normal transactional snapshot) and the snapshot used to
deparse expressions etc (a fresh catalog snapshot that takes into
account concurrent commits).

Greetings,

Andres Freund