Preventing race conditions with conditions
Two processes are trying to update the same user's email address simultaneously:
- Process A: Changes email from '[email protected]' to '[email protected]'
- Process B: Changes email from '[email protected]' to '[email protected]'
Both use updateitem() with ConditionExpression='email = :oldemail' where :old_email = '[email protected]'. Process A executes first and succeeds.
What happens when Process B executes immediately after?
This exercise is part of the course
Using Data Stores in AWS
Hands-on interactive exercise
Turn theory into action with one of our interactive exercises
Start Exercise