On 05/18/2013 03:15 AM, Josh Berkus wrote:
> The drawback to this is whatever size we choose is liable to be wrong
> for some users. Users who currently have a lot of 16K tables would see
> their databases grow alarmingly.
This only becomes a problem for tables that're tiny, right? If your
table is already 20MB you don't care if it grows to 20.1MB or 21MB next
time it's extended.
What about applying the relation extent size only *after* an extent's
worth of blocks have been allocated in small blocks, per current
behaviour? So their 32k tables stay 32k, but once they step over the 1MB
barrier (or whatever) in table size the allocation mode switches to
bulk-allocating large extents? Or just setting an size threshold after
which extent-sized preallocation is used?
-- Craig Ringer http://www.2ndQuadrant.com/PostgreSQL Development, 24x7 Support, Training & Services