This commit is contained in:
2026-06-13 22:43:17 +00:00
parent 1d1fdb1f0b
commit 685c48f94f
28 changed files with 2492 additions and 2657 deletions

View File

@@ -140,13 +140,13 @@ func (s *WritePreparer) Prepare(input []any) PreparedData {
if len(level.IndexPages) > 0 {
first := level.IndexPages[0]
firstCRC32, _ := bin.GetUint32(first.Content[indexCRC32Idx:])
skipSize := level.SkipRecords * indexRecordSize
skipSize := level.SkipRecords * IndexRecordSize
indexPageTail = &IndexPageTail{
PageNo: first.PageNo,
Reused: first.Reused,
CRC32: firstCRC32,
// в WAL файл попадає лише payload
Records: first.Content[skipSize : maxRecordsOnIndexPage*indexRecordSize],
Records: first.Content[skipSize : maxRecordsOnIndexPage*IndexRecordSize],
}
indexPages = level.IndexPages[1:]
} else {
@@ -156,7 +156,7 @@ func (s *WritePreparer) Prepare(input []any) PreparedData {
IndexPageTail: indexPageTail,
IndexPages: indexPages,
// в WAL файл попадає лише payload
TailRecords: level.TailRecords[:level.TailRecordsCount*indexRecordSize],
TailRecords: level.TailRecords[:level.TailRecordsCount*IndexRecordSize],
})
}
// Worker-у відправляю повний index
@@ -256,7 +256,7 @@ func getIndexRecords(buf []byte, count int) (list []IndexRecord) {
rec.Timestamp, _ = bin.GetUint32(buf[i:])
rec.PageNo, _ = bin.GetUint32(buf[i+4:])
list = append(list, rec)
i += indexRecordSize
i += IndexRecordSize
}
return
}