System Design - optimistic-locking