Account for user configured small io write buffer. (#2092)

This commit is contained in:
mmukhi
2018-05-29 14:11:52 -07:00
committed by GitHub
parent bfe419798a
commit 590da37e2d

View File

@ -531,10 +531,14 @@ func (w *bufWriter) Write(b []byte) (n int, err error) {
if w.err != nil {
return 0, w.err
}
n = copy(w.buf[w.offset:], b)
w.offset += n
if w.offset >= w.batchSize {
err = w.Flush()
for len(b) > 0 {
nn := copy(w.buf[w.offset:], b)
b = b[nn:]
w.offset += nn
n += nn
if w.offset >= w.batchSize {
err = w.Flush()
}
}
return n, err
}