> > It seems that locking tuples via LockTable at Phase 1 is not > > required anymore, right? > > We haven't put those hooks in yet, so the current version is master/slave.
So, you are not going to use any LockTable in Phase 1 on master right now but you still need some LockTable in Phase 3 on slaves. Are you going to use pg lock manager table in Phase 3? Shouldn't "ordering" in Phase 3 be implemented using special LockTable, totally separated from pg lock manager? (if it's right that Phase 1 doesn't require Phase 3 LockTable at all.) > > Also it seems that we could perform Phases 2 & 3 periodically > > during transaction execution. This would make WS smaller and > > conflicts between long running transactions from different sites > > would be resoved faster. And it would increase commit chances for long running transactions: due to async notification to other nodes about changes made by transaction, short transactions may have noticeably higher chances to commit ... and abort conflicting long transactions. > Seems like a good idea to me, but we won't know for sure until we > implement the multi-master hooks. Is it about periodic Phases 2 & 3 or about using Phase 3' LockTable in Phase 1? The first one definitely can wait but the second one should be resolved before merging pg-r code with main CVS, imo. Vadim ---------------------------(end of broadcast)--------------------------- TIP 5: Have you checked our extensive FAQ? http://www.postgresql.org/users-lounge/docs/faq.html