Tom Lane wrote:
> Joseph Shraibman <jks@selectacast.net> writes:
>
>>My update looks like:
>>UPDATE tablename SET intfield = 2 WHERE keyfield IN( ... )
>
>
>>If I lowered the number of items in the IN() then I didn't get the error, but what that
>>number is is a moving target. 205 used to work a few minutes ago, but now 200 doesn't
>>work. A vaccuum seems to help matters. In previous versions of postgres I was able to do
>>up to 10000.
>
>
> Can we see the EXPLAIN plan for the failing update?
The EXPLAIN is really big:
Index Scan using d_pkey, d_pkey, ... (repeated a few thousand times) on
d(cost=0.00..82560.71 rows=4809 width=424)
Index Cond: ((key = 1) OR (key = 2) ... (repeated a few thousand times)
(2 rows)
>
> Also, I've forgotten exactly which PG version you're using?
>
PostgreSQL 7.3.2 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 3.2 20020903 (Red Hat
Linux 8.0 3.2-7)