Patrick Krecker <patrick@judicata.com> writes:
> Hello everyone -- We received a strange error today on our production write
> master. During a routine maintenance script, we got the following error:
> "ERROR: cache lookup failed for aggregate 5953992"
> I think I found the culprit. We have a cron script that (among other
> things) recreates the aggregate function array_cat_aggregate()once every
> minute.
Um. Why's it do that?
> My guess is that a) transactions do not guarantee a snapshot of
> custom functions and b) we got unlucky and the aggregate was deleted during
> the execution of the UPDATE.
Yeah, there's no guarantee that dropping the aggregate wouldn't leave a
window for this type of failure.
9.4 might be a little better about this because it doesn't use SnapshotNow
for catalog fetches anymore, but I think you'd still be at some risk.
> Here is the query that produced the error:
It'd be more interesting to see what the cron script was doing to the
aggregate definition.
regards, tom lane