Re: Less than ideal error reporting in pg_stat_statements
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Alvaro Herrera <alvherre@2ndquadrant.com>
Cc: Andrew Dunstan <andrew@dunslane.net>, Peter Geoghegan <pg@heroku.com>,
Jim Nasby <Jim.Nasby@bluetreble.com>,
Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2015-10-05T15:50:30Z
Lists: pgsql-hackers
Alvaro Herrera <alvherre@2ndquadrant.com> writes: > Andrew Dunstan wrote: >> FWIW, (a) and (b) but not (c) is probably the right description for my >> client who has been seeing problems here. > I think the fact that long IN lists are fingerprinted differently > according to the number of elements in the list makes the scenario > rather very likely -- not particularly narrow. That's certainly something worth looking at, but I think it's probably more complicated than that. If you just write "WHERE x IN (1,2,3,4)", that gets folded to a ScalarArrayOp with a single array constant, which the existing code would deal with just fine. We need to identify situations where that's not the case but yet we shouldn't distinguish. In any case, that's just a marginal tweak for one class of query. I suspect the right fix for the core problem is the one Peter mentioned in passing earlier, namely make it possible to do garbage collection without having to slurp the entire file into memory at once. It'd be slower, without a doubt, but we could continue to use the existing code path unless the file gets really large. regards, tom lane
Commits
-
Be more wary about 32-bit integer overflow in pg_stat_statements.
- c67c2e2a2939 16.0 landed
- dd414bf4e047 10.22 landed
- 82ebc70d1c7f 15.0 landed
- 6b67db10c366 13.8 landed
- 6608a4305636 12.12 landed
- 17fd203b414e 14.5 landed
- 06f6a07ba465 11.17 landed