fix(index): keep PTable construction predictable - #458
Conversation
yordis
commented
Aug 10, 2026
- Index rebuild throughput and file-handle safety should stay consistent across supported platforms without carrying a separate native stream path.
- High-volume PTable construction should avoid per-stream allocation overhead that makes recovery and rebuild latency less predictable.
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
Signed-off-by: Yordis Prieto <yordis.prieto@gmail.com>
PR SummaryMedium Risk Overview HashListMemTable and ReverseComparer are tuned for rebuild/iteration: stream keys are read via New tests cover corrupt PTable open releasing file handles, single-reader PTable lookup after init, and GC allocation bounds for ordered memtable iteration and ReverseComparer comparisons. Reviewed by Cursor Bugbot for commit bd47526. Bugbot is set up for automated code reviews on this repo. Configure here. |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (20)
💤 Files with no reviewable changes (14)
WalkthroughThe change removes the native unbuffered file implementation and its package references. PTable now uses pooled work items directly. HashListMemTable and ReverseComparer reduce allocation overhead. New tests cover file-handle release, reader reuse, and allocation limits. ChangesNative I/O removal
Index access and allocation updates
Estimated code review effort: 4 (Complex) | ~45 minutes Possibly related PRs
Poem
🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
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 |