Documents the strategy for concurrency and locking.


The system supports multiple, simultaneous edits by different users at the same time.

All interactions with the database are managed by Hibernate which assumes an optimistic locking strategy.  Given that editors typically work only on objects owned by them and not by objects owned by other users, there are no situations in which this strategy leads to deadlocks.  

One possible situation that could lead to issues is simultaneous editing of map project information.  While technically this is a situation where multiple users could be editing the same object at the same time, the expectation is that map project editing is rarely done and most likely only done by a project "administrator" and not by multiple users at the same time.

In practice, the optimistic locking strategy has never lead to concurrency or locking issues.


  • No labels