=# select * from pgstatindex('media.idx_block_unused');
version | tree_level | index_size | root_block_no | internal_pages | leaf_pages | empty_pages | deleted_pages | avg_leaf_density | leaf_fragmentation
---------+------------+------------+---------------+----------------+------------+-------------+---------------+------------------+--------------------
4 | 2 | 389677056 | 546 | 114 | 23069 | 0 | 24384 | 90.03 | 0
(1 row)
After reindex:
version | tree_level | index_size | root_block_no | internal_pages | leaf_pages | empty_pages | deleted_pages | avg_leaf_density | leaf_fragmentation
---------+------------+------------+---------------+----------------+------------+-------------+---------------+------------------+--------------------
4 | 0 | 8192 | 0 | 0 | 0 | 0 | 0 | NaN | NaN
(1 row)
explain analyze select id from media.block b where nrefs =0 limit 1
QUERY PLAN |
-----------------------------------------------------------------------------------------------------------------------------------------+
Limit (cost=0.14..0.46 rows=1 width=16) (actual time=0.010..0.011 rows=0 loops=1) |
-> Index Only Scan using idx_block_unused on block b (cost=0.14..698.91 rows=2231 width=16) (actual time=0.008..0.009 rows=0 loops=1)|
Heap Fetches: 0 |
Planning Time: 0.174 ms |
Execution Time: 0.030 ms |
-----------------------------------------------------------------------------------------------------------------------------------------+
Limit (cost=0.14..0.46 rows=1 width=16) (actual time=0.010..0.011 rows=0 loops=1) |
-> Index Only Scan using idx_block_unused on block b (cost=0.14..698.91 rows=2231 width=16) (actual time=0.008..0.009 rows=0 loops=1)|
Heap Fetches: 0 |
Planning Time: 0.174 ms |
Execution Time: 0.030 ms |
It is actually empty.
Now I only need to figure out why autovacuum did not work on the index.
Thank you
Laszlo