wp
This commit is contained in:
@@ -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()
|
||||
|
||||
Reference in New Issue
Block a user