forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit3103f9a
committed
The row-version chaining in Serializable Snapshot Isolation was still wrong.
On further analysis, it turns out that it is not needed to duplicate predicatelocks to the new row version at update, the lock on the version that thetransaction saw as visible is enough. However, there was a different bug inthe code that checks for dangerous structures when a new rw-conflict happens.Fix that bug, and remove all the row-version chaining related code.Kevin Grittner & Dan Ports, with some comment editorialization by me.1 parent5177dfe commit3103f9a
File tree
7 files changed
+150
-150
lines changed- src
- backend
- access
- heap
- index
- storage/lmgr
- include/storage
- test/isolation
- expected
- specs
7 files changed
+150
-150
lines changedLines changed: 2 additions & 13 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1529 | 1529 |
| |
1530 | 1530 |
| |
1531 | 1531 |
| |
1532 |
| - | |
1533 | 1532 |
| |
1534 | 1533 |
| |
1535 | 1534 |
| |
| |||
1539 | 1538 |
| |
1540 | 1539 |
| |
1541 | 1540 |
| |
1542 |
| - | |
1543 | 1541 |
| |
1544 | 1542 |
| |
1545 | 1543 |
| |
| |||
1597 | 1595 |
| |
1598 | 1596 |
| |
1599 | 1597 |
| |
1600 |
| - | |
1601 |
| - | |
1602 |
| - | |
1603 |
| - | |
| 1598 | + | |
1604 | 1599 |
| |
1605 | 1600 |
| |
1606 | 1601 |
| |
| |||
1629 | 1624 |
| |
1630 | 1625 |
| |
1631 | 1626 |
| |
1632 |
| - | |
| 1627 | + | |
1633 | 1628 |
| |
1634 | 1629 |
| |
1635 | 1630 |
| |
| |||
2855 | 2850 |
| |
2856 | 2851 |
| |
2857 | 2852 |
| |
2858 |
| - | |
2859 |
| - | |
2860 |
| - | |
2861 |
| - | |
2862 |
| - | |
2863 |
| - | |
2864 | 2853 |
| |
2865 | 2854 |
| |
2866 | 2855 |
| |
|
Lines changed: 1 addition & 2 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
612 | 612 |
| |
613 | 613 |
| |
614 | 614 |
| |
615 |
| - | |
616 |
| - | |
| 615 | + | |
617 | 616 |
| |
618 | 617 |
| |
619 | 618 |
| |
|
Lines changed: 48 additions & 0 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
402 | 402 |
| |
403 | 403 |
| |
404 | 404 |
| |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
405 | 453 |
| |
406 | 454 |
| |
407 | 455 |
| |
|
0 commit comments
Comments
(0)