Repository navigation
Conversation
Changelog PreviewThis PR lands in these workspaces:
📋 Changelog PreviewThis is how your changes will appear in the changelog. New Features
🤖 This preview updates automatically when you update the PR. |
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## aldy505/feat/change-stream/sqlite-garbage-collector #747 +/- ##
=======================================================================================
+ Coverage 91.57% 91.59% +0.01%
=======================================================================================
Files 117 118 +1
Lines 22383 22478 +95
=======================================================================================
+ Hits 20498 20588 +90
- Misses 1885 1890 +5
☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Want reviews to match your repository better? Bugbot Learning can learn team-specific rules from PR activity. A team admin can enable Learning in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit aaad2fb. Configure here.
|
|
||
| async fn commit_delete(&self, id: &ObjectId) { | ||
| self.storage.remove(id).await | ||
| } |
There was a problem hiding this comment.
Delete can drop in-flight writes
Medium Severity
commit_delete removes the GC index entry with no sequencing against an in-flight write. A concurrent begin_write can record a deadline, then commit_delete can drop it, after which the write still succeeds. Because commit_write is a no-op, that object is never re-indexed and will not be collected.
Additional Locations (1)
Reviewed by Cursor Bugbot for commit aaad2fb. Configure here.
There was a problem hiding this comment.
I think this behavior is acceptable. Should we guard the begin_write expiry time to be more than some seconds?


Stack created with GitHub Stacks CLI • Give Feedback 💬