Tatsuo Ishii wrote:
Peter Eisentraut wrote:

Am Dienstag, 7. März 2006 15:09 schrieb Tatsuo Ishii:

test=# select * from pg_freespacemap where blockfreebytes = 0;
blockid | relfilenode | reltablespace | reldatabase | relblocknumber | 
blockfreebytes
---------+-------------+---------------+-------------+----------------+---------------- 25 | 2619 | 1663 | 16403 | 0 | 0
     63 |        2619 |          1663 |       16384 |             10 |          
    0
(2 rows)

I've never heard of this thing before but is this column order supposed to make 
sense?

I have another question -- why is the view showing relfilenode and
reltablespace?  I imagine it should be showing the relation Oid instead.


I guess that's because FSM keeps those info, not relation oid.


And what is this "blockid" thing?


from README.pg_freespacemap:

   blockid        |                      | Id, 1.. max_fsm_pages


I put that in as a bit of a sanity check - to see if the view was picking up all the fsm pages - guess it is a bit redundant now.

BTW, I found the answer to my question myself by reading the source
code: if that's an index, then blockfreebytes is explicitly set to 0.
I suggest that this should be noted in the README and in this case
blockfreebytes is better to set to NULL, rather than 0.


Good points! I had not noticed this test case. Probably NULL is better than zero.


I'll look into making these changes! (good to see people checking the view out).

Cheers

Mark

---------------------------(end of broadcast)---------------------------
TIP 6: explain analyze is your friend

Reply via email to