cinchapi / concourse

Distributed database warehouse for transactions, search and analytics across time.
http://concoursedb.com
Apache License 2.0
315 stars 234 forks source link

Distributed System support #460

Open jtnelson opened 2 years ago

jtnelson commented 2 years ago

Current blocker: Need to figure out how to make Transactions and AtomicOperations implicitly implement 2PC. Current thought is to refactor these constructs to internally use some sort of 2PC mechanism by default. There would need to be some sort of listener that awaits confirmation that the txn could proceed when a user goes to commit.

So the flow would be like

In the case of Ensemble, the PREPARE phase would need to wait to be informed based on input from the other participants in the cluster

jtnelson commented 1 year ago

Concourse.connect methods need to take in cluster configuration and either

maybe all of the above? Have some logic to detect when a node is down and try to connect to another one?