On 1/23/17 1:11 PM, David Christensen wrote:
>> I’m not sure that this will work as-is, unless we’re forcing VACUUM to ignore the visibility map. I had originally
consideredhaving this sit on top of VACUUm though, we just need a way to iterate over all relations and read every
page.
> Another issue with this (that I think would still exist with the bgworker approach) is how to handle databases with
datallowconn= 0. `vacuumdb`, at least, explicitly filters out these rows when iterating over databases to connect to,
sowhile we could enable them for all databases, we can’t enable for the cluster without verifying that these disallowed
dbsare already checksummed.
For a first pass, I think it's acceptable for autovac and vac to notice
if a relation needs checksums computed and ignore the VM in that case
(make sure it's ignoring all frozen bits too).
Likewise, for right now I think it's OK to force users that are enabling
this to manually connect to datallowcon=false and run vacuum.
--
Jim Nasby, Data Architect, Blue Treble Consulting, Austin TX
Experts in Analytics, Data Architecture and PostgreSQL
Data in Trouble? Get it in Treble! http://BlueTreble.com
855-TREBLE2 (855-873-2532)