More elaborate tests for snapshot import and snapshot export
@mwihoti is already working on this.
Since Nov 10, 2026.
Assessment
This issue has not been assessed yet.
Description
These tests should target the public API. We could, in order of complexity, ...
-
write tests that only target the real implementation.
-
write tests that target the real implementation and the reference implementation (see
Database.LSMTree.Class). This would require updating the model to handle snapshot imports and exports. -
add actions to the lockstep state machine tests that perform snapshot exports and imports. This requires updating the state machine infra, but also the model.
(1) and (2) are particularly useful for testing "bad code paths". For example, important a snapshot with a name that already exists.
(3) is useful for testing interleaving of snapshot imports/exports with other operations. To prevent cluttering the state machine tests with "bad code paths" cases, we should also implement (1)/(2) if we implement (3).
- Dominant language
- Haskell
- Stars
- 54
- Forks
- 17
- Avg merge
- 8d 22h
- Merged PRs (30d)
- 3
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from IntersectMBO/lsm-tree
-
blockio dependencies priority: low
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
IntersectMBO/lsm-tree#880 ·
-
Implement a page index that benefits from key overlapPossibly taken @mwihoti claimed this 4 days ago. Openenhancement lsm-tree priority: low
IntersectMBO/lsm-tree#899 · 1 assignee ·
-
Mitigate risk of `fsync` becoming a no-op on Unix-like systemsPossibly taken @jorisdral claimed this 5 days ago. Openblockio lsm-tree priority: high
IntersectMBO/lsm-tree#896 · 1 assignee ·
-
bug github_actions priority: low
Difficulty 1/5 Under an hour Newbie friendliness 35/100
IntersectMBO/lsm-tree#895 ·
-
Fully support `ghc-9.14`Possibly taken @mwihoti claimed this 5 days ago. Opendependencies good first issue priority: low
Difficulty 4/5 3-5 days Newbie friendliness 48/100
IntersectMBO/lsm-tree#881 · 2 comments · 1 assignee ·
All issues in IntersectMBO/lsm-tree
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
15-minutes 5-minutes algorithm any-language beginner-friendly c cpp csharp easy go good first issue hacktoberfest help wanted java javascript kotlin python rust swift typescript
Difficulty 1/5 Under an hour Newbie friendliness 68/100
Huerte/algo-solutions-python#260 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
IntersectMBO/cardano-ledger#6276 ·
Maintainers usually reply within 1 day