Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Distributed Transaction Support #137

Open
bchavez opened this issue Feb 14, 2019 · 0 comments
Open

Distributed Transaction Support #137

bchavez opened this issue Feb 14, 2019 · 0 comments

Comments

@bchavez
Copy link
Owner

bchavez commented Feb 14, 2019

Just saw this NDC 2019 talk by Jimmy Bogard:

https://www.youtube.com/watch?v=IMvrg0bN9-o

Associated blog post:

Associated Research Paper by Pat Helland: LifeBeyondTxns.pdf
https://queue.acm.org/detail.cfm?id=3025012

It might be interesting to provide some of these distributed transaction facilities and primitives within the RethinkDB driver; either in the same assembly or as a separate RethinkDb.Driver.Transactions assembly. Probably the latter.

A decent implementation could make it easy for developers to get distributed transactions working across multiple documents and database systems with RethinkDB.

The implementation of these distributed transaction primitives could also leverage the upcoming database write-hook triggers in the RethinkDB 2.4 release. Bogard leverages "trigger"-like database features (but are more change feed) things in CosmosDB.

I still need to study this approach more to get a better understanding if it really solves the problem; if it can recover from major failure scenarios; if it generally makes architectural sense; and understand any limitations in this approach before implementing.

🏖️ 🎺 Beach Boys - Good Vibrations (Nick Warren bootleg)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant