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

release/v1.6 - Rework DB.DropPrefix (#1381) #1514

Merged
merged 1 commit into from
Sep 10, 2020

Conversation

jarifibrahim
Copy link
Contributor

@jarifibrahim jarifibrahim commented Sep 9, 2020

Fixes three issues with the current implementation:

Fixes #1381

Co-authored-by: Ibrahim Jarif ibrahim@dgraph.io
(cherry picked from commit e013bfd)


This change is Reviewable

Fixes three issues with the current implementation:

- It can generate compaction requests that break the invariant that bottom
  tables need to be consecutive (issue #1380). See
  #1380 (comment)
- It performs the same level compactions in increasing order of levels
  (starting from L0) which leads to old versions of keys for the prefix
  re-surfacing to active transactions.
- When you have to drop multiple prefixes, the API forces you to drop one
  prefix at a time and go through the whole expensive table rewriting multiple
  times.

Fixes #1381

Co-authored-by: Ibrahim Jarif <ibrahim@dgraph.io>
(cherry picked from commit e013bfd)
@jarifibrahim jarifibrahim changed the title Rework DB.DropPrefix (#1381) release/v1.6 - Rework DB.DropPrefix (#1381) Sep 9, 2020
@jarifibrahim jarifibrahim merged commit 058a414 into release/v1.6 Sep 10, 2020
@jarifibrahim jarifibrahim deleted the ibrahim/r1.6-drop-rework branch September 10, 2020 11:19
mYmNeo pushed a commit to mYmNeo/badger that referenced this pull request Jan 16, 2023
Fixes three issues with the current implementation:

- It can generate compaction requests that break the invariant that bottom
  tables need to be consecutive (issue hypermodeinc#1380). See
  hypermodeinc#1380 (comment)
- It performs the same level compactions in increasing order of levels
  (starting from L0) which leads to old versions of keys for the prefix
  re-surfacing to active transactions.
- When you have to drop multiple prefixes, the API forces you to drop one
  prefix at a time and go through the whole expensive table rewriting multiple
  times.

Fixes hypermodeinc#1381

Co-authored-by: Ibrahim Jarif <ibrahim@dgraph.io>
(cherry picked from commit e013bfd)

Co-authored-by: Damien Tournoud <damien@platform.sh>
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.

3 participants