This commit is contained in:
2026-06-12 14:21:14 +00:00
parent 58db58a0a0
commit bf22e9a85e
7 changed files with 168 additions and 147 deletions

View File

@@ -57,7 +57,28 @@ func (s *DataPreparer) Prepare(input []any) PreparedData {
// if len(x.FreePageNumbers) > 0 {
// s.freeList.AddPageNumbers(x.FreePageNumbers)
// }
case AppendedMeasures:
case MeasuresAppendRecord:
rec := MeasuresAppendRecord{
MetricID: x.MetricID,
TimestampsRewindOffset: x.TimestampsRewindOffset,
Timestamps: x.Timestamps,
ValuesRewindOffset: x.ValuesRewindOffset,
Values: x.Values,
}
rec.WriteTo(s.w)
// Дані для Worker
s.writeResults = append(s.writeResults, AppendMeasuresSummary{
// MetricID: x.MetricID,
// LastPageNo: sealResult.DataPages[len(sealResult.DataPages)-1].PageNo,
// Index: indexLevelTails,
// ResultCode: x.ResultCode,
// WrittenCount: x.WrittenCount,
// ResultCh: x.ResultCh,
})
case AppendedMeasuresWithGrow:
sealResult := s.pagePreparer.SealPages(SealPagesIn{
LastPageNo: x.LastPageNo,
IndexLevelTails: x.IndexLevelTails,
@@ -178,7 +199,7 @@ func (s *DataPreparer) Reset() {
}
// MeasuresToWrite
type AppendedMeasures struct {
type AppendedMeasuresWithGrow struct {
MetricID uint32
LastPageNo uint32
TimestampsOffset int // offset on 1st page

View File

@@ -306,20 +306,20 @@ func (s *MeasuresAppendWithGrowRecord) Parse(r *bytes.Buffer) (err error) {
}
type MeasuresAppendRecord struct {
MetricID uint32
TimestampsOffset int
Timestamps []byte
ValuesOffset int
Values []byte
MetricID uint32
TimestampsRewindOffset int
Timestamps []byte
ValuesRewindOffset int
Values []byte
}
func (s MeasuresAppendRecord) WriteTo(w *bytes.Buffer) {
w.WriteByte(CodeMeasuresAppendWithGrow)
bin.WriteUint32(w, s.MetricID)
bin.WriteVarSize(w, s.TimestampsOffset)
bin.WriteVarSize(w, s.TimestampsRewindOffset)
bin.WriteVarSize(w, len(s.Timestamps))
w.Write(s.Timestamps)
bin.WriteVarSize(w, s.ValuesOffset)
bin.WriteVarSize(w, s.ValuesRewindOffset)
bin.WriteVarSize(w, len(s.Values))
w.Write(s.Values)
}
@@ -330,7 +330,7 @@ func (s *MeasuresAppendRecord) Parse(r *bytes.Buffer) (err error) {
if err != nil {
return
}
s.TimestampsOffset, err = bin.ReadVarSize(r)
s.TimestampsRewindOffset, err = bin.ReadVarSize(r)
if err != nil {
return
}
@@ -342,7 +342,7 @@ func (s *MeasuresAppendRecord) Parse(r *bytes.Buffer) (err error) {
if err != nil {
return
}
s.ValuesOffset, err = bin.ReadVarSize(r)
s.ValuesRewindOffset, err = bin.ReadVarSize(r)
if err != nil {
return
}