Re: A design for amcheck heapam verification

x4mmm@yandex-team.ru

From: Andrey Borodin <x4mmm@yandex-team.ru>
To: pgsql-hackers@lists.postgresql.org
Cc: Peter Geoghegan <pg@bowt.ie>
Date: 2018-03-27T06:04:49Z
Lists: pgsql-hackers
The following review has been posted through the commitfest application:
make installcheck-world:  tested, passed
Implements feature:       tested, passed
Spec compliant:           not tested
Documentation:            tested, passed

Hi!

This patch adds handy code data structure (bloom filter) and important database corruption smoke test (check for the index accordance to heap).
I've been using latter functionality for a while and found it to be very useful.

I've checked the recent version. Patch works as expected, as far as I can see my small notes have been addressed.
I think that this patch is ready for committer.

Best regards, Andrey Borodin.

The new status of this patch is: Ready for Committer

Commits

  1. Fix non-portable use of round().

  2. Add amcheck verification of heap relations belonging to btree indexes.

  3. Add Bloom filter implementation.

  4. Use ereport not elog for some corrupt-HOT-chain reports.

  5. Introduce 64-bit hash functions with a 64-bit seed.

  6. Upgrade src/port/rint.c to be POSIX-compliant.

  7. Use type "int64" for memory accounting in tuplesort.c/tuplestore.c.