Обсуждение: pgsql: Fix negative bitmapset member not allowed error in logical repli
Fix negative bitmapset member not allowed error in logical replication This happens when we add a replica identity column on a subscriber that does not yet exist on the publisher, according to the mapping maintained by the subscriber. Code that checks whether the target relation on the subscriber is updatable would check the replica identity attribute bitmap with a column number -1, which would result in an error. To fix, skip such columns in the bitmap lookup and consider the relation not updatable. The result is consistent with the rule that the replica identity columns on the subscriber must be a subset of those on the publisher, since if the column doesn't exist on the publisher, the column set on the subscriber can't be a subset. Reported-by: Tim Clarke <tim.clarke@minerva.info> Analyzed-by: Jehan-Guillaume de Rorthais <jgdr@dalibo.com> Discussion: https://www.postgresql.org/message-id/flat/a9139c29-7ddd-973b-aa7f-71fed9c38d75%40minerva.info Branch ------ master Details ------- https://git.postgresql.org/pg/commitdiff/1c60e40ad54b18685436443da3c56a7018a35475 Modified Files -------------- src/backend/replication/logical/relation.c | 3 ++- src/test/subscription/t/008_diff_schema.pl | 37 ++++++++++++++++++++++++++++-- 2 files changed, 37 insertions(+), 3 deletions(-)
Re: pgsql: Fix negative bitmapset member not allowed error in logicalrepli
От
Peter Eisentraut
Дата:
On 2019-11-09 09:17, Peter Eisentraut wrote: > Fix negative bitmapset member not allowed error in logical replication I see that there are timing errors in the tests on the build farm. I'm working on a fix. -- Peter Eisentraut http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services