Re: new heapcheck contrib module

From: Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com>
To: Andrey Borodin <x4mmm(at)yandex-team(dot)ru>, Peter Geoghegan <pg(at)bowt(dot)ie>
Cc: Robert Haas <robertmhaas(at)gmail(dot)com>, Stephen Frost <sfrost(at)snowman(dot)net>, Michael Paquier <michael(at)paquier(dot)xyz>, Amul Sul <sulamul(at)gmail(dot)com>, Dilip Kumar <dilipbalaut(at)gmail(dot)com>, Andres Freund <andres(at)anarazel(dot)de>, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: new heapcheck contrib module
Date: 2020-10-08 00:37:21
Message-ID: F0216743-6B88-4D13-94F3-B34C5835ED7B@enterprisedb.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

> On Oct 6, 2020, at 11:27 PM, Andrey Borodin <x4mmm(at)yandex-team(dot)ru> wrote:
>
>
>
>> 7 окт. 2020 г., в 04:20, Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com> написал(а):
>>
>>
>>
>>> On Oct 5, 2020, at 5:24 PM, Mark Dilger <mark(dot)dilger(at)enterprisedb(dot)com> wrote:
>>>
>>> - This version does not change clog handling, which leaves Andrey's concern unaddressed. Peter also showed some support for (or perhaps just a lack of opposition to) doing more of what Andrey suggests. I may come back to this issue, depending on time available and further feedback.
>>
>> Attached is a patch set that includes the clog handling as discussed. The 0001 and 0002 are effectively unchanged since version 16 posted yesterday, but this now includes 0003 which creates a non-throwing interface to clog, and 0004 which uses the non-throwing interface from within amcheck's heap checking functions.
>>
>> I think this is a pretty good sketch for discussion, though I am unsatisfied with the lack of regression test coverage of verify_heapam in the presence of clog truncation. I was hoping to have that as part of v17, but since it is taking a bit longer than I anticipated, I'll have to come back with that in a later patch.
>>
>
> Many thanks, Mark! I really appreciate this functionality. It could save me many hours of recreating clogs.

You are quite welcome, though the thanks may be premature. I posted 0003 and 0004 patches mostly as concrete implementation examples that can be criticized.

> I'm not entire sure this message is correct: psprintf(_("xmax %u commit status is lost")
> It seems to me to be not commit status, but rather transaction status.

I have changed several such messages to say "transaction status" rather than "commit status". I'll be posting it in a separate email, shortly.

Thanks for reviewing!


Mark Dilger
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message James Coleman 2020-10-08 00:38:34 Re: enable_incremental_sort changes query behavior
Previous Message Peter Geoghegan 2020-10-07 23:48:18 Re: Deleting older versions in unique indexes to avoid page splits