You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@kafka.apache.org by ij...@apache.org on 2021/02/14 16:19:34 UTC
[kafka] 01/02: MINOR: Update zstd and use classes with no
finalizers (#10120)
This is an automated email from the ASF dual-hosted git repository.
ijuma pushed a commit to branch 2.8
in repository https://gitbox.apache.org/repos/asf/kafka.git
commit f53cfa3bb3e15151fb8fac3a4cd31067f149b0d1
Author: Ismael Juma <is...@juma.me.uk>
AuthorDate: Sat Feb 13 07:28:17 2021 -0800
MINOR: Update zstd and use classes with no finalizers (#10120)
The updated version includes a few optimizations that benefit us:
* Classes with no finalizers (opt-in) that have better GC behavior
* `InputStream.skip()` implementation that uses cached buffers
* Minor buffer recycler optimizations (used for OutputStream only)
Full diff:
https://github.com/luben/zstd-jni/compare/v1.4.8-2...v1.4.8-4
Reviewers: Chia-Ping Tsai <ch...@gmail.com>
---
.../src/main/java/org/apache/kafka/common/record/CompressionType.java | 4 ++--
gradle/dependencies.gradle | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/clients/src/main/java/org/apache/kafka/common/record/CompressionType.java b/clients/src/main/java/org/apache/kafka/common/record/CompressionType.java
index 19a3f8e..c2694ca 100644
--- a/clients/src/main/java/org/apache/kafka/common/record/CompressionType.java
+++ b/clients/src/main/java/org/apache/kafka/common/record/CompressionType.java
@@ -226,9 +226,9 @@ public enum CompressionType {
private static class ZstdConstructors {
// It's ok to reference `BufferPool` since it doesn't load any native libraries
- static final MethodHandle INPUT = findConstructor("com.github.luben.zstd.ZstdInputStream",
+ static final MethodHandle INPUT = findConstructor("com.github.luben.zstd.ZstdInputStreamNoFinalizer",
MethodType.methodType(void.class, InputStream.class, BufferPool.class));
- static final MethodHandle OUTPUT = findConstructor("com.github.luben.zstd.ZstdOutputStream",
+ static final MethodHandle OUTPUT = findConstructor("com.github.luben.zstd.ZstdOutputStreamNoFinalizer",
MethodType.methodType(void.class, OutputStream.class, BufferPool.class));
}
diff --git a/gradle/dependencies.gradle b/gradle/dependencies.gradle
index 954a495..9340e3c 100644
--- a/gradle/dependencies.gradle
+++ b/gradle/dependencies.gradle
@@ -118,7 +118,7 @@ versions += [
testRetryPlugin: "1.2.0",
zinc: "1.3.5",
zookeeper: "3.5.9",
- zstd: "1.4.8-2"
+ zstd: "1.4.8-4"
]
libs += [
activation: "javax.activation:activation:$versions.activation",