forked frompostgres/postgres
- Notifications
You must be signed in to change notification settings - Fork6
Commit70cadfb
committed
Close race condition between datfrozen and relfrozen updates.
vac_update_datfrozenxid() did multiple loads of relfrozenxid andrelminmxid from buffer memory, and it assumed each would get the samevalue. Not so if a concurrent vac_update_relstats() did an inplaceupdate. Commit2d2e40e fixed the samekind of bug in vac_truncate_clog(). Today's bug could cause therel-level field and XIDs in the rel's rows to precede the db-levelfield. A cluster having such values should VACUUM affected tables.Back-patch to v12 (all supported versions).Discussion:https://postgr.es/m/20240423003956.e7.nmisch@google.com1 parent440b625 commit70cadfb
1 file changed
+16
-12
lines changedLines changed: 16 additions & 12 deletions
Original file line number | Diff line number | Diff line change | |
---|---|---|---|
| |||
1379 | 1379 |
| |
1380 | 1380 |
| |
1381 | 1381 |
| |
| 1382 | + | |
| 1383 | + | |
1382 | 1384 |
| |
1383 | 1385 |
| |
1384 | 1386 |
| |
| |||
1387 | 1389 |
| |
1388 | 1390 |
| |
1389 | 1391 |
| |
1390 |
| - | |
| 1392 | + | |
| 1393 | + | |
| 1394 | + | |
1391 | 1395 |
| |
1392 | 1396 |
| |
1393 | 1397 |
| |
| |||
1397 | 1401 |
| |
1398 | 1402 |
| |
1399 | 1403 |
| |
1400 |
| - | |
1401 |
| - | |
| 1404 | + | |
| 1405 | + | |
1402 | 1406 |
| |
1403 | 1407 |
| |
1404 | 1408 |
| |
| |||
1417 | 1421 |
| |
1418 | 1422 |
| |
1419 | 1423 |
| |
1420 |
| - | |
| 1424 | + | |
1421 | 1425 |
| |
1422 |
| - | |
| 1426 | + | |
1423 | 1427 |
| |
1424 | 1428 |
| |
1425 |
| - | |
| 1429 | + | |
1426 | 1430 |
| |
1427 | 1431 |
| |
1428 | 1432 |
| |
1429 | 1433 |
| |
1430 | 1434 |
| |
1431 | 1435 |
| |
1432 |
| - | |
1433 |
| - | |
| 1436 | + | |
| 1437 | + | |
1434 | 1438 |
| |
1435 | 1439 |
| |
1436 |
| - | |
| 1440 | + | |
1437 | 1441 |
| |
1438 | 1442 |
| |
1439 |
| - | |
| 1443 | + | |
1440 | 1444 |
| |
1441 | 1445 |
| |
1442 | 1446 |
| |
1443 | 1447 |
| |
1444 | 1448 |
| |
1445 | 1449 |
| |
1446 |
| - | |
1447 |
| - | |
| 1450 | + | |
| 1451 | + | |
1448 | 1452 |
| |
1449 | 1453 |
| |
1450 | 1454 |
| |
|
0 commit comments
Comments
(0)