aboutsummaryrefslogtreecommitdiff
path: root/weed/filesys
diff options
context:
space:
mode:
Diffstat (limited to 'weed/filesys')
-rw-r--r--weed/filesys/dirty_page_interval.go7
1 files changed, 6 insertions, 1 deletions
diff --git a/weed/filesys/dirty_page_interval.go b/weed/filesys/dirty_page_interval.go
index afa2755ed..f143fe3e4 100644
--- a/weed/filesys/dirty_page_interval.go
+++ b/weed/filesys/dirty_page_interval.go
@@ -3,6 +3,8 @@ package filesys
import (
"bytes"
"io"
+
+ "github.com/chrislusf/seaweedfs/weed/util"
)
type IntervalNode struct {
@@ -200,10 +202,13 @@ func (c *ContinuousIntervals) ReadDataAt(data []byte, startOffset int64) (maxSto
func (l *IntervalLinkedList) ToReader() io.Reader {
var readers []io.Reader
t := l.Head
- readers = append(readers, bytes.NewReader(t.Data))
+ readers = append(readers, util.NewBytesReader(t.Data))
for t.Next != nil {
t = t.Next
readers = append(readers, bytes.NewReader(t.Data))
}
+ if len(readers) == 1 {
+ return readers[0]
+ }
return io.MultiReader(readers...)
}