This is an automated email from the ASF dual-hosted git repository.
lzljs3620320 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/paimon.git
The following commit(s) were added to refs/heads/master by this push:
new 018893574 [core] Avoid loading zstd-jni collisions (#4198)
018893574 is described below
commit 018893574c2535310ca69c5302265c5b2d2d6735
Author: Harvey Yue <[email protected]>
AuthorDate: Tue Sep 17 16:50:37 2024 +0800
[core] Avoid loading zstd-jni collisions (#4198)
---
.../main/java/org/apache/paimon/compression/ZstdBlockCompressor.java | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git
a/paimon-common/src/main/java/org/apache/paimon/compression/ZstdBlockCompressor.java
b/paimon-common/src/main/java/org/apache/paimon/compression/ZstdBlockCompressor.java
index 1f52e0813..a8b2c5e3b 100644
---
a/paimon-common/src/main/java/org/apache/paimon/compression/ZstdBlockCompressor.java
+++
b/paimon-common/src/main/java/org/apache/paimon/compression/ZstdBlockCompressor.java
@@ -21,7 +21,6 @@ package org.apache.paimon.compression;
import com.github.luben.zstd.RecyclingBufferPool;
import com.github.luben.zstd.ZstdOutputStream;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.OutputStream;
@@ -56,8 +55,10 @@ public class ZstdBlockCompressor implements BlockCompressor {
public int compress(byte[] src, int srcOff, int srcLen, byte[] dst, int
dstOff)
throws BufferCompressionException {
ByteArrayOutputStream stream = new ByteArrayOutputStream(dst, dstOff);
+ // Using two-argument constructors to avoid zstd-jni collisions
try (ZstdOutputStream zstdStream =
- new ZstdOutputStream(stream, RecyclingBufferPool.INSTANCE,
level)) {
+ new ZstdOutputStream(stream, RecyclingBufferPool.INSTANCE)) {
+ zstdStream.setLevel(level);
zstdStream.setWorkers(0);
zstdStream.write(src, srcOff, srcLen);
} catch (IOException e) {