I think BonsaiDb's approach can be quite simple due to transactions being performed in a single step. I have been trying to decide if there is a possibility for a deadlock pattern to arise given the current design. If there is, I believe either wound-wait or wait-die strategies would work for resolving it.
A timely post by Martin Fowler on Two Phase Commit with explanations of several conflict resolution approaches.
I think BonsaiDb's approach can be quite simple due to transactions being performed in a single step. I have been trying to decide if there is a possibility for a deadlock pattern to arise given the current design. If there is, I believe either wound-wait or wait-die strategies would work for resolving it.