From: | Tomas Vondra <tomas(dot)vondra(at)2ndquadrant(dot)com> |
---|---|
To: | Robert Haas <robertmhaas(at)gmail(dot)com> |
Cc: | Nikhil Sontakke <nikhils(at)2ndquadrant(dot)com>, PostgreSQL mailing lists <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Logical Decoding and HeapTupleSatisfiesVacuum assumptions |
Date: | 2018-01-19 22:19:41 |
Message-ID: | 23c58eff-e85d-54da-ef1c-d4d08b8d90f5@2ndquadrant.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 01/19/2018 08:33 PM, Robert Haas wrote:
> On Fri, Jan 19, 2018 at 2:16 PM, Tomas Vondra
> <tomas(dot)vondra(at)2ndquadrant(dot)com> wrote:
>> I think an important piece of this puzzle is that we only really care
>> about catalog changes made in a transaction that aborts after doing some
>> additional changes, with that catalog tuple in place. Because only then
>> we actually need that catalog tuple in order to interpret the changes.
>>
>> AFAICS that guarantees the catalog changes were not interrupted half-way
>> through, leaving some of the catalogs in inconsistent state.
>
> Yeah, that may be true, and I alluded to it in the part you didn't
> quote. However, it doesn't help with the second problem I mentioned,
> which looks to me to be a fatal problem.
>
Ah, OK - I didn't realize "using a command ID value that was reached
prior to the error" refers to this scenario.
Regarding the HOT issue - I have to admit I don't quite see why A2
wouldn't be reachable through the index, but that's likely due to my
limited knowledge of the HOT internals.
regards
--
Tomas Vondra http://www.2ndQuadrant.com
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Robert Haas | 2018-01-19 23:52:52 | Re: Logical Decoding and HeapTupleSatisfiesVacuum assumptions |
Previous Message | Daniel Gustafsson | 2018-01-19 22:16:50 | Re: [HACKERS] GnuTLS support |