more isolation tests for update tuple routing

Поиск
Список
Период
Сортировка
От Amit Langote
Тема more isolation tests for update tuple routing
Дата
Msg-id 7889df35-ad1a-691a-00e3-4d4b18f364e3@lab.ntt.co.jp
обсуждение исходный текст
Ответы Re: more isolation tests for update tuple routing  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Continuing the discussion at:
https://www.postgresql.org/message-id/26571.1554741097%40sss.pgh.pa.us

Tom wrote:
> It struck me just as I was pushing it that this test doesn't exercise
> EPQ with any of the interesting cases for partition routing (ie where
> the update causes a move to a different partition).  It would likely
> be a good idea to have test coverage for all of these scenarios:
>
> * EPQ where the initial update would involve a partition change,
> and that's still true after reapplying the update to the
> concurrently-updated tuple version;
>
> * EPQ where the initial update would *not* require a partition change,
> but we need one after reapplying the update to the
> concurrently-updated tuple version;
>
> * EPQ where the initial update would involve a partition change,
> but that's no longer true after reapplying the update to the
> concurrently-updated tuple version.

Per what Andres mentioned in his reply on the original thread [1], in
scenarios 1 and 2 where the 1st session's update causes a row to move,
session 2 produces the following error when trying to update the same row:

ERROR:  tuple to be locked was already moved to another partition due to
concurrent update

Do we want those tests like that (with the error that is) in the
eval-plan-qual isolation suite?

I came up with the attached.

Thanks,
Amit

[1]
https://www.postgresql.org/message-id/20190408164138.izvfg2czwcofg5ev%40alap3.anarazel.de

Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: Dmitry Dolgov
Дата:
Сообщение: Re: Status of the table access method work
Следующее
От: Christoph Berg
Дата:
Сообщение: PGCOLOR? (Re: pgsql: Unified logging system for command-lineprograms)