We have a 5x3 Couchbase infrastructure (5 clusters, each with 3 nodes) running worldwide connected by XDCR. We are exploring how closely we can approach “transaction processing” in this setup. I have read this article (http://docs.couchbase.com/developer/dev-guide-3.0/transactional-logic.html) which is good, but it applies only to a single cluster.
I suspect the answer is “Couchbase can sort of / maybe do transactions on a single cluster, but it definitely cannot do them on multi clusters.”
I cannot imagine how we can set up “two-phase commit” or “document lease-out” or “advisory locks” across XDCR. And the scheme would have to handle network errors and worldwide network partitioning.
Does the forum agree with me that transactions across clusters is not feasible?