Commit 53bb309
committed
Teach autovacuum about multixact member wraparound.
The logic introduced in commit b69bf30
and repaired in commits 669c7d2 and
7be47c5 helps to ensure that we don't
overwrite old multixact member information while it is still needed,
but a user who creates many large multixacts can still exhaust the
member space (and thus start getting errors) while autovacuum stands
idly by.
To fix this, progressively ramp down the effective value (but not the
actual contents) of autovacuum_multixact_freeze_max_age as member space
utilization increases. This makes autovacuum more aggressive and also
reduces the threshold for a manual VACUUM to perform a full-table scan.
This patch leaves unsolved the problem of ensuring that emergency
autovacuums are triggered even when autovacuum=off. We'll need to fix
that via a separate patch.
Thomas Munro and Robert Haas1 parent 195fbd4 commit 53bb309
File tree
5 files changed
+130
-11
lines changed- doc/src/sgml
- src
- backend
- access/transam
- commands
- postmaster
- include/access
5 files changed
+130
-11
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
628 | 628 | | |
629 | 629 | | |
630 | 630 | | |
| 631 | + | |
| 632 | + | |
| 633 | + | |
631 | 634 | | |
632 | 635 | | |
633 | 636 | | |
| |||
656 | 659 | | |
657 | 660 | | |
658 | 661 | | |
659 | | - | |
| 662 | + | |
| 663 | + | |
| 664 | + | |
| 665 | + | |
660 | 666 | | |
661 | 667 | | |
662 | 668 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
168 | 168 | | |
169 | 169 | | |
170 | 170 | | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
171 | 176 | | |
172 | 177 | | |
173 | 178 | | |
| |||
2578 | 2583 | | |
2579 | 2584 | | |
2580 | 2585 | | |
| 2586 | + | |
| 2587 | + | |
| 2588 | + | |
| 2589 | + | |
| 2590 | + | |
| 2591 | + | |
| 2592 | + | |
| 2593 | + | |
| 2594 | + | |
| 2595 | + | |
| 2596 | + | |
| 2597 | + | |
| 2598 | + | |
| 2599 | + | |
| 2600 | + | |
| 2601 | + | |
| 2602 | + | |
| 2603 | + | |
| 2604 | + | |
| 2605 | + | |
| 2606 | + | |
| 2607 | + | |
| 2608 | + | |
| 2609 | + | |
| 2610 | + | |
| 2611 | + | |
| 2612 | + | |
| 2613 | + | |
| 2614 | + | |
| 2615 | + | |
| 2616 | + | |
| 2617 | + | |
| 2618 | + | |
| 2619 | + | |
| 2620 | + | |
| 2621 | + | |
| 2622 | + | |
| 2623 | + | |
| 2624 | + | |
| 2625 | + | |
| 2626 | + | |
| 2627 | + | |
| 2628 | + | |
| 2629 | + | |
| 2630 | + | |
| 2631 | + | |
| 2632 | + | |
| 2633 | + | |
| 2634 | + | |
| 2635 | + | |
| 2636 | + | |
| 2637 | + | |
| 2638 | + | |
| 2639 | + | |
| 2640 | + | |
| 2641 | + | |
| 2642 | + | |
| 2643 | + | |
| 2644 | + | |
| 2645 | + | |
| 2646 | + | |
| 2647 | + | |
| 2648 | + | |
| 2649 | + | |
| 2650 | + | |
| 2651 | + | |
| 2652 | + | |
| 2653 | + | |
| 2654 | + | |
| 2655 | + | |
| 2656 | + | |
| 2657 | + | |
| 2658 | + | |
| 2659 | + | |
| 2660 | + | |
| 2661 | + | |
| 2662 | + | |
| 2663 | + | |
| 2664 | + | |
| 2665 | + | |
| 2666 | + | |
| 2667 | + | |
| 2668 | + | |
2581 | 2669 | | |
2582 | 2670 | | |
2583 | 2671 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
471 | 471 | | |
472 | 472 | | |
473 | 473 | | |
| 474 | + | |
474 | 475 | | |
475 | 476 | | |
476 | 477 | | |
| |||
527 | 528 | | |
528 | 529 | | |
529 | 530 | | |
| 531 | + | |
| 532 | + | |
| 533 | + | |
| 534 | + | |
| 535 | + | |
| 536 | + | |
| 537 | + | |
530 | 538 | | |
531 | 539 | | |
532 | 540 | | |
533 | | - | |
| 541 | + | |
534 | 542 | | |
535 | 543 | | |
536 | 544 | | |
537 | 545 | | |
538 | 546 | | |
539 | 547 | | |
540 | | - | |
| 548 | + | |
541 | 549 | | |
542 | 550 | | |
543 | 551 | | |
| |||
546 | 554 | | |
547 | 555 | | |
548 | 556 | | |
549 | | - | |
| 557 | + | |
550 | 558 | | |
551 | 559 | | |
552 | 560 | | |
| |||
601 | 609 | | |
602 | 610 | | |
603 | 611 | | |
604 | | - | |
| 612 | + | |
605 | 613 | | |
606 | 614 | | |
607 | 615 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
297 | 297 | | |
298 | 298 | | |
299 | 299 | | |
300 | | - | |
| 300 | + | |
| 301 | + | |
301 | 302 | | |
302 | 303 | | |
303 | 304 | | |
| 305 | + | |
304 | 306 | | |
305 | 307 | | |
306 | 308 | | |
| |||
1118 | 1120 | | |
1119 | 1121 | | |
1120 | 1122 | | |
1121 | | - | |
| 1123 | + | |
1122 | 1124 | | |
1123 | 1125 | | |
1124 | 1126 | | |
| |||
1881 | 1883 | | |
1882 | 1884 | | |
1883 | 1885 | | |
| 1886 | + | |
1884 | 1887 | | |
1885 | 1888 | | |
1886 | 1889 | | |
| |||
1910 | 1913 | | |
1911 | 1914 | | |
1912 | 1915 | | |
| 1916 | + | |
| 1917 | + | |
| 1918 | + | |
| 1919 | + | |
| 1920 | + | |
| 1921 | + | |
| 1922 | + | |
1913 | 1923 | | |
1914 | 1924 | | |
1915 | 1925 | | |
| |||
2001 | 2011 | | |
2002 | 2012 | | |
2003 | 2013 | | |
| 2014 | + | |
2004 | 2015 | | |
2005 | 2016 | | |
2006 | 2017 | | |
| |||
2129 | 2140 | | |
2130 | 2141 | | |
2131 | 2142 | | |
| 2143 | + | |
2132 | 2144 | | |
2133 | 2145 | | |
2134 | 2146 | | |
| |||
2235 | 2247 | | |
2236 | 2248 | | |
2237 | 2249 | | |
2238 | | - | |
| 2250 | + | |
| 2251 | + | |
2239 | 2252 | | |
2240 | 2253 | | |
2241 | 2254 | | |
| |||
2442 | 2455 | | |
2443 | 2456 | | |
2444 | 2457 | | |
2445 | | - | |
| 2458 | + | |
| 2459 | + | |
2446 | 2460 | | |
2447 | 2461 | | |
2448 | 2462 | | |
| |||
2488 | 2502 | | |
2489 | 2503 | | |
2490 | 2504 | | |
| 2505 | + | |
2491 | 2506 | | |
2492 | 2507 | | |
2493 | 2508 | | |
| |||
2624 | 2639 | | |
2625 | 2640 | | |
2626 | 2641 | | |
| 2642 | + | |
2627 | 2643 | | |
2628 | 2644 | | |
2629 | 2645 | | |
| |||
2684 | 2700 | | |
2685 | 2701 | | |
2686 | 2702 | | |
2687 | | - | |
2688 | | - | |
| 2703 | + | |
| 2704 | + | |
2689 | 2705 | | |
2690 | 2706 | | |
2691 | 2707 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
126 | 126 | | |
127 | 127 | | |
128 | 128 | | |
| 129 | + | |
129 | 130 | | |
130 | 131 | | |
131 | 132 | | |
| |||
0 commit comments