This is a patch for TODO item:
| Create a bitmap of pages that need vacuuming
Dead Space Map allows VACUUM to scan only pages that need vacuuming.
I sent to HACKERS the description of this patch.
Comments, suggestions and evaluation reports are welcome.
Usage of the feature is below:
- VACUUM FREEZE is recommended.
Pages that need vacuuming and freezing are not separated in the patch.
If we do non-FREEZE VACUUM, next VACUUM will also read pages that we
cannot freeze all of tuples in it at the last VACUUM. It's a waste.
- [GUC] dsm_buffers (integer)
The used memory size in dead space map. Default is 16MB,
that can track maximum 1TB of heap tables.
- [GUC] dsm_vacuum (boolean)
This enables the dead space map in VACUUM. Default is on.
Even if it is off, DSM are always recorded and updated.
- contrib/pg_deadspacemap
This shows the contents of dead space map.
See also README.pg_deadspacemap.
Regards,
---
ITAGAKI Takahiro
NTT Open Source Software Center