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

Set move key's expiresAt for keys with TTL #1006

Merged
merged 1 commit into from Sep 3, 2019

Conversation

jarifibrahim
Copy link
Contributor

@jarifibrahim jarifibrahim commented Aug 24, 2019

The value log GC moves keys from one value log file to another. The
current implementation of vlog GC would not copy the TTL from the
original entry to the new move key. This commit fixes that.

Without this change, the move keys were not being removed as seen in
issue #974.
With this commit, the move keys are being removed.

This script (https://gist.github.com/kung-foo/66317e4b274ec456a92270e32d692ff7) was used to generate the results shown below.

Move keys being removed because of this Patch (internal keys == move keys)
Move Keys - New Patch (2)

Move keys not being removed in master
63579935-52c47200-c5b1-11e9-99c3-4bbb8659dd00

Fixes: #974


This change is Reviewable

The value log GC moves keys from one value log file to another. The
current implementation of vlog GC  would not copy the TTL from the
original entry to the new move key. This commit fixes that.

Without this change the move keys were not being removed as seen in
issue #974.
With this commit, the move keys are being removed.
Copy link

@pullrequest pullrequest bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ A review job has been created and sent to the PullRequest network.


@jarifibrahim you can click here to see the review status or cancel the code review job.

Copy link

@pullrequest pullrequest bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Went through the PR as well as the related issue, no red flags with the single line change. I did notice your AppVeyor tests are failing which may or may not be immediately related to the change in this line of code which you should look into before merging.

Thanks for sharing as much details on the PR comment though, including the graphs, really makes it easy to review.

Glad this was a relatively short and sweet fix! 🙂


Reviewed with ❤️ by PullRequest

Copy link
Contributor

@manishrjain manishrjain left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reviewed 1 of 1 files at r1.
Reviewable status: :shipit: complete! all files reviewed, all discussions resolved

@jarifibrahim jarifibrahim merged commit d1c0fba into master Sep 3, 2019
@jarifibrahim jarifibrahim deleted the ibrahim/gc-expiresat branch September 3, 2019 10:42
jarifibrahim pushed a commit that referenced this pull request Mar 12, 2020
The value log GC moves keys from one value log file to another. The
current implementation of vlog GC would not copy the TTL from the
original entry to the new move key. This commit fixes that.

Without this change, the move keys were not being removed as seen
in issue #974.
With this commit, the move keys are being removed.

(cherry picked from commit d1c0fba)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

question: space reclamation with entry TTL
4 participants