citus
citus copied to clipboard
Distributed transactions under a concurrency scenario
This issue is the following question of this issue, I can not re-open it so I create the new one.
My question is about how Citus would work in a concurrency scenario. Suppose Citus executes two transactions t1 and t2 at the same time, which are generated by the same piece of code of a concurrent program, so they would acquire locks first on A and then on B in the same order.
Let's say that A is on NodeA and B is on NodeB, and both t1 and t2 are distributed transactions across nodes. In this case, is it possible that t1 acquires the lock on A first and t2 acquires the lock on B first, then resulting in a deadlock?