Commit 37862be
committed
2PC decoding and tablesync.
Attempt to cover subtle issues with tablesync and 2PC decoding. Before going to
SYNCDONE, now sync worker finishes all xacts prepared beforehand; see
tablesync.c header comments.
To make this work, 2PC decoding is now controlled by pgoutput option which is
set by subscriber depending on value of logical_replication_2pc GUC. Tablesync
worker always disables 2PC.
Add option to return num of unfinished prepares in CREATE_REPLICATION_SLOT. To
preserve backward compatibility, e.g. with basebackup which expects 4 atts.1 parent 31495de commit 37862be
File tree
23 files changed
+948
-364
lines changed- src
- backend
- replication
- libpqwalreceiver
- logical
- pgoutput
- utils/misc
- include/replication
- test/subscription
- t
- tools/pgindent
23 files changed
+948
-364
lines changedLines changed: 27 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
| 30 | + | |
30 | 31 | | |
31 | 32 | | |
32 | 33 | | |
| |||
73 | 74 | | |
74 | 75 | | |
75 | 76 | | |
76 | | - | |
| 77 | + | |
| 78 | + | |
77 | 79 | | |
78 | 80 | | |
79 | 81 | | |
| |||
419 | 421 | | |
420 | 422 | | |
421 | 423 | | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
422 | 440 | | |
423 | 441 | | |
424 | 442 | | |
| |||
790 | 808 | | |
791 | 809 | | |
792 | 810 | | |
793 | | - | |
| 811 | + | |
794 | 812 | | |
795 | 813 | | |
796 | 814 | | |
| |||
818 | 836 | | |
819 | 837 | | |
820 | 838 | | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
821 | 843 | | |
822 | 844 | | |
823 | 845 | | |
| |||
838 | 860 | | |
839 | 861 | | |
840 | 862 | | |
| 863 | + | |
| 864 | + | |
| 865 | + | |
841 | 866 | | |
842 | 867 | | |
843 | 868 | | |
| |||
0 commit comments