Commit 764da77
committed
Evade extra table_tuple_fetch_row_version() in ExecUpdate()/ExecDelete()
When we lock tuple using table_tuple_lock() then we at the same time fetch
the locked tuple to the slot. In this case we can skip extra
table_tuple_fetch_row_version() thank to we've already fetched the 'old' tuple
and nobody can change it concurrently since it's locked.
Discussion: https://postgr.es/m/CAPpHfdua-YFw3XTprfutzGp28xXLigFtzNbuFY8yPhqeq6X5kg%40mail.gmail.com
Reviewed-by: Aleksander Alekseev, Pavel Borisov, Vignesh C, Mason Sharp
Reviewed-by: Andres Freund, Chris Travers1 parent c75a623 commit 764da77
1 file changed
+35
-13
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1559 | 1559 | | |
1560 | 1560 | | |
1561 | 1561 | | |
| 1562 | + | |
| 1563 | + | |
| 1564 | + | |
| 1565 | + | |
| 1566 | + | |
| 1567 | + | |
| 1568 | + | |
| 1569 | + | |
| 1570 | + | |
| 1571 | + | |
| 1572 | + | |
| 1573 | + | |
| 1574 | + | |
| 1575 | + | |
| 1576 | + | |
| 1577 | + | |
1562 | 1578 | | |
1563 | 1579 | | |
1564 | 1580 | | |
| |||
1673 | 1689 | | |
1674 | 1690 | | |
1675 | 1691 | | |
| 1692 | + | |
| 1693 | + | |
| 1694 | + | |
| 1695 | + | |
| 1696 | + | |
1676 | 1697 | | |
1677 | 1698 | | |
1678 | 1699 | | |
1679 | 1700 | | |
1680 | 1701 | | |
1681 | | - | |
| 1702 | + | |
1682 | 1703 | | |
1683 | 1704 | | |
1684 | 1705 | | |
| |||
2393 | 2414 | | |
2394 | 2415 | | |
2395 | 2416 | | |
| 2417 | + | |
| 2418 | + | |
| 2419 | + | |
| 2420 | + | |
| 2421 | + | |
| 2422 | + | |
| 2423 | + | |
| 2424 | + | |
| 2425 | + | |
| 2426 | + | |
| 2427 | + | |
| 2428 | + | |
| 2429 | + | |
2396 | 2430 | | |
2397 | 2431 | | |
2398 | 2432 | | |
| |||
2401 | 2435 | | |
2402 | 2436 | | |
2403 | 2437 | | |
2404 | | - | |
2405 | | - | |
2406 | | - | |
2407 | | - | |
2408 | | - | |
2409 | | - | |
2410 | | - | |
2411 | | - | |
2412 | | - | |
2413 | | - | |
2414 | | - | |
2415 | | - | |
2416 | 2438 | | |
2417 | 2439 | | |
2418 | 2440 | | |
| |||
0 commit comments