On 06/27/2013 11:11 AM, Tom Lane wrote:
> AFAICS, the threshold question here is whether the patch helps usefully
> for tables with typical numbers of columns (ie, not 800 ;-)), and
I wouldn't expect it to help at all for < 50 columns, and probably not
measurably below 200.
> doesn't hurt materially in any common scenario. If it does, I think
Yeah, I think that's be bigger question. Ok, I'll start working on a
new test case. Here's my thinking on performance tests:
1. run pgbench 10 times both with and without the patch. See if there's
any measurable difference. There should not be.
2. Run with/without comparisons for the following scenarios:
Each table would have a SERIAL pk, a timestamp, and:
Chains of booleans:
# attributes NULL probability16 0% 50% 90%128 0% 50% 90%512 0% 50% 90%
Chains of text:16 0% 50% 90%256 0% 50% 90%
... for 100,000 rows each.
Comparisons would include:
1) table size before and after testing
2) time required to read 1000 rows, by key
3) time required to read rows with each of100 random column positions = some value
4) time required to insert 1000 rows
5) time required to update 1000 rows
Geez, I feel tired just thinking about it. Jamie, can your team do any
of this?
--
Josh Berkus
PostgreSQL Experts Inc.
http://pgexperts.com