Commit 8c58624
Amit Kapila
Fix the logical replication timeout during large DDLs.
The DDLs like Refresh Materialized views that generate lots of temporary
data due to rewrite rules may not be processed by output plugins (for
example pgoutput). So, we won't send keep-alive messages for a long time
while processing such commands and that can lead the subscriber side to
timeout. We have previously fixed a similar case for large transactions in
commit f95d53e where the output plugin filters all or most of the
changes but missed to handle the DDLs.
We decided not to backpatch this as this adds a new callback in the
existing exposed structure and moreover, users can increase the
wal_sender_timeout and wal_receiver_timeout to avoid this problem.
Author: Wang wei, Hou Zhijie
Reviewed-by: Peter Smith, Ashutosh Bapat, Shi yu, Amit Kapila
Discussion: https://postgr.es/m/OS3PR01MB6275478E5D29E4A563302D3D9E2B9@OS3PR01MB6275.jpnprd01.prod.outlook.com
Discussion: https://postgr.es/m/CAA5-nLARN7-3SLU_QUxfy510pmrYK6JJb=bk3hcgemAM_pAv+w@mail.gmail.com1 parent fee7b77 commit 8c58624
File tree
5 files changed
+89
-48
lines changed- src
- backend/replication
- logical
- pgoutput
- include/replication
- tools/pgindent
5 files changed
+89
-48
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
93 | 93 | | |
94 | 94 | | |
95 | 95 | | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
96 | 101 | | |
97 | 102 | | |
98 | 103 | | |
| |||
278 | 283 | | |
279 | 284 | | |
280 | 285 | | |
| 286 | + | |
| 287 | + | |
| 288 | + | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
281 | 292 | | |
282 | 293 | | |
283 | 294 | | |
| |||
1584 | 1595 | | |
1585 | 1596 | | |
1586 | 1597 | | |
| 1598 | + | |
| 1599 | + | |
| 1600 | + | |
| 1601 | + | |
| 1602 | + | |
| 1603 | + | |
| 1604 | + | |
| 1605 | + | |
| 1606 | + | |
| 1607 | + | |
| 1608 | + | |
| 1609 | + | |
| 1610 | + | |
| 1611 | + | |
| 1612 | + | |
| 1613 | + | |
| 1614 | + | |
| 1615 | + | |
| 1616 | + | |
| 1617 | + | |
| 1618 | + | |
| 1619 | + | |
| 1620 | + | |
| 1621 | + | |
| 1622 | + | |
| 1623 | + | |
| 1624 | + | |
| 1625 | + | |
| 1626 | + | |
| 1627 | + | |
| 1628 | + | |
| 1629 | + | |
| 1630 | + | |
| 1631 | + | |
| 1632 | + | |
| 1633 | + | |
| 1634 | + | |
| 1635 | + | |
| 1636 | + | |
1587 | 1637 | | |
1588 | 1638 | | |
1589 | 1639 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2100 | 2100 | | |
2101 | 2101 | | |
2102 | 2102 | | |
| 2103 | + | |
| 2104 | + | |
2103 | 2105 | | |
2104 | 2106 | | |
2105 | 2107 | | |
| |||
2440 | 2442 | | |
2441 | 2443 | | |
2442 | 2444 | | |
| 2445 | + | |
| 2446 | + | |
| 2447 | + | |
| 2448 | + | |
| 2449 | + | |
| 2450 | + | |
| 2451 | + | |
| 2452 | + | |
| 2453 | + | |
| 2454 | + | |
| 2455 | + | |
| 2456 | + | |
| 2457 | + | |
| 2458 | + | |
| 2459 | + | |
| 2460 | + | |
| 2461 | + | |
| 2462 | + | |
2443 | 2463 | | |
2444 | 2464 | | |
2445 | 2465 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | | - | |
96 | | - | |
97 | 95 | | |
98 | 96 | | |
99 | 97 | | |
| |||
586 | 584 | | |
587 | 585 | | |
588 | 586 | | |
589 | | - | |
| 587 | + | |
590 | 588 | | |
591 | 589 | | |
592 | 590 | | |
| |||
625 | 623 | | |
626 | 624 | | |
627 | 625 | | |
628 | | - | |
| 626 | + | |
629 | 627 | | |
630 | 628 | | |
631 | 629 | | |
| |||
639 | 637 | | |
640 | 638 | | |
641 | 639 | | |
642 | | - | |
| 640 | + | |
643 | 641 | | |
644 | 642 | | |
645 | 643 | | |
| |||
655 | 653 | | |
656 | 654 | | |
657 | 655 | | |
658 | | - | |
| 656 | + | |
659 | 657 | | |
660 | 658 | | |
661 | 659 | | |
| |||
1401 | 1399 | | |
1402 | 1400 | | |
1403 | 1401 | | |
1404 | | - | |
1405 | | - | |
1406 | 1402 | | |
1407 | 1403 | | |
1408 | 1404 | | |
| |||
1637 | 1633 | | |
1638 | 1634 | | |
1639 | 1635 | | |
1640 | | - | |
1641 | | - | |
1642 | 1636 | | |
1643 | 1637 | | |
1644 | 1638 | | |
| |||
1702 | 1696 | | |
1703 | 1697 | | |
1704 | 1698 | | |
1705 | | - | |
1706 | | - | |
1707 | 1699 | | |
1708 | 1700 | | |
1709 | 1701 | | |
| |||
1903 | 1895 | | |
1904 | 1896 | | |
1905 | 1897 | | |
1906 | | - | |
| 1898 | + | |
1907 | 1899 | | |
1908 | 1900 | | |
1909 | 1901 | | |
| |||
1924 | 1916 | | |
1925 | 1917 | | |
1926 | 1918 | | |
1927 | | - | |
| 1919 | + | |
1928 | 1920 | | |
1929 | 1921 | | |
1930 | 1922 | | |
| |||
2424 | 2416 | | |
2425 | 2417 | | |
2426 | 2418 | | |
2427 | | - | |
2428 | | - | |
2429 | | - | |
2430 | | - | |
2431 | | - | |
2432 | | - | |
2433 | | - | |
2434 | | - | |
2435 | | - | |
2436 | | - | |
2437 | | - | |
2438 | | - | |
2439 | | - | |
2440 | | - | |
2441 | | - | |
2442 | | - | |
2443 | | - | |
2444 | | - | |
2445 | | - | |
2446 | | - | |
2447 | | - | |
2448 | | - | |
2449 | | - | |
2450 | | - | |
2451 | | - | |
2452 | | - | |
2453 | | - | |
2454 | | - | |
2455 | | - | |
2456 | | - | |
2457 | | - | |
2458 | | - | |
2459 | | - | |
2460 | | - | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
526 | 526 | | |
527 | 527 | | |
528 | 528 | | |
| 529 | + | |
| 530 | + | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
529 | 535 | | |
530 | 536 | | |
531 | 537 | | |
| |||
589 | 595 | | |
590 | 596 | | |
591 | 597 | | |
| 598 | + | |
| 599 | + | |
| 600 | + | |
| 601 | + | |
| 602 | + | |
| 603 | + | |
592 | 604 | | |
593 | 605 | | |
594 | 606 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2311 | 2311 | | |
2312 | 2312 | | |
2313 | 2313 | | |
| 2314 | + | |
2314 | 2315 | | |
2315 | 2316 | | |
2316 | 2317 | | |
| |||
0 commit comments