We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent c65a8ac commit 72a4c72Copy full SHA for 72a4c72
go.sum
@@ -5,7 +5,6 @@ github.com/OneOfOne/xxhash v1.2.2/go.mod h1:HSdplMjZKSmBqAxg5vPj2TmRDmfkzw+cTzAE
5
github.com/armon/consul-api v0.0.0-20180202201655-eb2c6b5be1b6/go.mod h1:grANhF5doyWs3UAsr3K4I6qtAmlQcZDesFNEHPZAzj8=
6
github.com/cespare/xxhash v1.1.0 h1:a6HrQnmkObjyL+Gs60czilIUGqrzKutQD6XZog3p+ko=
7
github.com/cespare/xxhash v1.1.0/go.mod h1:XrSqR1VqqWfGrhpAt58auRo0WTKS1nRRg3ghfAqPWnc=
8
-github.com/cespare/xxhash/v2 v2.1.1 h1:6MnRN8NT7+YBpUIWxHtefFZOKTAPgGjpQSxqLNn0+qY=
9
github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
10
github.com/cespare/xxhash/v2 v2.1.2 h1:YRXhKfTDauu4ajMg1TPgFO5jnlC2HCbmLXMcTG5cbYE=
11
github.com/cespare/xxhash/v2 v2.1.2/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
table/builder.go
@@ -156,6 +156,16 @@ func NewTableBuilder(opts Options) *Builder {
156
return b
157
}
158
159
+func maxEncodedLen(ctype options.CompressionType, sz int) int {
160
+ switch ctype {
161
+ case options.Snappy:
162
+ return snappy.MaxEncodedLen(sz)
163
+ case options.ZSTD:
164
+ return y.ZSTDCompressBound(sz)
165
+ }
166
+ return sz
167
+}
168
+
169
func (b *Builder) handleBlock() {
170
defer b.wg.Done()
171
@@ -178,7 +188,7 @@ func (b *Builder) handleBlock() {
178
188
// BlockBuf should always less than or equal to allocated space. If the blockBuf is greater
179
189
// than allocated space that means the data from this block cannot be stored in its
180
190
// existing location.
181
- allocatedSpace := (item.end) + padding + 1
191
+ allocatedSpace := maxEncodedLen(b.opts.Compression, (item.end)) + padding + 1
182
192
y.AssertTrue(len(blockBuf) <= allocatedSpace)
183
193
184
194
// blockBuf was allocated on allocator. So, we don't need to copy it over.
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル
0 commit comments