Re: row filtering for logical replication
От | Peter Smith |
---|---|
Тема | Re: row filtering for logical replication |
Дата | |
Msg-id | CAHut+PvrJHz_9HG5jvqHWe=FZLz9A+CxyJDyZKsHmY8THU+pjg@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: row filtering for logical replication ("Euler Taveira" <euler@eulerto.com>) |
Ответы |
Re: row filtering for logical replication
|
Список | pgsql-hackers |
On Wed, Mar 31, 2021 at 12:47 PM Euler Taveira <euler@eulerto.com> wrote: > .... > Good question. IIRC the issue is that AlterPublicationStmt->tables has a list > element that was a relation_expr_list and was converted to > publication_table_list. If we share 'tables' with relation_expr_list (for ALTER > PUBLICATION ... DROP TABLE) and publication_table_list (for the other ALTER > PUBLICATION ... ADD|SET TABLE), the OpenTableList() has to know what list > element it is dealing with. I think I came to the conclusion that it is less > uglier to avoid changing OpenTableList() and CloseTableList(). > > [Doing some experimentation...] > > Here is a patch that remove the referred code. It uses 2 distinct list > elements: relation_expr_list for ALTER PUBLICATION ... DROP TABLE and > publication_table_list for for ALTER PUBLICATION ... ADD|SET TABLE. A new > parameter was introduced to deal with the different elements of the list > 'tables'. AFAIK this is the latest patch available, but FYI it no longer applies cleanly on HEAD. git apply ../patches_misc/0001-Row-filter-for-logical-replication.patch ../patches_misc/0001-Row-filter-for-logical-replication.patch:518: trailing whitespace. error: patch failed: src/backend/parser/gram.y:426 error: src/backend/parser/gram.y: patch does not apply error: patch failed: src/backend/replication/logical/worker.c:340 error: src/backend/replication/logical/worker.c: patch does not apply -------- Kind Regards, Peter Smith. Fujitsu Australia.
В списке pgsql-hackers по дате отправления: