- Notifications
You must be signed in to change notification settings - Fork28
Commit6cc842a
committed
Revise lock manager to support "session level" locks as well as "transaction
level" locks. A session lock is not released at transaction commit (but itis released on transaction abort, to ensure recovery after an elog(ERROR)).In VACUUM, use a session lock to protect the master table while vacuuming aTOAST table, so that the TOAST table can be done in an independenttransaction.I also took this opportunity to do some cleanup and renaming in the lockcode. The previously noted bug in ProcLockWakeup, that it couldn't wake upany waiters beyond the first non-wakeable waiter, is now fixed. Also founda previously unknown bug of the same kind (failure to scan all members ofa lock queue in some cases) in DeadLockCheck. This might have led to failureto detect a deadlock condition, resulting in indefinite waits, but it'sdifficult to characterize the conditions required to trigger a failure.1 parentb2145e9 commit6cc842a
11 files changed
+1018
-960
lines changedLines changed: 3 additions & 3 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
33 | 33 |
| |
34 | 34 |
| |
35 | 35 |
| |
36 |
| - | |
| 36 | + | |
37 | 37 |
| |
38 | 38 |
| |
39 | 39 |
| |
| |||
47 | 47 |
| |
48 | 48 |
| |
49 | 49 |
| |
50 |
| - | |
| 50 | + | |
51 | 51 |
| |
52 | 52 |
| |
53 | 53 |
| |
| |||
89 | 89 |
| |
90 | 90 |
| |
91 | 91 |
| |
92 |
| - | |
| 92 | + | |
93 | 93 |
| |
94 | 94 |
| |
95 | 95 |
| |
|
Lines changed: 3 additions & 3 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 |
| |
| |||
741 | 741 |
| |
742 | 742 |
| |
743 | 743 |
| |
744 |
| - | |
| 744 | + | |
745 | 745 |
| |
746 | 746 |
| |
747 | 747 |
| |
| |||
828 | 828 |
| |
829 | 829 |
| |
830 | 830 |
| |
831 |
| - | |
| 831 | + | |
832 | 832 |
| |
833 | 833 |
| |
834 | 834 |
| |
|
Lines changed: 49 additions & 41 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 |
| |
| |||
61 | 61 |
| |
62 | 62 |
| |
63 | 63 |
| |
64 |
| - | |
| 64 | + | |
65 | 65 |
| |
66 | 66 |
| |
67 | 67 |
| |
| |||
239 | 239 |
| |
240 | 240 |
| |
241 | 241 |
| |
242 |
| - | |
| 242 | + | |
243 | 243 |
| |
244 | 244 |
| |
245 | 245 |
| |
| |||
308 | 308 |
| |
309 | 309 |
| |
310 | 310 |
| |
311 |
| - | |
| 311 | + | |
312 | 312 |
| |
313 | 313 |
| |
314 | 314 |
| |
| |||
342 | 342 |
| |
343 | 343 |
| |
344 | 344 |
| |
345 |
| - | |
| 345 | + | |
346 | 346 |
| |
347 | 347 |
| |
348 | 348 |
| |
349 | 349 |
| |
350 | 350 |
| |
351 | 351 |
| |
| 352 | + | |
| 353 | + | |
352 | 354 |
| |
353 | 355 |
| |
354 |
| - | |
| 356 | + | |
355 | 357 |
| |
356 | 358 |
| |
| 359 | + | |
357 | 360 |
| |
358 |
| - | |
| 361 | + | |
359 | 362 |
| |
360 |
| - | |
361 |
| - | |
| 363 | + | |
362 | 364 |
| |
363 | 365 |
| |
364 | 366 |
| |
365 | 367 |
| |
366 | 368 |
| |
367 | 369 |
| |
368 | 370 |
| |
369 |
| - | |
370 |
| - | |
| 371 | + | |
| 372 | + | |
371 | 373 |
| |
372 | 374 |
| |
373 | 375 |
| |
| |||
384 | 386 |
| |
385 | 387 |
| |
386 | 388 |
| |
387 |
| - | |
388 |
| - | |
| 389 | + | |
389 | 390 |
| |
390 | 391 |
| |
391 | 392 |
| |
| |||
403 | 404 |
| |
404 | 405 |
| |
405 | 406 |
| |
406 |
| - | |
407 |
| - | |
| 407 | + | |
408 | 408 |
| |
409 | 409 |
| |
410 | 410 |
| |
411 | 411 |
| |
412 |
| - | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
413 | 426 |
| |
414 | 427 |
| |
415 | 428 |
| |
| |||
500 | 513 |
| |
501 | 514 |
| |
502 | 515 |
| |
503 |
| - | |
504 |
| - | |
505 |
| - | |
506 |
| - | |
507 |
| - | |
508 |
| - | |
509 |
| - | |
510 |
| - | |
511 |
| - | |
512 |
| - | |
513 |
| - | |
514 |
| - | |
515 |
| - | |
516 |
| - | |
517 |
| - | |
518 | 516 |
| |
519 | 517 |
| |
520 | 518 |
| |
| |||
523 | 521 |
| |
524 | 522 |
| |
525 | 523 |
| |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
526 | 529 |
| |
527 | 530 |
| |
528 |
| - | |
529 |
| - | |
| 531 | + | |
| 532 | + | |
530 | 533 |
| |
531 | 534 |
| |
532 | 535 |
| |
533 | 536 |
| |
534 |
| - | |
| 537 | + | |
535 | 538 |
| |
536 |
| - | |
537 |
| - | |
538 |
| - | |
| 539 | + | |
| 540 | + | |
| 541 | + | |
| 542 | + | |
539 | 543 |
| |
540 | 544 |
| |
541 | 545 |
| |
| |||
1786 | 1790 |
| |
1787 | 1791 |
| |
1788 | 1792 |
| |
1789 |
| - | |
1790 |
| - | |
1791 |
| - | |
| 1793 | + | |
| 1794 | + | |
| 1795 | + | |
| 1796 | + | |
| 1797 | + | |
| 1798 | + | |
| 1799 | + | |
1792 | 1800 |
| |
1793 | 1801 |
| |
1794 | 1802 |
| |
| |||
1852 | 1860 |
| |
1853 | 1861 |
| |
1854 | 1862 |
| |
1855 |
| - | |
| 1863 | + | |
1856 | 1864 |
| |
1857 | 1865 |
| |
1858 | 1866 |
| |
|
Lines changed: 2 additions & 2 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 |
| |
| |||
84 | 84 |
| |
85 | 85 |
| |
86 | 86 |
| |
87 |
| - | |
| 87 | + | |
88 | 88 |
| |
89 | 89 |
| |
90 | 90 |
| |
|
Lines changed: 56 additions & 13 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1 |
| - | |
| 1 | + | |
2 | 2 |
| |
3 |
| - | |
4 |
| - | |
5 |
| - | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
6 | 13 |
| |
7 | 14 |
| |
8 | 15 |
| |
| |||
12 | 19 |
| |
13 | 20 |
| |
14 | 21 |
| |
15 |
| - | |
16 |
| - | |
17 |
| - | |
18 |
| - | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
19 | 26 |
| |
20 | 27 |
| |
21 | 28 |
| |
| |||
30 | 37 |
| |
31 | 38 |
| |
32 | 39 |
| |
33 |
| - | |
| 40 | + | |
34 | 41 |
| |
35 | 42 |
| |
36 | 43 |
| |
37 | 44 |
| |
38 | 45 |
| |
39 | 46 |
| |
40 | 47 |
| |
41 |
| - | |
42 |
| - | |
43 |
| - | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
44 | 51 |
| |
45 | 52 |
| |
46 | 53 |
| |
| |||
73 | 80 |
| |
74 | 81 |
| |
75 | 82 |
| |
76 |
| - | |
| 83 | + | |
77 | 84 |
| |
78 | 85 |
| |
79 | 86 |
| |
| |||
85 | 92 |
| |
86 | 93 |
| |
87 | 94 |
| |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + |
0 commit comments
Comments
(0)