SnapshotStore saves an entity's snapshot history
xirc opened this issue · comments
Taichi Yamakawa commented
SnapshotStore
( ~ v2.1.0) saves an entity's snapshot as a snapshot, not an event. One of the reasons behind this is reducing storage space for saving entitys' snapshots.
As same as other persistent actors such as RaftActor
, SnapshotStore
is wanted to be rolled back to a certain point (timestamp or sequence number). To support this rollback, SnapshotStore
should save an entity's snapshot as an event instead. Note that this change will increase required storage space to save snapshots.
Considerations:
SnapshotStore
maintains data backward compatibility. The newSnapshotStore
should read a snapshot that the oldSnapshotStore
saved.- The new
SnapshotStore
should not change message protocols as possible not to affect other actors such asRaftActor
andSnapshotSyncManager
.