Re: jaguar is up

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Gregory Stark <stark(at)enterprisedb(dot)com>
Cc: ohp(at)pyrenet(dot)fr, "pgsql-hackers list" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: jaguar is up
Date: 2007-11-29 05:40:57
Message-ID: 2700.1196314857@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Gregory Stark <stark(at)enterprisedb(dot)com> writes:
> "Tom Lane" <tgl(at)sss(dot)pgh(dot)pa(dot)us> writes:
>> I didn't do anything about it at the time, but now I am tempted to
>> modify LookupOpclassInfo() so that CLOBBER_CACHE_ALWAYS disables
>> its internal cache. Any objections?

> That sounds not equivalent to receiving a relcache flush at any particular
> point in time where a relcache flush could be received. Wouldn't it make more
> sense (and test more code) to go ahead and cache all the same data but flush
> it whenever a relcache flush could possibly be received?

CLOBBER_CACHE_ALWAYS already did that.

I'm too lazy to go back and reconstruct the exact sequence of events
that led to the problem last December, but the basic issue is that
LookupOpclassInfo had its own caching in front of the syscache flush,
and that was able to obscure a cache flush race condition that only
happened when LookupOpclassInfo had to actually load data. If you
really want to question this, I suggest loading up a CVS snapshot from
late last December and trying to reproduce the intermittent buildfarm
failures we were seeing then.

regards, tom lane

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2007-11-29 05:50:18 Re: How to write a c-function to return multiple bytea rows
Previous Message Andrew Dunstan 2007-11-29 05:39:30 Re: [HACKERS] [GENERAL] plperl and regexps with accented characters - incompatible?