test: retry rmtree in the cache-reset reopen proof — chromadb 1.5 flusher race - #397
Conversation
…sher race Post-v3.7.0-sync CI intermittently fails test_reset_releases_sqlite_lock_for_reopen with 'Directory not empty': the new chromadb flushes segment files from a background thread, and on slow runners a flush lands mid-rmtree. The lock-release proof is the REOPEN (a held sqlite lock fails there), not the delete — so retry the delete briefly instead of failing on the flusher race. Passed 3.11 on rerun, failed 3.10/3.13 twice each (#396 runs).
|
Warning Review limit reached
Next review available in: 43 minutes You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
CI on #396 (docs-only) exposed a post-sync instability:
test_reset_releases_sqlite_lock_for_reopenfails with Directory not empty on slow runners — chromadb 1.5's background segment flusher writes mid-rmtree. Local runs pass repeatedly; CI failed 3.10/3.13 twice each.The test's proof of lock release is the reopen (a held sqlite lock fails there; on Linux open handles never block deletion anyway) — the delete is cleanup, so it now retries briefly (5 × 0.2 s) before raising.
🤖 Generated with Claude Code