forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit19d561c
committed
Done!
< * Merge xmin/xmax/cmin/cmax back into three header fields<< Before subtransactions, there used to be only three fields needed to< store these four values. This was possible because only the current< transaction looks at the cmin/cmax values. If the current transaction< created and expired the row the fields stored where xmin (same as< xmax), cmin, cmax, and if the transaction was expiring a row from a< another transaction, the fields stored were xmin (cmin was not< needed), xmax, and cmax. Such a system worked because a transaction< could only see rows from another completed transaction. However,< subtransactions can see rows from outer transactions, and once the< subtransaction completes, the outer transaction continues, requiring< the storage of all four fields. With subtransactions, an outer< transaction can create a row, a subtransaction expire it, and when the< subtransaction completes, the outer transaction still has to have< proper visibility of the row's cmin, for example, for cursors.<< One possible solution is to create a phantom cid which represents a< cmin/cmax pair and is stored in local memory. Another idea is to< store both cmin and cmax only in local memory.<> * -Merge xmin/xmax/cmin/cmax back into three header fields1 parentc398300 commit19d561c
2 files changed
+4
-43
lines changedLines changed: 2 additions & 22 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
2 | 2 |
| |
3 | 3 |
| |
4 | 4 |
| |
5 |
| - | |
| 5 | + | |
6 | 6 |
| |
7 | 7 |
| |
8 | 8 |
| |
| |||
1329 | 1329 |
| |
1330 | 1330 |
| |
1331 | 1331 |
| |
1332 |
| - | |
1333 |
| - | |
1334 |
| - | |
1335 |
| - | |
1336 |
| - | |
1337 |
| - | |
1338 |
| - | |
1339 |
| - | |
1340 |
| - | |
1341 |
| - | |
1342 |
| - | |
1343 |
| - | |
1344 |
| - | |
1345 |
| - | |
1346 |
| - | |
1347 |
| - | |
1348 |
| - | |
1349 |
| - | |
1350 |
| - | |
1351 |
| - | |
1352 |
| - | |
| 1332 | + | |
1353 | 1333 |
| |
1354 | 1334 |
| |
1355 | 1335 |
| |
|
Lines changed: 2 additions & 21 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 |
| |
| |||
1189 | 1189 |
| |
1190 | 1190 |
| |
1191 | 1191 |
| |
1192 |
| - | |
1193 |
| - | |
1194 |
| - | |
1195 |
| - | |
1196 |
| - | |
1197 |
| - | |
1198 |
| - | |
1199 |
| - | |
1200 |
| - | |
1201 |
| - | |
1202 |
| - | |
1203 |
| - | |
1204 |
| - | |
1205 |
| - | |
1206 |
| - | |
1207 |
| - | |
1208 |
| - | |
1209 |
| - | |
1210 |
| - | |
1211 |
| - | |
| 1192 | + | |
1212 | 1193 |
| |
1213 | 1194 |
| |
1214 | 1195 |
| |
|
0 commit comments
Comments
(0)