Re: amcheck's verify_heapam(), and HOT chain verification

2021-11-09 Thread Peter Geoghegan
On Sun, Nov 7, 2021 at 9:30 AM Mark Dilger wrote: > Yes, I am quite interested, though I will have to alternate between this work > and the various patch sets that I've already submitted for this development > cycle. Great! We still have a lot of work to do with HOT chain level invariants. I ha

Re: amcheck's verify_heapam(), and HOT chain verification

2021-11-07 Thread Mark Dilger
> On Nov 6, 2021, at 3:09 PM, Peter Geoghegan wrote: > > I am quite willing to help out with all this, if you're interested. Yes, I am quite interested, though I will have to alternate between this work and the various patch sets that I've already submitted for this development cycle. I th

Re: amcheck's verify_heapam(), and HOT chain verification

2021-11-06 Thread Peter Geoghegan
On Fri, Nov 5, 2021 at 7:51 PM Peter Geoghegan wrote: > Here are some specific checks I have in mind: One more for the list: * Validate PageIsAllVisible() for each page. In other words, pg_visibility should be merged with verify_heapam.c (or at least pg_visibility 's pg_check_frozen() and pg_ch

Re: amcheck's verify_heapam(), and HOT chain verification

2021-11-06 Thread Peter Geoghegan
On Fri, Nov 5, 2021 at 8:18 PM Mark Dilger wrote: > Thanks, Peter, for this analysis. It's strategically important work. What you've done so far has every chance of catching corruption involving storage issues, which is great. But we ought to do more to catch certain known general patterns of cor

Re: amcheck's verify_heapam(), and HOT chain verification

2021-11-05 Thread Mark Dilger
> On Nov 5, 2021, at 7:51 PM, Peter Geoghegan wrote: > > I recently pushed a commit which formalized what we expect of HOT > chains during pruning -- see assertions and comments added by commit > 5cd7eb1f, "Add various assertions to heap pruning code". I notice that > verify_heapam() doesn't r

amcheck's verify_heapam(), and HOT chain verification

2021-11-05 Thread Peter Geoghegan
I recently pushed a commit which formalized what we expect of HOT chains during pruning -- see assertions and comments added by commit 5cd7eb1f, "Add various assertions to heap pruning code". I notice that verify_heapam() doesn't really do anything with HOT chains, and I'd say that that's a gap. Fo