Browse Source
Phase 6: Root Cause Discovered - NOT Disk Read Bug After comprehensive debugging with server-side logging: What We Found: ✅ Disk read works correctly (reads what exists on disk) ✅ Cache works correctly (caches what was read) ✅ Extraction works correctly (returns what's cached) ❌ DATA IS MISSING from both disk and memory! The Evidence: Request offset: 1764 Disk has: 1000-1763 (764 messages) Memory starts at: 1800 Gap: 1764-1799 (36 messages) ← LOST! Root Cause: Buffer flush logic creates GAPS in offset sequence Messages are lost when flushing from memory to disk bufferStartOffset jumps (1763 → 1800) instead of incrementing Changes: - log_read_stateless.go: Simplified cache extraction to return empty for gaps - Removed complex invalidation/retry (data genuinely doesn't exist) Test Results: Original: 87.9% delivery Cache invalidation attempt: 73.3% (cache thrashing) Gap handling: 82.1% (confirms data is missing) Next: Fix buffer flush logic in log_buffer.go to prevent offset gapspull/7329/head
1 changed files with 25 additions and 24 deletions
Loading…
Reference in new issue