ERROR: cache lookup failed for type 14237017

Started by Aleksey Tsalolikhinover 15 years ago5 messagesgeneral
Jump to latest
#1Aleksey Tsalolikhin
atsaloli.tech@gmail.com

Yesterday, I had twelve thousand "cache lookup failed for type N"
messages, like this:

2010-09-20 00:00:00 PDT ERROR: cache lookup failed for type 14237017
2010-09-20 00:00:00 PDT CONTEXT: SQL statement "INSERT INTO
mycluster.sl_log_2 (log_origin, log_xid, log_tableid, log_actionseq,
log_cmdtype, log_cmddata) VALUES (1, $1, $2,
nextval('mycluster.sl_action_seq'), $3, $4);"

The context is always Slony sl_log_2 table. All twelve thousand
errors occurred within 40 minutes. This did happen right after a
Slony cluster set drop and recreate.

What does "type 14237017" mean? What cache are we talking about?

I am concerned because this is classified as ERROR rather than WARNING.

Thanks,
Aleksey

#2Jens Wilke
jens@wilke.org
In reply to: Aleksey Tsalolikhin (#1)
Re: ERROR: cache lookup failed for type 14237017

On Dienstag, 21. September 2010, Aleksey Tsalolikhin wrote:

Yesterday, I had twelve thousand "cache lookup failed for type N"
messages, like this:

What does "type 14237017" mean?

pg_type oid

What cache are we talking about?

Did you alter a type before?
There's a bug in postgres, that prevents the plan cache to be
invalidated on type changes. We ran into this bug as well on 8.4.4.

HTH, Jens

#3Aleksey Tsalolikhin
atsaloli.tech@gmail.com
In reply to: Jens Wilke (#2)
Re: ERROR: cache lookup failed for type 14237017

On Tue, Sep 21, 2010 at 2:06 PM, Jens Wilke <jens@wilke.org> wrote:

On Dienstag, 21. September 2010, Aleksey Tsalolikhin wrote:

Yesterday, I had twelve thousand  "cache lookup failed for type N"
messages, like this:

What does "type 14237017" mean?

pg_type oid

Dear Jens,

I am trying to understand your reply.

pg_type is a catalog of data types:
http://www.postgresql.org/docs/8.4/static/catalog-pg-type.html

An OID is a key to system table:
http://www.postgresql.org/docs/8.4/static/datatype-oid.html
I guess it's used to identify a row in a system table.

So PostgreSQL was trying to lookup a row in a system table and did
not find it in a cache.

What cache are we talking about?

Did you alter a type before?

No. I don't even know how to alter a type.

There's a bug in postgres, that prevents the plan cache to be
invalidated on type changes. We ran into this bug as well on 8.4.4.

Is there a bug id or a URL for the bug, please? I'd like to study the
bug description to
understand it better.

Sincerely,
Aleksey

#4Jens Wilke
jens@wilke.org
In reply to: Aleksey Tsalolikhin (#3)
Re: ERROR: cache lookup failed for type 14237017

On Dienstag, 21. September 2010, Aleksey Tsalolikhin wrote:

Hi Aleksey,

So PostgreSQL was trying to lookup a row in a system table and
did not find it in a cache.

yes,
select * from pg_type where oid =14237017

Did you alter a type before?

No. I don't even know how to alter a type.

Sorry, what i mean is drop and recreate a type.

Is there a bug id or a URL for the bug, please? I'd like to study

No idea, sorry

Jens

#5Aleksey Tsalolikhin
atsaloli.tech@gmail.com
In reply to: Jens Wilke (#4)
Re: ERROR: cache lookup failed for type 14237017

On Tue, Sep 21, 2010 at 3:10 PM, Jens Wilke <jens@wilke.org> wrote:

On Dienstag, 21. September 2010, Aleksey Tsalolikhin wrote:

So PostgreSQL was trying to lookup a row in a system table and
did not find it in a cache.

yes,
select * from pg_type where oid =14237017

Thank you.

Did you alter a type before?

No. I don't even know how to alter a type.

Sorry, what i mean is drop and recreate a type.

I did drop the entire slony schema and then recreated it. It seems
to be slony-related issue; I am taking it further on the Slony mailing list.

Thanks!!
Aleksey