Re: How to recover from : "Cache lookup failed for rela

From: Patrick(dot)FICHE(at)AQSACOM(dot)COM
To: tgl(at)sss(dot)pgh(dot)pa(dot)us
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: How to recover from : "Cache lookup failed for rela
Date: 2005-05-23 14:22:37
Message-ID: 1DC6C8C88D09D51181A40002A5286929B23000@intranet
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

alis=# select * from pg_depend where objid in ( 463558, 463559 ) or refobjid
in ( 463558, 463559 );
classid | objid | objsubid | refclassid | refobjid | refobjsubid | deptype

---------+--------+----------+------------+----------+-------------+--------
-
1247 | 463559 | 0 | 1259 | 463558 | 0 | i
1259 | 463558 | 0 | 16672 | 440012 | 0 | n
(2 rows)

alis=# select oid, * from pg_namespace where nspname = 'pg_temp_4';
oid | nspname | nspowner | nspacl
--------+-----------+----------+--------
440012 | pg_temp_4 | 1 |
(1 row)

alis=# select * from pg_depend where refobjid = 440012;
classid | objid | objsubid | refclassid | refobjid | refobjsubid | deptype

---------+--------+----------+------------+----------+-------------+--------
-
1259 | 463558 | 0 | 16672 | 440012 | 0 | n

----------------------------------------------------------------------------
---------------
Patrick Fiche
email : patrick(dot)fiche(at)aqsacom(dot)com
tél : 01 69 29 36 18
----------------------------------------------------------------------------
---------------

-----Original Message-----
From: Tom Lane [mailto:tgl(at)sss(dot)pgh(dot)pa(dot)us]
Sent: lundi 23 mai 2005 16:08
To: Patrick(dot)FICHE(at)AQSACOM(dot)COM
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: [GENERAL] How to recover from : "Cache lookup failed for
rela tion "

Patrick(dot)FICHE(at)AQSACOM(dot)COM writes:
> The error happens when I try to create other temporary tables.
> Here is a part of my Server Log :

> ERROR: cache lookup failed for relation 463558
> CONTEXT: SQL statement "CREATE TEMP TABLE Tmp_MsgRxOrder ( EventId int4,
> CodeRef int4 )"
> PL/pgSQL function "adm_ne" line 248 at SQL statement
> STATEMENT: SELECT ALIS.ADM_NE()

This must be happening when you first try to use the pg_temp_4 schema
inside a particular session. The code will try to remove the existing
schema contents (as indicated by pg_depend), and evidently there is
something inconsistent in that.

What rows do you have in pg_depend that have either objid or refobjid
equal to 463558 or 463559? Also, get the OID of the pg_temp_4 schema
from pg_namespace, and see what rows in pg_depend have refobjid equal
to that.

regards, tom lane

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Phil Thornhill 2005-05-23 14:25:38 Re: Postgresql .NET Data Provider for Visual Studio 2005
Previous Message Kelly Burkhart 2005-05-23 14:13:00 C++-Language Function/Process List