This commit is contained in:
2026-06-09 16:42:17 +00:00
parent 7007b1b6fd
commit 4089ca40c9
11 changed files with 597 additions and 406 deletions

View File

@@ -40,8 +40,9 @@ func (s *AddedMetric) Parse(src io.Reader) (err error) {
}
type DeletedMetric struct {
MetricID uint32
FreePageNumbers []uint32
MetricID uint32
FreeIndexPages []uint32
FreeDataPages []uint32
}
func (s DeletedMetric) Pack(w io.Writer) {
@@ -51,10 +52,11 @@ func (s DeletedMetric) Pack(w io.Writer) {
}
bin.PutUint32(arr[1:], s.MetricID)
w.Write(arr)
bin.WriteVarSize(w, len(s.FreePageNumbers))
for _, pageNo := range s.FreePageNumbers {
bin.WriteUint32(w, pageNo)
}
// fix
// bin.WriteVarSize(w, len(s.FreePageNumbers))
// for _, pageNo := range s.FreePageNumbers {
// bin.WriteUint32(w, pageNo)
// }
}
func (s *DeletedMetric) Parse(src io.Reader) (err error) {
@@ -63,18 +65,19 @@ func (s *DeletedMetric) Parse(src io.Reader) (err error) {
return
}
// free pages
qty, err := bin.ReadVarSize(src)
if err != nil {
return
}
for range qty {
var pageNo uint32
pageNo, err = bin.ReadUint32(src)
if err != nil {
return
}
s.FreePageNumbers = append(s.FreePageNumbers, pageNo)
}
// fix
// qty, err := bin.ReadVarSize(src)
// if err != nil {
// return
// }
// for range qty {
// var pageNo uint32
// pageNo, err = bin.ReadUint32(src)
// if err != nil {
// return
// }
// //s.FreePageNumbers = append(s.FreePageNumbers, pageNo)
// }
return nil
}

View File

@@ -139,7 +139,6 @@ func (s WALRecordAppendMeasures) WriteTo(w *bytes.Buffer) {
bin.WriteVarSize(w, len(level.TailRecords)/indexRecordSize)
w.Write(level.TailRecords)
}
return
}
func (s *WALRecordAppendMeasures) Parse(r *bytes.Buffer) (err error) {