Adapt to the new IDeltaSupport API to save a copy during persistence #73
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.
I've regression-tested this implementation. It works correctly. The main change is shifting from the old finalizeDelta API to currentDeltaToBytes/currentDeltaSize API.
DeltaCascadeStoreCore
is a vector of typestd::vector<KT>
for the keys that are touched in the current version. No need to do deserialization before writing to log like we did.DeltaCascadeStoreCore<KT,VT,IK,IV>::DeltaType
as a view window for a delta log entry, which contains a map from keys to values. Unlike the normalByteRepresentable
objects, this type is only for deserialization--it only provide an approach for reading the serialized delta data but not for serialization. Serialization is done in the implementation ofcurrentDeltaToBytes()
without using a concrete type.The action build check failed because this pull request relies on a new feature to be merged into derecho. Don't mind it.
@etremel @tgarr Could you help review this change, because it might affect the projects you are working on?