Fill in extraUpdatedCols in logical replication
Peter Eisentraut <peter@eisentraut.org>
Fill in extraUpdatedCols in logical replication The extraUpdatedCols field of the target RTE records which generated columns are affected by an update. This is used in a variety of places, including per-column triggers and foreign data wrappers. When an update was initiated by a logical replication subscription, this field was not filled in, so such an update would not affect generated columns in a way that is consistent with normal updates. To fix, factor out some code from analyze.c to fill in extraUpdatedCols in the logical replication worker as well. Reviewed-by: Pavel Stehule <pavel.stehule@gmail.com> Discussion: https://www.postgresql.org/message-id/flat/b05e781a-fa16-6b52-6738-761181204567@2ndquadrant.com
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/parser/analyze.c | modified | +12 −6 |
| src/backend/replication/logical/worker.c | modified | +3 −0 |
| src/include/parser/analyze.h | modified | +2 −0 |
Discussion
- Optimize update of tables with generated columns 4 messages · 2019-12-21 → 2020-02-17