Re: pg_freespacemap question
Mark Kirkwood <markir@paradise.net.nz>
From: Mark Kirkwood <markir@paradise.net.nz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Tatsuo Ishii <ishii@sraoss.co.jp>, alvherre@commandprompt.com, peter_e@gmx.net, pgsql-hackers@postgresql.org, pgsql-patches@postgresql.org
Date: 2006-03-09T04:12:26Z
Lists: pgsql-hackers
Attachments
- pg_freespacemap.patch (text/plain) patch
Tom Lane wrote: > Mark Kirkwood <markir@paradise.net.nz> writes: > >>>Good points! I had not noticed this test case. Probably NULL is better > > >>Would setting it to 'BLCKSZ - (fixed index header stuff)' be better, > > > No, I don't think so, because that will just make it harder to recognize > what's what (remember that BLCKSZ isn't really a constant, and the index > overhead is not the same for all AMs either). The point here is that > for indexes the FSM tracks whole-page availability, not the amount of > free space within pages. So I think NULL is a reasonable representation > of that. Using NULL will make it easy to filter the results if you want > to see only heap-page data or only index-page data, whereas it will be > very hard to do that if the view adopts an ultimately-artificial > convention about the amount of available space on an index page. > Right - after suggesting it I realized that coding the different index overhead for each possible AM would have been ... difficult :-). A patch is attached to implement the NULL free bytes and other recommendations: 1/ Index free bytes set to NULL 2/ Comment added to the README briefly mentioning the index business 3/ Columns reordered more logically 4/ 'Blockid' column removed 5/ Free bytes column renamed to just 'bytes' instead of 'blockfreebytes' Now 5/ was only hinted at, but seemed worth doing while I was there (hopefully I haven't made it too terse now....). cheers Mark