Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
These are the minimal changes that turned out to be necessary to the TiKV Rust client for our first implementation
of change feeds(might be renamed to CDC or whatever makes more sense- we don't have a roadmap item on our site yet!).
We will use these two functions for our unsound and sound variants of "change timestamps."
get_read_timestamp
will be used for the unsound ones without making it "serializable."get_current_timestamp
will be used for the sound ones by wrapping it within the TiKV transactions to provide a virtual,monotonic commit-timestamp-like timestamp.
We do know that neither of those is going to provide the ideal guarantee we might want for CDC, but we'll use it for
more performance-sensitive use cases and maybe as the baseline for benchmarking other implementations of "timestamps."
Hey @tobiemh, can we have a branch in our repo, named like
0.1.x
or0.1
that initially points to https://github.com/tikv/client-rust/tree/0.1.0, and merge this into the branch?surrealdb
currently relies on client-rust v0.1.0 and themaster
branch of this repo is very much ahead of v0.1.0.I'd like to keep the changes minimal for now by separating introduction of these two functions from upgrading to a more recent version of client-rust.