#2925·LiteDB

Move #2772's memory measurements and result reports from docs/ to LiteDB-Artifacts

Author: JKamskerCreated Sep 18, 2026Updated Sep 18, 2026
Labelsdocumentationpriority: P3

Raw measurements and the reports that interpret them now have a home outside the source tree: litedb-org/LiteDB-Artifacts. #2905 already moved its evidence there. dev still carries the equivalent material from #2772 (bounded elastic memory management), and it should follow so the convention is applied consistently.

This is housekeeping. Nothing here affects the build, the package or runtime behaviour, so it can wait for a quiet moment.

What should move

Target folder: pull-requests/2772-bounded-memory-management/ in LiteDB-Artifacts.

  • docs/memory-measurements/ — 64 JSON files, about 168 KB (baseline-*, current-*, lifecycle-*, prhead-*, plus profiles/ and profile-impact/)
  • docs/memory-management-benchmark-results.md
  • docs/memory-management-validation.md
  • docs/memory-profile-results.md
  • docs/memory-profile-impact.md
  • docs/memory-lifecycle-audit.md

These record what happened when something was run, which is the test the Artifacts README uses.

What should stay

  • docs/memory-profiles.md, docs/release-notes.md, docs/connection-string-parsing.md, docs/vector-*.md, docs/versioning.md, docs/reprorunner.md — they describe how the product works.
  • tools/MemoryProfiles, tools/MemoryValidation, LiteDB.Benchmarks, LiteDB.Stress — the code that produces results stays with the source. CI builds both tools/Memory* projects.

Needs a decision

  • docs/memory-management-proposal.md (92 KB) and docs/memory-management-todo.md. They are design and planning documents for work that has since merged, neither results nor product documentation. Options: keep as design history, move alongside the evidence, or delete the TODO once it is confirmed done.
  • docs/transaction-regression-coverage.md describes test coverage rather than the product. Probably stays, but worth a look.

Links to update

Seven inbound references in four files would break:

  • docs/memory-profiles.md lines 3 and 78 → memory-profile-impact.md, memory-profile-results.md
  • tools/MemoryProfiles/README.md line 3 → ../../docs/memory-profile-impact.md
  • docs/memory-management-proposal.md line 8 → memory-management-validation.md
  • docs/memory-management-todo.md lines 9, 128 and 168 → the audit, benchmark-results and validation docs

Links between the moved reports, and from them into memory-measurements/, keep working if the reports sit beside that folder, as was done for #2905. Links from the moved reports back into the source tree (for example to tools/) should become permalinks to a commit.

How

Follow the conventions in the Artifacts README:

  1. Export from a fixed dev commit with git archive, and name that commit in the new folder's README.md together with the environment the numbers came from.
  2. Check that the committed data is byte-identical by comparing blob ids (git rev-parse <sha>:<path> against git ls-tree in the Artifacts repo). On Windows, autocrlf can change working files, so compare blobs rather than files on disk.
  3. Scrub machine-specific paths from the outputs if any are present.
  4. Remove the files from dev in one PR, update the references above, and confirm with git grep that nothing else points at them.

pull-requests/2905-shared-query-ir is a worked example of the layout and the provenance README.