From: | Pavan Deolasee <pavan(dot)deolasee(at)gmail(dot)com> |
---|---|
To: | Peter Eisentraut <peter(dot)eisentraut(at)2ndquadrant(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Bugs in TOAST handling, OID assignment and redo recovery |
Date: | 2018-04-18 06:37:52 |
Message-ID: | CABOikdPZP5q0EbFibREgCE2PKb8ZRHJGwYHqCDnHkFaKeXDJEQ@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On Thu, Apr 12, 2018 at 5:53 AM, Peter Eisentraut <
peter(dot)eisentraut(at)2ndquadrant(dot)com> wrote:
> On 4/10/18 06:29, Pavan Deolasee wrote:
> > One of our 2ndQuadrant support customers recently reported a sudden rush
> > of TOAST errors post a crash recovery, nearly causing an outage. Most
> > errors read like this:
> >
> > ERROR: unexpected chunk number 0 (expected 1) for toast value nnnn
>
> While researching this, I found that the terminology in this code is
> quite inconsistent. It talks about chunks ids, chunk indexes, chunk
> numbers, etc. seemingly interchangeably. The above error is actually
> about the chunk_seq, not about the chunk_id, as one might think.
>
> The attached patch is my attempt to clean this up a bit. Thoughts?
>
While I agree that we should clean it up, I wonder if changing error text
would be a good idea. These errors are being reported by a very long time
and if we change the text, we might forget the knowledge about the past
reports.
Also, "toast value" is same as "chunk_id". Should we clean up something
there too? "chunk_seq number" -- should that be just "chunk_seq"?
Thanks,
Pavan
--
Pavan Deolasee http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Thomas Munro | 2018-04-18 06:55:52 | Re: [HACKERS] PATCH: Keep one postmaster monitoring pipe per process |
Previous Message | Michael Paquier | 2018-04-18 06:22:40 | Double-writes, take two? |