@@ -22,7 +22,7 @@ type messageSetReader struct {
22
22
// This is used to detect truncation of the response.
23
23
lengthRemain int
24
24
25
- decompressed bytes.Buffer
25
+ decompressed * bytes.Buffer
26
26
}
27
27
28
28
type readerStack struct {
@@ -87,6 +87,7 @@ func newMessageSetReader(reader *bufio.Reader, remain int) (*messageSetReader, e
87
87
reader : reader ,
88
88
remain : remain ,
89
89
},
90
+ decompressed : acquireBuffer (),
90
91
}
91
92
err := res .readHeader ()
92
93
return res , err
@@ -199,7 +200,7 @@ func (r *messageSetReader) readMessageV1(min int64, key readBytesFunc, val readB
199
200
// Allocate a buffer of size 0, which gets capped at 16 bytes
200
201
// by the bufio package. We are already reading buffered data
201
202
// here, no need to reserve another 4KB buffer.
202
- reader : bufio .NewReaderSize (& r .decompressed , 0 ),
203
+ reader : bufio .NewReaderSize (r .decompressed , 0 ),
203
204
remain : r .decompressed .Len (),
204
205
base : offset ,
205
206
parent : r .readerStack ,
@@ -278,7 +279,7 @@ func (r *messageSetReader) readMessageV2(_ int64, key readBytesFunc, val readByt
278
279
}
279
280
r .remain -= batchRemain - int (limitReader .N )
280
281
r .readerStack = & readerStack {
281
- reader : bufio .NewReaderSize (& r .decompressed , 0 ), // the new stack reads from the decompressed buffer
282
+ reader : bufio .NewReaderSize (r .decompressed , 0 ), // the new stack reads from the decompressed buffer
282
283
remain : r .decompressed .Len (),
283
284
base : - 1 , // base is unused here
284
285
parent : r .readerStack ,
0 commit comments