This commit is contained in:
2026-02-23 19:37:05 +00:00
parent 6011535509
commit 271046231c
15 changed files with 948 additions and 816 deletions

View File

@@ -54,7 +54,6 @@ type Writer struct {
dir string
file *os.File
buf *bytes.Buffer
redoFilesToDelete []string
workerReqs []any
waitCh chan struct{}
appendToWorkerQueue func(any)
@@ -148,7 +147,6 @@ func (s *Writer) reset() {
0, 0, 0, 0, // lsn
})
s.redoFilesToDelete = nil
s.workerReqs = nil
s.waitCh = make(chan struct{})
}
@@ -166,7 +164,6 @@ func (s *Writer) flush() error {
}
if s.buf.Len() > packetPrefixSize {
redoFilesToDelete := s.redoFilesToDelete
s.lsn++
lsn := s.lsn
packet := make([]byte, s.buf.Len())
@@ -192,13 +189,6 @@ func (s *Writer) flush() error {
if err := s.file.Sync(); err != nil {
return fmt.Errorf("TxLog sync: %s", err)
}
for _, fileName := range redoFilesToDelete {
err = os.Remove(fileName)
if err != nil {
octopus.Abort(octopus.RemoveREDOFileFailed, err)
}
}
} else {
s.waitCh = make(chan struct{})
s.mutex.Unlock()
@@ -392,8 +382,25 @@ type AppendedMeasureWithOverflowExtended struct {
[4b] newRootPageNo
1b reusedIndexPages length
[N * 4b] reusedIndexPages
------------------
4b metricID
4b timestamp
8b value
4b newRootPageNo (0 if no new root page)
Nb - varsize (N pages)
[
4b pageNo
1b isReused
Xb page (page size)
]
Nb - varsize (last data page size)
Nb - payload
*/
func (s *Writer) WriteAppendedMeasureWithOverflow(req AppendedMeasureWithOverflow, redoFileName string, holdLock bool) chan struct{} {
func (s *Writer) WriteAppendedMeasureWithOverflow(req AppendedMeasureWithOverflow, holdLock bool) chan struct{} {
size := 24 + len(req.ReusedIndexPages)*4
if req.IsRootChanged {
size += 4
@@ -433,7 +440,6 @@ func (s *Writer) WriteAppendedMeasureWithOverflow(req AppendedMeasureWithOverflo
Record: req,
HoldLock: holdLock,
})
s.redoFilesToDelete = append(s.redoFilesToDelete, redoFileName)
s.mutex.Unlock()
s.sendSignal()