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

Add basic transaction support #47

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

codenaked
Copy link

Minimal changes to support RockDB's TransactionDb/Transaction, including some basic unit tests.

Notes:

  1. Most of the underly functionality of RocksDb was moved to RocksDbBase in order to avoid having overloads of the Open method available on TransactionDb that are actually instances of RocksDb.
  2. Several Interop methods were duplicated to support transactions. In theory, the existing methods could be updated to support another optional parameter (i.e. if a transaction handle was passed in similar to how column family handles are passed in), but to avoid confusion, new methods were added.
  3. The unit tests only work if a built copy of the RockDB library is included. There wasn't a clean way to include that for the unit tests, since they are built out-of-band.
  4. Not all Transaction methods were implemented.
  5. Support for OptimisticTransactionDb was not implemented.

Ref #1

@codenaked codenaked marked this pull request as draft October 24, 2023 17:12
@codenaked
Copy link
Author

Converted to draft while we debug an issue.

@codenaked codenaked marked this pull request as ready for review October 24, 2023 18:03
@riemannulus
Copy link

riemannulus commented Sep 24, 2024

@theolivenbaum @codenaked If there are no further updates to this PR and it remains unmaintained, I would like to take this PR and merge it.

@theolivenbaum
Copy link
Contributor

@riemannulus if you could review the changes and push an updated commit, I can review it this week and merge it back!

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

Successfully merging this pull request may close these issues.

3 participants