On Sunday, September 14, 2025, Chao Li <
li.evan.chao@gmail.com> wrote:
evantest=*# update t set b=30 where id = 1;
evantest=*# update t set b = 30; # block here
```
1 | 5 | 30 <=== only the old tuple is updated
Can’t test right now myself but I believe you’ll find this much more illustrative if you don’t have both S1 and S2 set the same column to the same value when doing their updates. Also, include ctid in the select outputs. If the second update would have been a=10 your final output should be 1,10,30 - I.e. you’d find that both updates applied to id=1 after the second commit finished, and three tuples exist where id=1.
David J.