From e54f6a5531df15fa2b94b7351b72c99eb42e70de Mon Sep 17 00:00:00 2001 From: sundapeng Date: Fri, 1 Dec 2023 09:41:46 +0000 Subject: [PATCH] fix memory leak --- 0005-cve-2023-34455.patch | 10 +-- 0006-fix-memory-leak.patch | 155 +++++++++++++++++++++++++++++++++++++ pulsar.spec | 6 +- 3 files changed, 165 insertions(+), 6 deletions(-) create mode 100644 0006-fix-memory-leak.patch diff --git a/0005-cve-2023-34455.patch b/0005-cve-2023-34455.patch index 9863ed1..d068c56 100644 --- a/0005-cve-2023-34455.patch +++ b/0005-cve-2023-34455.patch @@ -1,8 +1,8 @@ diff --git a/distribution/server/src/assemble/LICENSE.bin.txt b/distribution/server/src/assemble/LICENSE.bin.txt -index 1ce81c7344..ad93b3abef 100644 +index 9b4a65d400..885ab204a5 100644 --- a/distribution/server/src/assemble/LICENSE.bin.txt +++ b/distribution/server/src/assemble/LICENSE.bin.txt -@@ -526,7 +526,7 @@ The Apache Software License, Version 2.0 +@@ -529,7 +529,7 @@ The Apache Software License, Version 2.0 - org.apache.zookeeper-zookeeper-jute-3.6.3.jar - org.apache.zookeeper-zookeeper-prometheus-metrics-3.6.3.jar * Snappy Java @@ -12,7 +12,7 @@ index 1ce81c7344..ad93b3abef 100644 - com.google.http-client-google-http-client-jackson2-1.41.0.jar - com.google.http-client-google-http-client-gson-1.41.0.jar diff --git a/pom.xml b/pom.xml -index 69adebd4df..6ac97ee8e6 100644 +index 3fa8222bc5..fa629aeb7c 100644 --- a/pom.xml +++ b/pom.xml @@ -107,7 +107,7 @@ flexible messaging model and an intuitive client API. @@ -23,9 +23,9 @@ index 69adebd4df..6ac97ee8e6 100644 + 1.1.10.1 3.2.5 5.1.0 - 4.1.87.Final + 4.1.89.Final diff --git a/pulsar-sql/presto-distribution/LICENSE b/pulsar-sql/presto-distribution/LICENSE -index 4087b9e83e..434d65f990 100644 +index 6fa2572afb..ccfbd70877 100644 --- a/pulsar-sql/presto-distribution/LICENSE +++ b/pulsar-sql/presto-distribution/LICENSE @@ -457,7 +457,7 @@ The Apache Software License, Version 2.0 diff --git a/0006-fix-memory-leak.patch b/0006-fix-memory-leak.patch new file mode 100644 index 0000000..0d04bcd --- /dev/null +++ b/0006-fix-memory-leak.patch @@ -0,0 +1,155 @@ +diff --git a/buildtools/pom.xml b/buildtools/pom.xml +index f095709d2c..9dbbba70f9 100644 +--- a/buildtools/pom.xml ++++ b/buildtools/pom.xml +@@ -131,7 +131,7 @@ + + io.netty + netty-common +- 4.1.89.Final ++ 4.1.93.Final + test + + +diff --git a/distribution/server/src/assemble/LICENSE.bin.txt b/distribution/server/src/assemble/LICENSE.bin.txt +index 885ab204a5..a413803445 100644 +--- a/distribution/server/src/assemble/LICENSE.bin.txt ++++ b/distribution/server/src/assemble/LICENSE.bin.txt +@@ -352,34 +352,34 @@ The Apache Software License, Version 2.0 + - org.apache.commons-commons-compress-1.21.jar + - org.apache.commons-commons-lang3-3.11.jar + * Netty +- - io.netty-netty-buffer-4.1.89.Final.jar +- - io.netty-netty-codec-4.1.89.Final.jar +- - io.netty-netty-codec-dns-4.1.89.Final.jar +- - io.netty-netty-codec-http-4.1.89.Final.jar +- - io.netty-netty-codec-http2-4.1.89.Final.jar +- - io.netty-netty-codec-socks-4.1.89.Final.jar +- - io.netty-netty-codec-haproxy-4.1.89.Final.jar +- - io.netty-netty-common-4.1.89.Final.jar +- - io.netty-netty-handler-4.1.89.Final.jar +- - io.netty-netty-handler-proxy-4.1.89.Final.jar +- - io.netty-netty-resolver-4.1.89.Final.jar +- - io.netty-netty-resolver-dns-4.1.89.Final.jar +- - io.netty-netty-resolver-dns-classes-macos-4.1.89.Final.jar +- - io.netty-netty-resolver-dns-native-macos-4.1.89.Final-osx-aarch_64.jar +- - io.netty-netty-resolver-dns-native-macos-4.1.89.Final-osx-x86_64.jar +- - io.netty-netty-transport-4.1.89.Final.jar +- - io.netty-netty-transport-classes-epoll-4.1.89.Final.jar +- - io.netty-netty-transport-native-epoll-4.1.89.Final-linux-x86_64.jar +- - io.netty-netty-transport-native-epoll-4.1.89.Final.jar +- - io.netty-netty-transport-native-unix-common-4.1.89.Final.jar +- - io.netty-netty-transport-native-unix-common-4.1.89.Final-linux-x86_64.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final-linux-aarch_64.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final-linux-x86_64.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final-osx-aarch_64.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final-osx-x86_64.jar +- - io.netty-netty-tcnative-boringssl-static-2.0.56.Final-windows-x86_64.jar +- - io.netty-netty-tcnative-classes-2.0.56.Final.jar ++ - io.netty-netty-buffer-4.1.93.Final.jar ++ - io.netty-netty-codec-4.1.93.Final.jar ++ - io.netty-netty-codec-dns-4.1.93.Final.jar ++ - io.netty-netty-codec-http-4.1.93.Final.jar ++ - io.netty-netty-codec-http2-4.1.93.Final.jar ++ - io.netty-netty-codec-socks-4.1.93.Final.jar ++ - io.netty-netty-codec-haproxy-4.1.93.Final.jar ++ - io.netty-netty-common-4.1.93.Final.jar ++ - io.netty-netty-handler-4.1.93.Final.jar ++ - io.netty-netty-handler-proxy-4.1.93.Final.jar ++ - io.netty-netty-resolver-4.1.93.Final.jar ++ - io.netty-netty-resolver-dns-4.1.93.Final.jar ++ - io.netty-netty-resolver-dns-classes-macos-4.1.93.Final.jar ++ - io.netty-netty-resolver-dns-native-macos-4.1.93.Final-osx-aarch_64.jar ++ - io.netty-netty-resolver-dns-native-macos-4.1.93.Final-osx-x86_64.jar ++ - io.netty-netty-transport-4.1.93.Final.jar ++ - io.netty-netty-transport-classes-epoll-4.1.93.Final.jar ++ - io.netty-netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar ++ - io.netty-netty-transport-native-epoll-4.1.93.Final.jar ++ - io.netty-netty-transport-native-unix-common-4.1.93.Final.jar ++ - io.netty-netty-transport-native-unix-common-4.1.93.Final-linux-x86_64.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final-linux-aarch_64.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final-linux-x86_64.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final-osx-aarch_64.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final-osx-x86_64.jar ++ - io.netty-netty-tcnative-boringssl-static-2.0.61.Final-windows-x86_64.jar ++ - io.netty-netty-tcnative-classes-2.0.61.Final.jar + * Prometheus client + - io.prometheus-simpleclient-0.5.0.jar + - io.prometheus-simpleclient_common-0.5.0.jar +diff --git a/pom.xml b/pom.xml +index fa629aeb7c..0e841b4ab5 100644 +--- a/pom.xml ++++ b/pom.xml +@@ -110,8 +110,8 @@ flexible messaging model and an intuitive client API. + 1.1.10.1 + 3.2.5 + 5.1.0 +- 4.1.89.Final +- 0.0.18.Final ++ 4.1.93.Final ++ 0.0.21.Final + 9.4.48.v20220622 + 2.5.2 + 2.34 +diff --git a/pulsar-sql/presto-distribution/LICENSE b/pulsar-sql/presto-distribution/LICENSE +index ccfbd70877..dae80a80ec 100644 +--- a/pulsar-sql/presto-distribution/LICENSE ++++ b/pulsar-sql/presto-distribution/LICENSE +@@ -232,31 +232,31 @@ The Apache Software License, Version 2.0 + - commons-lang3-3.11.jar + * Netty + - netty-3.10.6.Final.jar +- - netty-buffer-4.1.89.Final.jar +- - netty-codec-4.1.89.Final.jar +- - netty-codec-dns-4.1.89.Final.jar +- - netty-codec-http-4.1.89.Final.jar +- - netty-codec-haproxy-4.1.89.Final.jar +- - netty-codec-socks-4.1.89.Final.jar +- - netty-handler-proxy-4.1.89.Final.jar +- - netty-common-4.1.89.Final.jar +- - netty-handler-4.1.89.Final.jar ++ - netty-buffer-4.1.93.Final.jar ++ - netty-codec-4.1.93.Final.jar ++ - netty-codec-dns-4.1.93.Final.jar ++ - netty-codec-http-4.1.93.Final.jar ++ - netty-codec-haproxy-4.1.93.Final.jar ++ - netty-codec-socks-4.1.93.Final.jar ++ - netty-handler-proxy-4.1.93.Final.jar ++ - netty-common-4.1.93.Final.jar ++ - netty-handler-4.1.93.Final.jar + - netty-reactive-streams-2.0.6.jar +- - netty-resolver-4.1.89.Final.jar +- - netty-resolver-dns-4.1.89.Final.jar +- - netty-tcnative-boringssl-static-2.0.56.Final.jar +- - netty-tcnative-boringssl-static-2.0.56.Final-linux-aarch_64.jar +- - netty-tcnative-boringssl-static-2.0.56.Final-linux-x86_64.jar +- - netty-tcnative-boringssl-static-2.0.56.Final-osx-aarch_64.jar +- - netty-tcnative-boringssl-static-2.0.56.Final-osx-x86_64.jar +- - netty-tcnative-boringssl-static-2.0.56.Final-windows-x86_64.jar +- - netty-tcnative-classes-2.0.56.Final.jar +- - netty-transport-4.1.89.Final.jar +- - netty-transport-classes-epoll-4.1.89.Final.jar +- - netty-transport-native-epoll-4.1.89.Final-linux-x86_64.jar +- - netty-transport-native-unix-common-4.1.89.Final.jar +- - netty-transport-native-unix-common-4.1.89.Final-linux-x86_64.jar +- - netty-codec-http2-4.1.87.Final.jar ++ - netty-resolver-4.1.93.Final.jar ++ - netty-resolver-dns-4.1.93.Final.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final-linux-aarch_64.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final-linux-x86_64.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final-osx-aarch_64.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final-osx-x86_64.jar ++ - netty-tcnative-boringssl-static-2.0.61.Final-windows-x86_64.jar ++ - netty-tcnative-classes-2.0.61.Final.jar ++ - netty-transport-4.1.93.Final.jar ++ - netty-transport-classes-epoll-4.1.93.Final.jar ++ - netty-transport-native-epoll-4.1.93.Final-linux-x86_64.jar ++ - netty-transport-native-unix-common-4.1.93.Final.jar ++ - netty-transport-native-unix-common-4.1.93.Final-linux-x86_64.jar ++ - netty-codec-http2-4.1.87.Final.jar + * GRPC + - grpc-api-1.45.1.jar + - grpc-context-1.45.1.jar diff --git a/pulsar.spec b/pulsar.spec index 3dd940a..f7d1e26 100644 --- a/pulsar.spec +++ b/pulsar.spec @@ -1,6 +1,6 @@ %define debug_package %{nil} %define pulsar_ver 2.10.4 -%define pkg_ver 5 +%define pkg_ver 6 %define _prefix /opt/pulsar Summary: Cloud-Native, Distributed Messaging and Streaming Name: pulsar @@ -15,6 +15,7 @@ Patch0002: 0002-resolve-cve-2023-32697.patch Patch0003: 0003-CVE-2023-2976.patch Patch0004: 0004-netty-to-4.1.89.patch Patch0005: 0005-cve-2023-34455.patch +Patch0006: 0006-fix-memory-leak.patch BuildRoot: /root/rpmbuild/BUILDROOT/ BuildRequires: java-1.8.0-openjdk-devel,maven,systemd Requires: java-1.8.0-openjdk,systemd @@ -32,6 +33,7 @@ Pulsar is a distributed pub-sub messaging platform with a very flexible messagin %patch0003 -p1 %patch0004 -p1 %patch0005 -p1 +%patch0006 -p1 %build mvn clean install -Pcore-modules,-main -DskipTests @@ -57,6 +59,8 @@ getent passwd pulsar >/dev/null || useradd -r -g pulsar -d / -s /sbin/nologin pu exit 0 %changelog +* Fri Dec 1 2023 Dapeng Sun - 2.10.4-6 +- fix memory leak * Fri Dec 1 2023 Dapeng Sun - 2.10.4-5 - resolve CVE-2023-34455 * Fri Dec 1 2023 Dapeng Sun - 2.10.4-4 -- Gitee