Re: [PATCHES] pg_freespacemap question
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Mark Kirkwood <markir@paradise.net.nz>
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-13T00:43:11Z
Lists: pgsql-hackers
> Tatsuo Ishii wrote: >> BTW, I noticed difference of outputs from pg_freespacemap and >> pgstattuple. >> >> I ran pgbench and inspected "accounts" table by using these tools. >> >> pg_freespacemap: >> sum of bytes: 250712 >> >> pgstattuple: >> free_space: 354880 >> >> Shouldn't they be identical? No, because (a) pgbench vacuums at the start of the run not the end, and (b) vacuum/fsm disregard pages with "uselessly small" amounts of free space (less than the average tuple size, IIRC). I do notice a rather serious shortcoming of pg_freespacemap in its current incarnation, which is that it *only* shows you the per-page free space data, and not any of the information that would let you determine what the FSM is doing to filter the raw data. The per-relation avgRequest and lastPageCount fields would be interesting for instance. Perhaps there should be a second view with one row per relation to carry the appropriate data. regards, tom lane