Re: new heapcheck contrib module
Mark Dilger <mark.dilger@enterprisedb.com>
> On Jun 30, 2020, at 11:44 AM, Alvaro Herrera <alvherre@2ndquadrant.com> wrote: > > I think there are two very large patches here. One adds checking of > heapam tables to amcheck, and the other adds a binary that eases calling > amcheck from the command line. I think these should be two separate > patches. contrib/amcheck has pretty limited regression test coverage. I wrote pg_amcheck in large part because the infrastructure I was writing for testing contrib/amcheck was starting to look like a stand-alone tool, so I made it one. I can split contrib/pg_amcheck into a separate patch, but I would expect reviewers to use it to review contrib/amcheck Say the word, and I'll resubmit as two separate patches. > I don't know what to think of a module contrib/pg_amcheck. I kinda lean > towards fitting it in src/bin/scripts rather than as a contrib module. > However, it seems a bit weird that it depends on a contrib module. Agreed. > Maybe amcheck should not be a contrib module at all but rather a new > extension in src/extensions/ that is compiled and installed (in the > filesystem, not in databases) by default. Fine with me, but I'll have to see what others think about that. > I strongly agree with hardening backend code so that all the crashes > that Mark has found can be repaired. (We discussed this topic > before[1]: we'd repair all crashes when run with production code, not > all assertion crashes.) I'm guessing that hardening the backend would be a separate patch? Or did you want that as part of this one? — Mark Dilger EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
Commits
-
Add pg_amcheck, a CLI for contrib/amcheck.
- 9706092839db 14.0 landed
-
Refactor and generalize the ParallelSlot machinery.
- f71519e545a3 14.0 landed
-
Generalize parallel slot result handling.
- 418611c84d00 14.0 landed
-
Move some code from src/bin/scripts to src/fe_utils to permit reuse.
- e955bd4b6c2b 14.0 landed
-
Factor pattern-construction logic out of processSQLNamePattern.
- 2c8726c4b0a4 14.0 landed
-
Doc: clean up verify_heapam() documentation.
- 4c49d8fc15ee 14.0 landed
-
Fix more portability issues in new amcheck code.
- 321633e17b07 14.0 landed
-
Fix portability issues in new amcheck test.
- 860593ec3bd1 14.0 landed
-
Try to avoid a compiler warning about using fxid uninitialized.
- 8bb0c9770e80 14.0 landed
-
Extend amcheck to check heap pages.
- 866e24d47db1 14.0 landed
-
Adjust walsender usage of xlogreader, simplify APIs
- 850196b610d2 13.0 cited
-
Improve checking of child pages in contrib/amcheck.
- d114cc538715 13.0 cited
-
Sanitize line pointers within contrib/amcheck.
- a9ce839a3137 12.0 cited
-
Fix possible sorting error when aborting use of abbreviated keys.
- 008c4135ccf6 10.0 cited