The following steps produce a "cache lookup failed for function" error:
CREATE TABLE t (a int);
COPY t FROM stdin WHERE NOT (a > 0);
1
0
\.
I think what's happening is that negate_clause() is calling get_negator()
with a 0 argument because DoCopy() neglects to call fix_opfuncids() (like
RelationGetIndexPredicate() does). The attached patch fixes this.
--
nathan