Example – Lost update
•
•
ClearOut(p1,s1)
AcceptReturn(p1,s1,60)
•
Query InStore; qty is 25
•
Add 25 to WarehouseQty: 40->65
•
Update row 1: 25->85
•
Update row 1, setting it to 0
•
COMMIT
•
COMMIT
Initial state of InStore, Product
Final state of InStore, Product
60 returned p1’s have vanished
from system; total is still 135
etc
etc
etc
45
s1
p2
50
s2
p1
25
s1
p1
etc
etc
etc
45
s1
p2
50
s2
p1
0
s1
p1
etc
etc
etc
55
etc
p2
40
etc
p1
etc
etc
etc
55
etc
p2
65
etc
p1