Skip to content

Commit

Permalink
[fix](compress) data decompress failed while max_len equals 8M (#33456)…
Browse files Browse the repository at this point in the history
… (#33514)

* fix data decompress failed while max_len equals MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE

* update code format error
  • Loading branch information
cambyzju authored Apr 11, 2024
1 parent a3009fb commit bd54a04
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions be/src/util/block_compression.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ class Lz4BlockCompression : public BlockCompressionCodec {
compressed_buf.data = reinterpret_cast<char*>(output->data());
compressed_buf.size = max_len;
} else {
// reuse context buffer if max_len < MAX_COMPRESSION_BUFFER_FOR_REUSE
// reuse context buffer if max_len <= MAX_COMPRESSION_BUFFER_FOR_REUSE
context->buffer.resize(max_len);
compressed_buf.data = reinterpret_cast<char*>(context->buffer.data());
compressed_buf.size = max_len;
Expand All @@ -113,7 +113,7 @@ class Lz4BlockCompression : public BlockCompressionCodec {
compressed_buf.size);
}
output->resize(compressed_len);
if (max_len < MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
if (max_len <= MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
output->assign_copy(reinterpret_cast<uint8_t*>(compressed_buf.data), compressed_len);
}
return Status::OK();
Expand Down Expand Up @@ -237,7 +237,7 @@ class Lz4fBlockCompression : public BlockCompressionCodec {
compressed_buf.data = reinterpret_cast<char*>(output->data());
compressed_buf.size = max_len;
} else {
// reuse context buffer if max_len < MAX_COMPRESSION_BUFFER_FOR_REUSE
// reuse context buffer if max_len <= MAX_COMPRESSION_BUFFER_FOR_REUSE
context->buffer.resize(max_len);
compressed_buf.data = reinterpret_cast<char*>(context->buffer.data());
compressed_buf.size = max_len;
Expand Down Expand Up @@ -271,7 +271,7 @@ class Lz4fBlockCompression : public BlockCompressionCodec {
}
offset += wbytes;
output->resize(offset);
if (max_len < MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
if (max_len <= MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
output->assign_copy(reinterpret_cast<uint8_t*>(compressed_buf.data), offset);
}

Expand Down Expand Up @@ -637,7 +637,7 @@ class ZstdBlockCompression : public BlockCompressionCodec {
compressed_buf.data = reinterpret_cast<char*>(output->data());
compressed_buf.size = max_len;
} else {
// reuse context buffer if max_len < MAX_COMPRESSION_BUFFER_FOR_REUSE
// reuse context buffer if max_len <= MAX_COMPRESSION_BUFFER_FOR_REUSE
context->buffer.resize(max_len);
compressed_buf.data = reinterpret_cast<char*>(context->buffer.data());
compressed_buf.size = max_len;
Expand Down Expand Up @@ -688,7 +688,7 @@ class ZstdBlockCompression : public BlockCompressionCodec {

// set compressed size for caller
output->resize(out_buf.pos);
if (max_len < MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
if (max_len <= MAX_COMPRESSION_BUFFER_SIZE_FOR_REUSE) {
output->assign_copy(reinterpret_cast<uint8_t*>(compressed_buf.data), out_buf.pos);
}

Expand Down

0 comments on commit bd54a04

Please sign in to comment.