> On Apr 14, 2021, at 10:17 AM, Robert Haas <robertmh...@gmail.com> wrote:
> 
> On Mon, Apr 12, 2021 at 11:06 PM Mark Dilger
> <mark.dil...@enterprisedb.com> wrote:
>> It now reports:
>> 
>> # heap table "postgres"."public"."test", block 0, offset 18, attribute 2:
>> #     toast value 16461 missing chunk 3 with expected size 1996
>> # heap table "postgres"."public"."test", block 0, offset 18, attribute 2:
>> #     toast value 16461 was expected to end at chunk 6 with total size 
>> 10000, but ended at chunk 5 with total size 8004
>> 
>> It sounds like you weren't expecting the second of these reports.  I think 
>> it is valuable, especially when there are multiple missing chunks and 
>> multiple extraneous chunks, as it makes it easier for the user to reconcile 
>> the missing chunks against the extraneous chunks.
> 
> I wasn't, but I'm not overwhelmingly opposed to it, either. I do think
> I would be in favor of splitting this kind of thing up into two
> messages:
> 
> #     toast value 16459 unexpected chunks 1000 through 1004 each with
> size 1996 followed by chunk 1005 with size 20
> 
> We'll have fewer message variants and I don't think any real
> regression in usability if we say:
> 
> #     toast value 16459 has unexpected chunks 1000 through 1004 each
> with size 1996
> #     toast value 16459 has unexpected chunk 1005 with size 20

Changed.

> (Notice that I also inserted "has" so that the sentence a verb. Or we
> could "contains.")

I have added the verb "has" rather than "contains" because "has" is more 
consistent with the phrasing of other similar corruption reports.

Attachment: v21-0001-amcheck-adding-toast-pointer-corruption-checks.patch
Description: Binary data

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



Reply via email to