diff --git a/objectnode/fs_volume.go b/objectnode/fs_volume.go index 4316a78b9..24a545311 100644 --- a/objectnode/fs_volume.go +++ b/objectnode/fs_volume.go @@ -1559,8 +1559,8 @@ func (v *Volume) readEbs(inode, inodeSize uint64, path string, writer io.Writer, reader := v.getEbsReader(inode) var n int var rest uint64 - tmp := buf.ReadBufPool.Get().([]byte) - defer buf.ReadBufPool.Put(tmp) // nolint: staticcheck + tmp := buf.ClodVolReaderBufPool.Get().([]byte) + defer buf.ClodVolReaderBufPool.Put(tmp) for { if rest = upper - offset; rest <= 0 { diff --git a/sdk/data/blobstore/writer.go b/sdk/data/blobstore/writer.go index c4b0aa0bd..54adbca3f 100644 --- a/sdk/data/blobstore/writer.go +++ b/sdk/data/blobstore/writer.go @@ -207,11 +207,11 @@ func (writer *Writer) cacheLevel2(wSlice *rwSlice) { func (writer *Writer) WriteFromReader(ctx context.Context, reader io.Reader, h hash.Hash) (size uint64, err error) { var ( - tmp = buf.ReadBufPool.Get().([]byte) + tmp = buf.ClodVolWriteBufPool.Get().([]byte) exec = NewExecutor(writer.wConcurrency) leftToWrite int ) - defer buf.ReadBufPool.Put(tmp) // nolint: staticcheck + defer buf.ClodVolWriteBufPool.Put(tmp) writer.fileOffset = 0 writer.err = make(chan *wSliceErr) diff --git a/util/buf/buffer_pool.go b/util/buf/buffer_pool.go index 95abc0233..443dbf0c1 100644 --- a/util/buf/buffer_pool.go +++ b/util/buf/buffer_pool.go @@ -15,12 +15,20 @@ const ( MinBufferChanSize = 16 ) -var ReadBufPool = sync.Pool{ - New: func() interface{} { - b := make([]byte, 32*1024) - return b - }, -} +var ( + ClodVolWriteBufPool = sync.Pool{ + New: func() interface{} { + b := make([]byte, 32*1024) + return b + }, + } + ClodVolReaderBufPool = sync.Pool{ + New: func() interface{} { + b := make([]byte, 1024*1024) + return b + }, + } +) const ( BufferTypeHeader = 0