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

Versioning data according to a timestamp provided by the user #735

Open
ikopylov opened this issue Jan 12, 2023 · 1 comment
Open

Versioning data according to a timestamp provided by the user #735

ikopylov opened this issue Jan 12, 2023 · 1 comment
Labels
feature New feature or request

Comments

@ikopylov
Copy link
Member

In the current implementation, user timestamps are used only at the Bob level within a single vdisk. They are completely ignored at the Pearl level and are not used between cluster nodes.
We need to implement timestamp based version comparisons everywhere for consistency. We cannot use the timestamps of the local nodes, because in distributed systems there can be an out of sync time on servers, as well as delays in the arrival of data. A common practice is to use external timestamps, provided by the user.
In addition, timestamps can be used to optimize storage scans by filtering out BLOBs and holders that definitely contain older data.

Related issues: #694 #711 #708 #609

@ikopylov ikopylov added the feature New feature or request label Jan 12, 2023
@ikopylov
Copy link
Member Author

We can try to generalize versioning with the help of new trait that will select the field from the header or from the metadata that is being used as a version. In this way we can perform versioning by any field (not only by timestamp)

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

No branches or pull requests

1 participant