Re: unexpected chunk number 2 (expected 0) for toast value ... in pg_toast_18536

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: pgsql-general(at)lists(dot)postgresql(dot)org, pgsql-general <pgsql-general(at)postgresql(dot)org>
Subject: Re: unexpected chunk number 2 (expected 0) for toast value ... in pg_toast_18536
Date: 2020-03-15 19:58:53
Message-ID: 3b7214bd-d0b5-e66f-fd29-240f1eb56cdf@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 3/15/20 12:20 PM, Karsten Hilbert wrote:
> On Sun, Mar 15, 2020 at 07:23:49PM +0100, Karsten Hilbert wrote:
>
>> We then tried to DELETE the offending row
>>
>> delete from blobs.doc_obj where pk = 82224;
>>
>> but that, again, shows the "unexpected chunk" problem.
>
> According to
>
> http://www.databasesoup.com/2013/10/de-corrupting-toast-tables.html
>
> an UPDATE of the row is recommended -- should that work
> better than a DELETE ?
>
> I can't find documentation pointing to a fundamental
> implementation difference that suggests so.

https://www.postgresql.org/docs/12/storage-toast.html#STORAGE-TOAST-ONDISK

"During an UPDATE operation, values of unchanged fields are normally
preserved as-is; so an UPDATE of a row with out-of-line values incurs no
TOAST costs if none of the out-of-line values change."

>
> Karsten
> --
> GPG 40BE 5B0E C98E 1713 AFA6 5BC0 3BEA AC80 7D4F C89B
>
>

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Karsten Hilbert 2020-03-15 20:21:01 Re: unexpected chunk number 2 (expected 0) for toast value ... in pg_toast_18536
Previous Message Karsten Hilbert 2020-03-15 19:20:38 Re: unexpected chunk number 2 (expected 0) for toast value ... in pg_toast_18536