Example – Dirty data
•
•AcceptReturn(p1,s1,50) MakeSale(p1,s2,65)
•Update row 1: 25 -> 75
•                                      update row 2: 70->5
•                                      find sum: 90
•                                           // no need to insert
•                                           // row in Order
•Abort
•// rollback row 1 to 35
•                                          COMMIT
•
etc
etc
etc
60
s1
p2
70
s2
p1
25
s1
p1
Initial state of InStore, Product
Final state of InStore, Product
Integrity constraint is false:
Sum for p1 is only 40!
etc
etc
etc
60
s1
p2
5
s2
p1
25
s1
p1
etc
etc
etc
44
etc
p2
10
etc
p1
etc
etc
etc
44
etc
p2
10
etc
p1