Dear Vignesh, > I ran claude to identify issues related to the EXCEPT TABLE > publication changes.
Very nice. I think this should be part of the community's routine. > Finding #1: ALTER PUBLICATION race > Finding #2: ALTER PUBLICATION validates against pre-lock state To confirm, why can't we acquire the lock at the beginning of AlterPublication() and re-check the publication state? For now AlterPublicationOptions() acquires the AccessShareLock only if the row filter and column list may be specified, but it could cause elog(ERROR, "tuple concurrently updated") error. It cannot be translated thus may be surprising. Instead, can we obtain AccessExclusive (or ShareUpdateExclusiveLock, which can block each other) at the beginning to block concurrent operations? Best regards, Hayato Kuroda FUJITSU LIMITED
