Re: Truncate in synchronous logical replication failed

Поиск
Список
Период
Сортировка
От Amit Kapila
Тема Re: Truncate in synchronous logical replication failed
Дата
Msg-id CAA4eK1+O=WctUKh54v_0R2WMjx981F6rAnDz8KqWafVdZKy5+w@mail.gmail.com
обсуждение исходный текст
Ответ на RE: Truncate in synchronous logical replication failed  ("osumi.takamichi@fujitsu.com" <osumi.takamichi@fujitsu.com>)
Ответы RE: Truncate in synchronous logical replication failed
Re: Truncate in synchronous logical replication failed
Список pgsql-hackers
On Fri, Apr 23, 2021 at 7:18 PM osumi.takamichi@fujitsu.com
<osumi.takamichi@fujitsu.com> wrote:
>

The latest patch looks good to me. I have made a minor modification
and added a commit message in the attached. I would like to once again
ask whether anybody else thinks we should backpatch this? Just a
summary for anybody not following this thread:

This patch fixes the Logical Replication of Truncate in synchronous
commit mode. The Truncate operation acquires an exclusive lock on the
target relation and indexes and waits for logical replication of the
operation to finish at commit. Now because we are acquiring the shared
lock on the target index to get index attributes in pgoutput while
sending the changes for the Truncate operation, it leads to a
deadlock.

Actually, we don't need to acquire a lock on the target index as we
build the cache entry using a historic snapshot and all the later
changes are absorbed while decoding WAL. So, we wrote a special
purpose function for logical replication to get a bitmap of replica
identity attribute numbers where we get that information without
locking the target index.

We are planning not to backpatch this as there doesn't seem to be any
field complaint about this issue since it was introduced in commit
5dfd1e5a in v11.

-- 
With Regards,
Amit Kapila.

Вложения

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

Предыдущее
От: Amit Langote
Дата:
Сообщение: Re: Does rewriteTargetListIU still need to add UPDATE tlist entries?
Следующее
От: Amit Kapila
Дата:
Сообщение: Re: comment typo - misnamed function