forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commitbc1adc6
committed
Fix filtering of unsupported relations in logical replication
In the pgoutput plugin, skip changes for relations that are notpublishable, per is_publishable_class(). This concerns in particularmaterialized views and information_schema tables. While those relationscannot be part of a publication, per existing checks, they will beconsidered by a FOR ALL TABLES publication. A subscription would notactually apply changes for those relations, again per existing checks,but trying to match incoming changes to local tables on the subscriberwould lead to errors if no matching local table exists. Skipping thosechanges on the publisher avoids sending useless changes and eliminatesthe error.Bug: #15044Reported-by: Chad Trabant <chad@iris.washington.edu>Reviewed-by: Petr Jelinek <petr.jelinek@2ndquadrant.com>1 parenteec1a8c commitbc1adc6
File tree
4 files changed
+58
-0
lines changed- src
- backend
- catalog
- replication/pgoutput
- include/catalog
- test/subscription/t
4 files changed
+58
-0
lines changedLines changed: 9 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
105 | 105 |
| |
106 | 106 |
| |
107 | 107 |
| |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
108 | 117 |
| |
109 | 118 |
| |
110 | 119 |
| |
|
Lines changed: 3 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
262 | 262 |
| |
263 | 263 |
| |
264 | 264 |
| |
| 265 | + | |
| 266 | + | |
| 267 | + | |
265 | 268 |
| |
266 | 269 |
| |
267 | 270 |
| |
|
Lines changed: 1 addition & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
93 | 93 |
| |
94 | 94 |
| |
95 | 95 |
| |
| 96 | + | |
96 | 97 |
| |
97 | 98 |
| |
98 | 99 |
| |
|
Lines changed: 45 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + |
0 commit comments
Comments
(0)