Commit 1448c55
committed
Drain persistence barrier when PREPARE is durable, not on COMMIT
The barrier should block persistence only until the PREPARE record is
confirmed durable. Once durable, subsequent transactions can persist
normally. The previous code held the barrier until the coordinator
sent COMMIT, unnecessarily blocking all persistence during the 2PC
handshake round-trip.
Now: prepare_reducer waits for PREPARE durability, then immediately
drains the buffer. commit_prepared just removes from the registry.
abort_prepared still needs to invert in-memory state (TODO).1 parent eb8da3d commit 1448c55
1 file changed
Lines changed: 18 additions & 8 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1810 | 1810 | | |
1811 | 1811 | | |
1812 | 1812 | | |
| 1813 | + | |
| 1814 | + | |
| 1815 | + | |
| 1816 | + | |
| 1817 | + | |
1813 | 1818 | | |
1814 | 1819 | | |
1815 | 1820 | | |
| |||
1819 | 1824 | | |
1820 | 1825 | | |
1821 | 1826 | | |
1822 | | - | |
1823 | | - | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
| 1832 | + | |
1824 | 1833 | | |
1825 | | - | |
| 1834 | + | |
1826 | 1835 | | |
1827 | 1836 | | |
1828 | | - | |
1829 | 1837 | | |
1830 | 1838 | | |
1831 | 1839 | | |
1832 | 1840 | | |
1833 | 1841 | | |
1834 | | - | |
1835 | | - | |
| 1842 | + | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
1836 | 1846 | | |
1837 | | - | |
| 1847 | + | |
1838 | 1848 | | |
1839 | 1849 | | |
1840 | | - | |
| 1850 | + | |
1841 | 1851 | | |
1842 | 1852 | | |
1843 | 1853 | | |
| |||
0 commit comments