Remove file log store memory mirror

This commit is contained in:
npc0-hue
2026-09-03 12:21:07 +08:00
parent 6311eb72ba
commit 5b82a42cc4
3 changed files with 162 additions and 57 deletions
+32
View File
@@ -1,6 +1,7 @@
package service
import (
"os"
"path/filepath"
"strings"
"sync"
@@ -554,6 +555,37 @@ func TestFileLogBodyStoreReloadsVerbatimLongLogLine(t *testing.T) {
}
}
func TestFileLogBodyStoreStartupSkipsBodyLoadAndQueriesFromCursorSegment(t *testing.T) {
rootDir := filepath.Join(t.TempDir(), "logs")
store, err := NewFileLogBodyStore(rootDir)
if err != nil {
t.Fatalf("create file log store: %v", err)
}
first := []domain.LogEntry{{Seq: 1, Timestamp: time.Date(2026, 7, 3, 12, 0, 1, 0, time.UTC), Line: "old"}}
second := []domain.LogEntry{{Seq: 2, Timestamp: time.Date(2026, 7, 3, 12, 0, 2, 0, time.UTC), Line: "new"}}
if err := store.AppendBatch("log-1", domain.LogBatchRecord{Checksum: checksumForEntries(t, first), FirstSeq: 1, LastSeq: 1, Entries: first}); err != nil {
t.Fatalf("append first segment: %v", err)
}
if err := store.AppendBatch("log-1", domain.LogBatchRecord{Checksum: checksumForEntries(t, second), FirstSeq: 2, LastSeq: 2, Entries: second}); err != nil {
t.Fatalf("append second segment: %v", err)
}
if err := os.WriteFile(store.segmentPath("log-1", 1), []byte("{not-json\n"), 0o600); err != nil {
t.Fatalf("corrupt old segment: %v", err)
}
reloaded, err := NewFileLogBodyStore(rootDir)
if err != nil {
t.Fatalf("reload should not read all log bodies: %v", err)
}
selected, nextSeq, err := reloaded.Query("log-1", 1, 1)
if err != nil {
t.Fatalf("query from cursor segment: %v", err)
}
if len(selected) != 1 || selected[0].Seq != 2 || selected[0].Line != "new" || nextSeq != 2 {
t.Fatalf("unexpected cursor query: entries=%+v next=%d", selected, nextSeq)
}
}
func newRegisteredLogIngestService(t *testing.T) (*CoreService, string) {
t.Helper()
svc := newTestCoreService()