forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit5da9da7
committed
Improve snapshot manager by keeping explicit track of snapshots.
There are two ways to track a snapshot: there's the "registered" list, whichis used for arbitrary long-lived snapshots; and there's the "active stack",which is used for the snapshot that is considered "active" at any time.This also allows users of snapshots to stop worrying about snapshot memoryallocation and freeing, and about using PG_TRY blocks around ActiveSnapshotassignment. This is all done automatically now.As a consequence, this allows us to reset MyProc->xmin when there are nomore snapshots registered in the current backend, reducing the impact thatlong-running transactions have on VACUUM.1 parentaa82790 commit5da9da7
File tree
27 files changed
+981
-537
lines changed- src
- backend
- access/transam
- catalog
- commands
- executor
- storage
- ipc
- large_object
- tcop
- utils
- adt
- cache
- time
- include
- storage
- utils
- pl/plpgsql/src
27 files changed
+981
-537
lines changedLines changed: 10 additions & 9 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
10 | 10 |
| |
11 | 11 |
| |
12 | 12 |
| |
13 |
| - | |
| 13 | + | |
14 | 14 |
| |
15 | 15 |
| |
16 | 16 |
| |
| |||
622 | 622 |
| |
623 | 623 |
| |
624 | 624 |
| |
625 |
| - | |
626 |
| - | |
627 |
| - | |
628 |
| - | |
629 |
| - | |
630 |
| - | |
| 625 | + | |
| 626 | + | |
| 627 | + | |
631 | 628 |
| |
632 | 629 |
| |
633 | 630 |
| |
| |||
1509 | 1506 |
| |
1510 | 1507 |
| |
1511 | 1508 |
| |
1512 |
| - | |
| 1509 | + | |
1513 | 1510 |
| |
1514 |
| - | |
1515 | 1511 |
| |
1516 | 1512 |
| |
1517 | 1513 |
| |
| |||
1753 | 1749 |
| |
1754 | 1750 |
| |
1755 | 1751 |
| |
| 1752 | + | |
1756 | 1753 |
| |
1757 | 1754 |
| |
1758 | 1755 |
| |
| |||
1985 | 1982 |
| |
1986 | 1983 |
| |
1987 | 1984 |
| |
| 1985 | + | |
1988 | 1986 |
| |
1989 | 1987 |
| |
1990 | 1988 |
| |
| |||
2129 | 2127 |
| |
2130 | 2128 |
| |
2131 | 2129 |
| |
| 2130 | + | |
2132 | 2131 |
| |
2133 | 2132 |
| |
2134 | 2133 |
| |
| |||
3844 | 3843 |
| |
3845 | 3844 |
| |
3846 | 3845 |
| |
| 3846 | + | |
3847 | 3847 |
| |
3848 | 3848 |
| |
3849 | 3849 |
| |
| |||
3963 | 3963 |
| |
3964 | 3964 |
| |
3965 | 3965 |
| |
| 3966 | + | |
3966 | 3967 |
| |
3967 | 3968 |
| |
3968 | 3969 |
| |
|
Lines changed: 7 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
1507 | 1507 |
| |
1508 | 1508 |
| |
1509 | 1509 |
| |
1510 |
| - | |
| 1510 | + | |
1511 | 1511 |
| |
1512 | 1512 |
| |
1513 | 1513 |
| |
| |||
1517 | 1517 |
| |
1518 | 1518 |
| |
1519 | 1519 |
| |
1520 |
| - | |
1521 |
| - | |
1522 |
| - | |
1523 |
| - | |
| 1520 | + | |
1524 | 1521 |
| |
1525 | 1522 |
| |
1526 | 1523 |
| |
| |||
1793 | 1790 |
| |
1794 | 1791 |
| |
1795 | 1792 |
| |
| 1793 | + | |
| 1794 | + | |
| 1795 | + | |
| 1796 | + | |
1796 | 1797 |
| |
1797 | 1798 |
| |
1798 | 1799 |
| |
|
Lines changed: 4 additions & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
14 |
| - | |
| 14 | + | |
15 | 15 |
| |
16 | 16 |
| |
17 | 17 |
| |
| |||
212 | 212 |
| |
213 | 213 |
| |
214 | 214 |
| |
| 215 | + | |
215 | 216 |
| |
216 | 217 |
| |
217 | 218 |
| |
| |||
222 | 223 |
| |
223 | 224 |
| |
224 | 225 |
| |
225 |
| - | |
| 226 | + | |
226 | 227 |
| |
| 228 | + | |
227 | 229 |
| |
228 | 230 |
| |
229 | 231 |
| |
|
Lines changed: 8 additions & 10 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
1044 | 1044 |
| |
1045 | 1045 |
| |
1046 | 1046 |
| |
1047 |
| - | |
1048 |
| - | |
1049 |
| - | |
1050 |
| - | |
1051 |
| - | |
| 1047 | + | |
| 1048 | + | |
1052 | 1049 |
| |
1053 |
| - | |
| 1050 | + | |
1054 | 1051 |
| |
1055 | 1052 |
| |
1056 | 1053 |
| |
1057 | 1054 |
| |
1058 | 1055 |
| |
1059 | 1056 |
| |
1060 |
| - | |
1061 |
| - | |
| 1057 | + | |
| 1058 | + | |
1062 | 1059 |
| |
1063 | 1060 |
| |
1064 | 1061 |
| |
| |||
1161 | 1158 |
| |
1162 | 1159 |
| |
1163 | 1160 |
| |
| 1161 | + | |
1164 | 1162 |
| |
1165 | 1163 |
| |
1166 | 1164 |
| |
| |||
1390 | 1388 |
| |
1391 | 1389 |
| |
1392 | 1390 |
| |
1393 |
| - | |
| 1391 | + | |
1394 | 1392 |
| |
1395 | 1393 |
| |
1396 | 1394 |
| |
|
Lines changed: 7 additions & 8 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
7 | 7 |
| |
8 | 8 |
| |
9 | 9 |
| |
10 |
| - | |
| 10 | + | |
11 | 11 |
| |
12 | 12 |
| |
13 | 13 |
| |
| |||
229 | 229 |
| |
230 | 230 |
| |
231 | 231 |
| |
232 |
| - | |
233 |
| - | |
234 |
| - | |
235 |
| - | |
236 |
| - | |
| 232 | + | |
| 233 | + | |
237 | 234 |
| |
238 |
| - | |
| 235 | + | |
239 | 236 |
| |
240 | 237 |
| |
241 | 238 |
| |
242 |
| - | |
| 239 | + | |
243 | 240 |
| |
244 | 241 |
| |
245 | 242 |
| |
| |||
324 | 321 |
| |
325 | 322 |
| |
326 | 323 |
| |
| 324 | + | |
| 325 | + | |
327 | 326 |
| |
328 | 327 |
| |
329 | 328 |
| |
|
Lines changed: 18 additions & 6 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
8 | 8 |
| |
9 | 9 |
| |
10 | 10 |
| |
11 |
| - | |
| 11 | + | |
12 | 12 |
| |
13 | 13 |
| |
14 | 14 |
| |
| |||
484 | 484 |
| |
485 | 485 |
| |
486 | 486 |
| |
| 487 | + | |
487 | 488 |
| |
488 | 489 |
| |
489 | 490 |
| |
| |||
542 | 543 |
| |
543 | 544 |
| |
544 | 545 |
| |
545 |
| - | |
| 546 | + | |
546 | 547 |
| |
547 | 548 |
| |
548 | 549 |
| |
| |||
581 | 582 |
| |
582 | 583 |
| |
583 | 584 |
| |
| 585 | + | |
| 586 | + | |
| 587 | + | |
584 | 588 |
| |
585 | 589 |
| |
586 | 590 |
| |
| |||
616 | 620 |
| |
617 | 621 |
| |
618 | 622 |
| |
619 |
| - | |
620 |
| - | |
| 623 | + | |
| 624 | + | |
621 | 625 |
| |
622 | 626 |
| |
623 | 627 |
| |
| |||
645 | 649 |
| |
646 | 650 |
| |
647 | 651 |
| |
648 |
| - | |
| 652 | + | |
649 | 653 |
| |
650 | 654 |
| |
651 | 655 |
| |
| |||
686 | 690 |
| |
687 | 691 |
| |
688 | 692 |
| |
| 693 | + | |
| 694 | + | |
| 695 | + | |
| 696 | + | |
| 697 | + | |
| 698 | + | |
689 | 699 |
| |
690 | 700 |
| |
691 | 701 |
| |
| |||
1453 | 1463 |
| |
1454 | 1464 |
| |
1455 | 1465 |
| |
| 1466 | + | |
1456 | 1467 |
| |
1457 | 1468 |
| |
1458 | 1469 |
| |
1459 | 1470 |
| |
1460 | 1471 |
| |
1461 | 1472 |
| |
1462 | 1473 |
| |
1463 |
| - | |
| 1474 | + | |
1464 | 1475 |
| |
1465 | 1476 |
| |
1466 | 1477 |
| |
1467 | 1478 |
| |
| 1479 | + | |
1468 | 1480 |
| |
1469 | 1481 |
| |
1470 | 1482 |
| |
|
Lines changed: 6 additions & 7 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
14 | 14 |
| |
15 | 15 |
| |
16 | 16 |
| |
17 |
| - | |
| 17 | + | |
18 | 18 |
| |
19 | 19 |
| |
20 | 20 |
| |
| |||
121 | 121 |
| |
122 | 122 |
| |
123 | 123 |
| |
124 |
| - | |
| 124 | + | |
125 | 125 |
| |
126 | 126 |
| |
127 | 127 |
| |
| |||
293 | 293 |
| |
294 | 294 |
| |
295 | 295 |
| |
296 |
| - | |
297 | 296 |
| |
298 | 297 |
| |
299 | 298 |
| |
| |||
334 | 333 |
| |
335 | 334 |
| |
336 | 335 |
| |
337 |
| - | |
338 | 336 |
| |
339 | 337 |
| |
340 | 338 |
| |
341 | 339 |
| |
342 | 340 |
| |
343 |
| - | |
344 | 341 |
| |
345 | 342 |
| |
346 | 343 |
| |
347 | 344 |
| |
348 | 345 |
| |
| 346 | + | |
| 347 | + | |
349 | 348 |
| |
350 | 349 |
| |
351 | 350 |
| |
| |||
411 | 410 |
| |
412 | 411 |
| |
413 | 412 |
| |
414 |
| - | |
415 | 413 |
| |
416 | 414 |
| |
417 | 415 |
| |
| |||
425 | 423 |
| |
426 | 424 |
| |
427 | 425 |
| |
428 |
| - | |
429 | 426 |
| |
430 | 427 |
| |
431 | 428 |
| |
| 429 | + | |
| 430 | + | |
432 | 431 |
| |
433 | 432 |
| |
434 | 433 |
| |
|
0 commit comments
Comments
(0)