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

Vacuum crufty leaf pages. #20

Open
bigeasy opened this issue May 20, 2012 · 0 comments
Open

Vacuum crufty leaf pages. #20

bigeasy opened this issue May 20, 2012 · 0 comments
Assignees
Milestone

Comments

@bigeasy
Copy link
Owner

bigeasy commented May 20, 2012

There may be pages that do not get rewritten but have a lot of appends. A page may have a record that is inserted and deleted repeatedly, without ever reaching a point where the page will split. I'm considering adding a journal entry number to the appended record, so we'll know how many entries are in the leaf page. A rewritten journal will have one extra entry for the number of records in the page, or two if we take to writing a position array record at the head of the file.

@ghost ghost assigned bigeasy May 20, 2012
@bigeasy bigeasy added the ready label Nov 26, 2015
bigeasy pushed a commit that referenced this issue Apr 1, 2020
bigeasy pushed a commit that referenced this issue Apr 1, 2020
bigeasy pushed a commit that referenced this issue Apr 1, 2020
Preserve and maintain the log of loads, merges, and dependents and
attach to the page. Create the winnowing structure in the vacuum
funciton and chip away at it all in there.

See #20.
bigeasy pushed a commit that referenced this issue Apr 1, 2020
bigeasy pushed a commit that referenced this issue Aug 15, 2020
title: Release B-tree version 2.0.0-alpha.0.
label: release

 * Remove `async` from package name.
 * Upgrade `destructible` to `6.2.1`. Closes #567.
 * Upgrade `prospective` to `^0.2.0`. Closes #566.
 * Upgrade `interrupt` to `^10.0.3`. Closes #565.
 * Upgrade `proof` to `^9.0.2`. Closes #564.
 * Replace Fracture with Turnstile. Closes #563.
 * Fix stashed load, depenent structure. See #20.
 * Preserve a log of loads, dependents. See #20.
 * Remove unused dependency tracking key formats. See #20.
 * Sketch of vacuum. See #20.
 * Make branch split, root fill to `async`/`await`. Closes #561. Closes #562.
 * Add optional `entries` collection to `descend`. Closes #560.
 * Further tidy of `_path` and `_hold` vs `_create`. See #558. See #559.
 * Create separate cache `_create` helper. Closes #559.
 * Use `_path` helper in `Journalist`. Closes #558.
 * Make the default merge count one. Closes #557.
 * Replace `_dirty` map with `Turnstile.Set`. Closes #556.
 * Fix cache entry leak in page split. Closes #555.
 * Fix split branch test. See #550.
 * Convert leaf merge to `async`/`await`. Closes #553.
 * Deserialize deletes. Closes #554.
 * Tidy leaf split for leaf merge. See #553.
 * Remove pause from split test. See #548.
 * Remove dead code.

Closes #568.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant