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

Same payload are persisted multiple times #5

Closed
qtcwt opened this issue Oct 30, 2020 · 2 comments
Closed

Same payload are persisted multiple times #5

qtcwt opened this issue Oct 30, 2020 · 2 comments

Comments

@qtcwt
Copy link
Member

qtcwt commented Oct 30, 2020

BEGIN_OP(payload) in a branch with retries (usually in nonblocking structures) would cause the same payload to be persisted for more than once, i.e., to be added into to_be_persisted list several times. This redundancy would affect the performance and increase the average size of to_be_persisted list.

One way to avoid that is to adjust existing API so that users can only set the birth epoch of payload during BEGIN_OP and add it to to_be_persisted list only when the linearization point has been passed (has succeeded). An example can be found in this thread in PR #4.

@qtcwt
Copy link
Member Author

qtcwt commented Nov 2, 2020

Well we may have to add payload to to-be-persisted bucket multiple times, since reset epoch in payload needs to be explicitly persisted after ABORT_OP in order to overwrite potential automatic writes-back after tagging but before resetting epoch. (relevant to Issue #7)

@qtcwt
Copy link
Member Author

qtcwt commented Nov 2, 2020

@qtcwt qtcwt closed this as completed Nov 2, 2020
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

No branches or pull requests

1 participant