This is an automated email from the ASF dual-hosted git repository. lhotari pushed a commit to branch branch-3.0 in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/branch-3.0 by this push: new a982d7b2efb [improve][misc] Upgrade to Netty 4.1.111.Final and switch to use grpc-netty-shaded (#22892) a982d7b2efb is described below commit a982d7b2efb3aad456c9c0ec921c8f7bbcb48ab3 Author: Lari Hotari <lhot...@users.noreply.github.com> AuthorDate: Thu Jun 13 01:24:04 2024 +0300 [improve][misc] Upgrade to Netty 4.1.111.Final and switch to use grpc-netty-shaded (#22892) (cherry picked from commit 75d7e557d84bf2cca2ec791dfe8479b8a6df7875) --- buildtools/pom.xml | 2 +- distribution/server/pom.xml | 13 ++ distribution/server/src/assemble/LICENSE.bin.txt | 50 +++--- distribution/shell/src/assemble/LICENSE.bin.txt | 40 ++--- jetcd-core-shaded/pom.xml | 187 +++++++++++++++++++++ pom.xml | 60 ++++++- pulsar-broker/pom.xml | 12 ++ pulsar-functions/instance/pom.xml | 9 +- pulsar-metadata/pom.xml | 11 +- .../pulsar/metadata/impl/EtcdMetadataStore.java | 6 +- pulsar-sql/presto-distribution/LICENSE | 53 +++--- .../presto-distribution/src/assembly/assembly.xml | 3 + .../presto-pulsar-plugin/src/assembly/assembly.xml | 3 + src/check-binary-license.sh | 2 +- 14 files changed, 360 insertions(+), 91 deletions(-) diff --git a/buildtools/pom.xml b/buildtools/pom.xml index 3cec25625cf..e872e861cbf 100644 --- a/buildtools/pom.xml +++ b/buildtools/pom.xml @@ -47,7 +47,7 @@ <license-maven-plugin.version>4.1</license-maven-plugin.version> <puppycrawl.checkstyle.version>10.14.2</puppycrawl.checkstyle.version> <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version> - <netty.version>4.1.108.Final</netty.version> + <netty.version>4.1.111.Final</netty.version> <guice.version>4.2.3</guice.version> <guava.version>32.1.1-jre</guava.version> <ant.version>1.10.12</ant.version> diff --git a/distribution/server/pom.xml b/distribution/server/pom.xml index 27f95e0b46b..136eda902a2 100644 --- a/distribution/server/pom.xml +++ b/distribution/server/pom.xml @@ -40,6 +40,19 @@ <version>${project.version}</version> </dependency> + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>pulsar-metadata</artifactId> + <version>${project.version}</version> + </dependency> + + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>jetcd-core-shaded</artifactId> + <version>${project.version}</version> + <classifier>shaded</classifier> + </dependency> + <dependency> <groupId>${project.groupId}</groupId> <artifactId>pulsar-proxy</artifactId> diff --git a/distribution/server/src/assemble/LICENSE.bin.txt b/distribution/server/src/assemble/LICENSE.bin.txt index 6de77c7beab..9d6975e4a43 100644 --- a/distribution/server/src/assemble/LICENSE.bin.txt +++ b/distribution/server/src/assemble/LICENSE.bin.txt @@ -289,27 +289,27 @@ The Apache Software License, Version 2.0 - org.apache.commons-commons-lang3-3.11.jar - org.apache.commons-commons-text-1.10.0.jar * Netty - - io.netty-netty-buffer-4.1.108.Final.jar - - io.netty-netty-codec-4.1.108.Final.jar - - io.netty-netty-codec-dns-4.1.108.Final.jar - - io.netty-netty-codec-http-4.1.108.Final.jar - - io.netty-netty-codec-http2-4.1.108.Final.jar - - io.netty-netty-codec-socks-4.1.108.Final.jar - - io.netty-netty-codec-haproxy-4.1.108.Final.jar - - io.netty-netty-common-4.1.108.Final.jar - - io.netty-netty-handler-4.1.108.Final.jar - - io.netty-netty-handler-proxy-4.1.108.Final.jar - - io.netty-netty-resolver-4.1.108.Final.jar - - io.netty-netty-resolver-dns-4.1.108.Final.jar - - io.netty-netty-resolver-dns-classes-macos-4.1.108.Final.jar - - io.netty-netty-resolver-dns-native-macos-4.1.108.Final-osx-aarch_64.jar - - io.netty-netty-resolver-dns-native-macos-4.1.108.Final-osx-x86_64.jar - - io.netty-netty-transport-4.1.108.Final.jar - - io.netty-netty-transport-classes-epoll-4.1.108.Final.jar - - io.netty-netty-transport-native-epoll-4.1.108.Final-linux-aarch_64.jar - - io.netty-netty-transport-native-epoll-4.1.108.Final-linux-x86_64.jar - - io.netty-netty-transport-native-unix-common-4.1.108.Final.jar - - io.netty-netty-transport-native-unix-common-4.1.108.Final-linux-x86_64.jar + - io.netty-netty-buffer-4.1.111.Final.jar + - io.netty-netty-codec-4.1.111.Final.jar + - io.netty-netty-codec-dns-4.1.111.Final.jar + - io.netty-netty-codec-http-4.1.111.Final.jar + - io.netty-netty-codec-http2-4.1.111.Final.jar + - io.netty-netty-codec-socks-4.1.111.Final.jar + - io.netty-netty-codec-haproxy-4.1.111.Final.jar + - io.netty-netty-common-4.1.111.Final.jar + - io.netty-netty-handler-4.1.111.Final.jar + - io.netty-netty-handler-proxy-4.1.111.Final.jar + - io.netty-netty-resolver-4.1.111.Final.jar + - io.netty-netty-resolver-dns-4.1.111.Final.jar + - io.netty-netty-resolver-dns-classes-macos-4.1.111.Final.jar + - io.netty-netty-resolver-dns-native-macos-4.1.111.Final-osx-aarch_64.jar + - io.netty-netty-resolver-dns-native-macos-4.1.111.Final-osx-x86_64.jar + - io.netty-netty-transport-4.1.111.Final.jar + - io.netty-netty-transport-classes-epoll-4.1.111.Final.jar + - io.netty-netty-transport-native-epoll-4.1.111.Final-linux-aarch_64.jar + - io.netty-netty-transport-native-epoll-4.1.111.Final-linux-x86_64.jar + - io.netty-netty-transport-native-unix-common-4.1.111.Final.jar + - io.netty-netty-transport-native-unix-common-4.1.111.Final-linux-x86_64.jar - io.netty-netty-tcnative-boringssl-static-2.0.65.Final.jar - io.netty-netty-tcnative-boringssl-static-2.0.65.Final-linux-aarch_64.jar - io.netty-netty-tcnative-boringssl-static-2.0.65.Final-linux-x86_64.jar @@ -424,7 +424,6 @@ The Apache Software License, Version 2.0 - io.grpc-grpc-auth-1.55.3.jar - io.grpc-grpc-context-1.55.3.jar - io.grpc-grpc-core-1.55.3.jar - - io.grpc-grpc-netty-1.55.3.jar - io.grpc-grpc-protobuf-1.55.3.jar - io.grpc-grpc-protobuf-lite-1.55.3.jar - io.grpc-grpc-stub-1.55.3.jar @@ -483,7 +482,6 @@ The Apache Software License, Version 2.0 - io.vertx-vertx-core-4.5.8.jar - io.vertx-vertx-web-4.5.8.jar - io.vertx-vertx-web-common-4.5.8.jar - - io.vertx-vertx-grpc-4.5.8.jar * Apache ZooKeeper - org.apache.zookeeper-zookeeper-3.9.2.jar - org.apache.zookeeper-zookeeper-jute-3.9.2.jar @@ -495,11 +493,7 @@ The Apache Software License, Version 2.0 - com.google.http-client-google-http-client-1.41.0.jar - com.google.auto.value-auto-value-annotations-1.9.jar - com.google.re2j-re2j-1.6.jar - * Jetcd - - io.etcd-jetcd-api-0.7.7.jar - - io.etcd-jetcd-common-0.7.7.jar - - io.etcd-jetcd-core-0.7.7.jar - - io.etcd-jetcd-grpc-0.7.7.jar + * Jetcd - shaded * IPAddress - com.github.seancfoley-ipaddress-5.5.0.jar * RxJava diff --git a/distribution/shell/src/assemble/LICENSE.bin.txt b/distribution/shell/src/assemble/LICENSE.bin.txt index 125d08ca436..dd1ff70cad6 100644 --- a/distribution/shell/src/assemble/LICENSE.bin.txt +++ b/distribution/shell/src/assemble/LICENSE.bin.txt @@ -348,23 +348,23 @@ The Apache Software License, Version 2.0 - commons-text-1.10.0.jar - commons-compress-1.26.0.jar * Netty - - netty-buffer-4.1.108.Final.jar - - netty-codec-4.1.108.Final.jar - - netty-codec-dns-4.1.108.Final.jar - - netty-codec-http-4.1.108.Final.jar - - netty-codec-socks-4.1.108.Final.jar - - netty-codec-haproxy-4.1.108.Final.jar - - netty-common-4.1.108.Final.jar - - netty-handler-4.1.108.Final.jar - - netty-handler-proxy-4.1.108.Final.jar - - netty-resolver-4.1.108.Final.jar - - netty-resolver-dns-4.1.108.Final.jar - - netty-transport-4.1.108.Final.jar - - netty-transport-classes-epoll-4.1.108.Final.jar - - netty-transport-native-epoll-4.1.108.Final-linux-aarch_64.jar - - netty-transport-native-epoll-4.1.108.Final-linux-x86_64.jar - - netty-transport-native-unix-common-4.1.108.Final.jar - - netty-transport-native-unix-common-4.1.108.Final-linux-x86_64.jar + - netty-buffer-4.1.111.Final.jar + - netty-codec-4.1.111.Final.jar + - netty-codec-dns-4.1.111.Final.jar + - netty-codec-http-4.1.111.Final.jar + - netty-codec-socks-4.1.111.Final.jar + - netty-codec-haproxy-4.1.111.Final.jar + - netty-common-4.1.111.Final.jar + - netty-handler-4.1.111.Final.jar + - netty-handler-proxy-4.1.111.Final.jar + - netty-resolver-4.1.111.Final.jar + - netty-resolver-dns-4.1.111.Final.jar + - netty-transport-4.1.111.Final.jar + - netty-transport-classes-epoll-4.1.111.Final.jar + - netty-transport-native-epoll-4.1.111.Final-linux-aarch_64.jar + - netty-transport-native-epoll-4.1.111.Final-linux-x86_64.jar + - netty-transport-native-unix-common-4.1.111.Final.jar + - netty-transport-native-unix-common-4.1.111.Final-linux-x86_64.jar - netty-tcnative-boringssl-static-2.0.65.Final.jar - netty-tcnative-boringssl-static-2.0.65.Final-linux-aarch_64.jar - netty-tcnative-boringssl-static-2.0.65.Final-linux-x86_64.jar @@ -375,9 +375,9 @@ The Apache Software License, Version 2.0 - netty-incubator-transport-classes-io_uring-0.0.21.Final.jar - netty-incubator-transport-native-io_uring-0.0.21.Final-linux-aarch_64.jar - netty-incubator-transport-native-io_uring-0.0.21.Final-linux-x86_64.jar - - netty-resolver-dns-classes-macos-4.1.108.Final.jar - - netty-resolver-dns-native-macos-4.1.108.Final-osx-aarch_64.jar - - netty-resolver-dns-native-macos-4.1.108.Final-osx-x86_64.jar + - netty-resolver-dns-classes-macos-4.1.111.Final.jar + - netty-resolver-dns-native-macos-4.1.111.Final-osx-aarch_64.jar + - netty-resolver-dns-native-macos-4.1.111.Final-osx-x86_64.jar * Prometheus client - simpleclient-0.16.0.jar - simpleclient_log4j2-0.16.0.jar diff --git a/jetcd-core-shaded/pom.xml b/jetcd-core-shaded/pom.xml new file mode 100644 index 00000000000..18dabf28b87 --- /dev/null +++ b/jetcd-core-shaded/pom.xml @@ -0,0 +1,187 @@ +<?xml version="1.0"?> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one + or more contributor license agreements. See the NOTICE file + distributed with this work for additional information + regarding copyright ownership. The ASF licenses this file + to you under the Apache License, Version 2.0 (the + "License"); you may not use this file except in compliance + with the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, + software distributed under the License is distributed on an + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + KIND, either express or implied. See the License for the + specific language governing permissions and limitations + under the License. + +--> +<project + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.pulsar</groupId> + <artifactId>pulsar</artifactId> + <version>3.0.6-SNAPSHOT</version> + </parent> + + <artifactId>jetcd-core-shaded</artifactId> + <name>Apache Pulsar :: jetcd-core shaded</name> + + <dependencies> + <dependency> + <groupId>io.etcd</groupId> + <artifactId>jetcd-core</artifactId> + <exclusions> + <exclusion> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty</artifactId> + </exclusion> + <exclusion> + <groupId>io.netty</groupId> + <artifactId>*</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + </dependency> + <!-- add transient dependencies for jetcd libraries, this is necessary for IntelliJ support --> + <dependency> + <groupId>dev.failsafe</groupId> + <artifactId>failsafe</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-protobuf</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-stub</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-grpclb</artifactId> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-util</artifactId> + </dependency> + </dependencies> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-shade-plugin</artifactId> + <executions> + <execution> + <phase>package</phase> + <goals> + <goal>shade</goal> + </goals> + <configuration> + <createDependencyReducedPom>true</createDependencyReducedPom> + <promoteTransitiveDependencies>true</promoteTransitiveDependencies> + <minimizeJar>false</minimizeJar> + <artifactSet> + <includes> + <include>io.etcd:*</include> + <include>io.vertx:*</include> + </includes> + </artifactSet> + <relocations> + <!-- relocate vertx packages since they will be transformed to use grpc-netty-shaded packages --> + <relocation> + <pattern>io.vertx</pattern> + <shadedPattern>org.apache.pulsar.jetcd.shaded.io.vertx</shadedPattern> + </relocation> + <!-- relocate to use grpc-netty-shaded packages --> + <relocation> + <pattern>io.grpc.netty</pattern> + <shadedPattern>io.grpc.netty.shaded.io.grpc.netty</shadedPattern> + </relocation> + <!-- relocate to use grpc-netty-shaded packages --> + <relocation> + <pattern>io.netty</pattern> + <shadedPattern>io.grpc.netty.shaded.io.netty</shadedPattern> + </relocation> + </relocations> + <filters> + <filter> + <artifact>*:*</artifact> + <excludes> + <exclude>META-INF/*.SF</exclude> + <exclude>META-INF/*.DSA</exclude> + <exclude>META-INF/*.RSA</exclude> + <exclude>META-INF/maven/${project.groupId}/${project.artifactId}/pom.xml</exclude> + </excludes> + </filter> + </filters> + <transformers> + <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/> + <transformer implementation="org.apache.maven.plugins.shade.resource.PluginXmlResourceTransformer"/> + <transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer"> + <resource>META-INF/maven/${project.groupId}/${project.artifactId}/pom.xml</resource> + <file>${project.basedir}/dependency-reduced-pom.xml</file> + </transformer> + </transformers> + <!-- required for IntelliJ support --> + <shadedArtifactAttached>true</shadedArtifactAttached> + <shadedClassifierName>shaded</shadedClassifierName> + </configuration> + </execution> + </executions> + </plugin> + <!-- required for IntelliJ support, for some reason shadedArtifactAttached isn't sufficient alone --> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <executions> + <execution> + <id>attach-shaded-jar</id> + <phase>package</phase> + <goals> + <goal>attach-artifact</goal> + </goals> + <configuration> + <artifacts> + <artifact> + <file>${project.build.directory}/${project.artifactId}-${project.version}-shaded.jar</file> + <type>jar</type> + <classifier>shaded</classifier> + </artifact> + </artifacts> + </configuration> + </execution> + </executions> + </plugin> + <!-- required for running tests in subproject --> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-antrun-plugin</artifactId> + <version>${maven-antrun-plugin.version}</version> + <executions> + <execution> + <id>unpack-shaded-jar</id> + <phase>package</phase> + <goals> + <goal>run</goal> + </goals> + <configuration> + <target> + <unzip src="${project.build.directory}/${project.artifactId}-${project.version}-shaded.jar" + dest="${project.build.outputDirectory}" + overwrite="true" /> + </target> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> +</project> diff --git a/pom.xml b/pom.xml index 9ac151670f3..01c63b2f97f 100644 --- a/pom.xml +++ b/pom.xml @@ -143,7 +143,7 @@ flexible messaging model and an intuitive client API.</description> <snappy.version>1.1.10.5</snappy.version> <!-- ZooKeeper server --> <dropwizardmetrics.version>4.1.12.1</dropwizardmetrics.version> <!-- ZooKeeper server --> <curator.version>5.1.0</curator.version> - <netty.version>4.1.108.Final</netty.version> + <netty.version>4.1.111.Final</netty.version> <netty-iouring.version>0.0.21.Final</netty-iouring.version> <jetty.version>9.4.54.v20240208</jetty.version> <conscrypt.version>2.5.2</conscrypt.version> @@ -292,6 +292,7 @@ flexible messaging model and an intuitive client API.</description> <maven-modernizer-plugin.version>2.3.0</maven-modernizer-plugin.version> <maven-shade-plugin>3.4.1</maven-shade-plugin> <maven-antrun-plugin.version>3.1.0</maven-antrun-plugin.version> + <build-helper-maven-plugin.version>3.6.0</build-helper-maven-plugin.version> <properties-maven-plugin.version>1.1.0</properties-maven-plugin.version> <nifi-nar-maven-plugin.version>1.5.0</nifi-nar-maven-plugin.version> <maven-checkstyle-plugin.version>3.1.2</maven-checkstyle-plugin.version> @@ -572,6 +573,10 @@ flexible messaging model and an intuitive client API.</description> <artifactId>jose4j</artifactId> <groupId>org.bitbucket.b_c</groupId> </exclusion> + <exclusion> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty</artifactId> + </exclusion> </exclusions> </dependency> @@ -1039,12 +1044,51 @@ flexible messaging model and an intuitive client API.</description> <groupId>io.etcd</groupId> <artifactId>jetcd-core</artifactId> <version>${jetcd.version}</version> + <exclusions> + <exclusion> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty</artifactId> + </exclusion> + </exclusions> </dependency> - <dependency> <groupId>io.etcd</groupId> <artifactId>jetcd-test</artifactId> <version>${jetcd.version}</version> + <exclusions> + <exclusion> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty</artifactId> + </exclusion> + <exclusion> + <groupId>io.etcd</groupId> + <artifactId>jetcd-core</artifactId> + </exclusion> + <exclusion> + <groupId>io.etcd</groupId> + <artifactId>jetcd-api</artifactId> + </exclusion> + <exclusion> + <groupId>io.vertx</groupId> + <artifactId>*</artifactId> + </exclusion> + </exclusions> + </dependency> + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>jetcd-core-shaded</artifactId> + <version>${project.version}</version> + <classifier>shaded</classifier> + <exclusions> + <exclusion> + <groupId>io.etcd</groupId> + <artifactId>*</artifactId> + </exclusion> + <exclusion> + <groupId>io.vertx</groupId> + <artifactId>*</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> @@ -1138,6 +1182,10 @@ flexible messaging model and an intuitive client API.</description> <groupId>com.squareup.okio</groupId> <artifactId>okio</artifactId> </exclusion> + <exclusion> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty</artifactId> + </exclusion> </exclusions> </dependency> @@ -2087,6 +2135,11 @@ flexible messaging model and an intuitive client API.</description> <artifactId>docker-maven-plugin</artifactId> <version>${docker-maven.version}</version> </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + <version>${build-helper-maven-plugin.version}</version> + </plugin> </plugins> </pluginManagement> <extensions> @@ -2329,6 +2382,7 @@ flexible messaging model and an intuitive client API.</description> <module>pulsar-client-messagecrypto-bc</module> <module>pulsar-metadata</module> + <module>jetcd-core-shaded</module> <module>jclouds-shaded</module> <!-- package management releated modules (begin) --> @@ -2388,7 +2442,7 @@ flexible messaging model and an intuitive client API.</description> <!-- all these modules should be put at the end in this exact sequence --> <module>distribution</module> <module>pulsar-metadata</module> - + <module>jetcd-core-shaded</module> <!-- package management releated modules (begin) --> <module>pulsar-package-management</module> <!-- package management releated modules (end) --> diff --git a/pulsar-broker/pom.xml b/pulsar-broker/pom.xml index d1173a24ccc..03510c22c38 100644 --- a/pulsar-broker/pom.xml +++ b/pulsar-broker/pom.xml @@ -439,6 +439,18 @@ <version>${project.version}</version> </dependency> + <dependency> + <groupId>${project.groupId}</groupId> + <artifactId>jetcd-core-shaded</artifactId> + <version>${project.version}</version> + <classifier>shaded</classifier> + <scope>test</scope> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + <scope>test</scope> + </dependency> <dependency> <groupId>io.etcd</groupId> <artifactId>jetcd-test</artifactId> diff --git a/pulsar-functions/instance/pom.xml b/pulsar-functions/instance/pom.xml index 622a91e34db..b6df4c4962a 100644 --- a/pulsar-functions/instance/pom.xml +++ b/pulsar-functions/instance/pom.xml @@ -101,7 +101,7 @@ <exclusions> <exclusion> <groupId>io.grpc</groupId> - <artifactId>grpc-all</artifactId> + <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>com.google.protobuf</groupId> @@ -110,6 +110,11 @@ </exclusions> </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> + </dependency> + <dependency> <groupId>io.grpc</groupId> <artifactId>grpc-stub</artifactId> @@ -215,7 +220,7 @@ </execution> </executions> </plugin> - + <!-- this task is used for copy all python files together to provide a instance directory for running python instance --> <plugin> diff --git a/pulsar-metadata/pom.xml b/pulsar-metadata/pom.xml index dfcf7f222c2..6641931d001 100644 --- a/pulsar-metadata/pom.xml +++ b/pulsar-metadata/pom.xml @@ -109,10 +109,15 @@ </dependency> <dependency> - <groupId>io.etcd</groupId> - <artifactId>jetcd-core</artifactId> + <groupId>${project.groupId}</groupId> + <artifactId>jetcd-core-shaded</artifactId> + <version>${project.version}</version> + <classifier>shaded</classifier> + </dependency> + <dependency> + <groupId>io.grpc</groupId> + <artifactId>grpc-netty-shaded</artifactId> </dependency> - <dependency> <groupId>io.etcd</groupId> diff --git a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/EtcdMetadataStore.java b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/EtcdMetadataStore.java index a7fb7192cb5..27862cd20b5 100644 --- a/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/EtcdMetadataStore.java +++ b/pulsar-metadata/src/main/java/org/apache/pulsar/metadata/impl/EtcdMetadataStore.java @@ -43,10 +43,10 @@ import io.etcd.jetcd.watch.WatchEvent; import io.etcd.jetcd.watch.WatchResponse; import io.grpc.Status; import io.grpc.StatusRuntimeException; -import io.grpc.netty.GrpcSslContexts; +import io.grpc.netty.shaded.io.grpc.netty.GrpcSslContexts; +import io.grpc.netty.shaded.io.netty.handler.ssl.SslContext; +import io.grpc.netty.shaded.io.netty.handler.ssl.SslProvider; import io.grpc.stub.StreamObserver; -import io.netty.handler.ssl.SslContext; -import io.netty.handler.ssl.SslProvider; import java.io.File; import java.io.IOException; import java.io.InputStream; diff --git a/pulsar-sql/presto-distribution/LICENSE b/pulsar-sql/presto-distribution/LICENSE index 677ea324aaf..09f7c688216 100644 --- a/pulsar-sql/presto-distribution/LICENSE +++ b/pulsar-sql/presto-distribution/LICENSE @@ -231,21 +231,21 @@ The Apache Software License, Version 2.0 - commons-compress-1.26.0.jar - commons-lang3-3.11.jar * Netty - - netty-buffer-4.1.108.Final.jar - - netty-codec-4.1.108.Final.jar - - netty-codec-dns-4.1.108.Final.jar - - netty-codec-http-4.1.108.Final.jar - - netty-codec-haproxy-4.1.108.Final.jar - - netty-codec-socks-4.1.108.Final.jar - - netty-handler-proxy-4.1.108.Final.jar - - netty-common-4.1.108.Final.jar - - netty-handler-4.1.108.Final.jar + - netty-buffer-4.1.111.Final.jar + - netty-codec-4.1.111.Final.jar + - netty-codec-dns-4.1.111.Final.jar + - netty-codec-http-4.1.111.Final.jar + - netty-codec-haproxy-4.1.111.Final.jar + - netty-codec-socks-4.1.111.Final.jar + - netty-handler-proxy-4.1.111.Final.jar + - netty-common-4.1.111.Final.jar + - netty-handler-4.1.111.Final.jar - netty-reactive-streams-2.0.6.jar - - netty-resolver-4.1.108.Final.jar - - netty-resolver-dns-4.1.108.Final.jar - - netty-resolver-dns-classes-macos-4.1.108.Final.jar - - netty-resolver-dns-native-macos-4.1.108.Final-osx-aarch_64.jar - - netty-resolver-dns-native-macos-4.1.108.Final-osx-x86_64.jar + - netty-resolver-4.1.111.Final.jar + - netty-resolver-dns-4.1.111.Final.jar + - netty-resolver-dns-classes-macos-4.1.111.Final.jar + - netty-resolver-dns-native-macos-4.1.111.Final-osx-aarch_64.jar + - netty-resolver-dns-native-macos-4.1.111.Final-osx-x86_64.jar - netty-tcnative-boringssl-static-2.0.65.Final.jar - netty-tcnative-boringssl-static-2.0.65.Final-linux-aarch_64.jar - netty-tcnative-boringssl-static-2.0.65.Final-linux-x86_64.jar @@ -253,13 +253,12 @@ The Apache Software License, Version 2.0 - netty-tcnative-boringssl-static-2.0.65.Final-osx-x86_64.jar - netty-tcnative-boringssl-static-2.0.65.Final-windows-x86_64.jar - netty-tcnative-classes-2.0.65.Final.jar - - netty-transport-4.1.108.Final.jar - - netty-transport-classes-epoll-4.1.108.Final.jar - - netty-transport-native-epoll-4.1.108.Final-linux-aarch_64.jar - - netty-transport-native-epoll-4.1.108.Final-linux-x86_64.jar - - netty-transport-native-unix-common-4.1.108.Final.jar - - netty-transport-native-unix-common-4.1.108.Final-linux-x86_64.jar - - netty-codec-http2-4.1.108.Final.jar + - netty-transport-4.1.111.Final.jar + - netty-transport-classes-epoll-4.1.111.Final.jar + - netty-transport-native-epoll-4.1.111.Final-linux-aarch_64.jar + - netty-transport-native-epoll-4.1.111.Final-linux-x86_64.jar + - netty-transport-native-unix-common-4.1.111.Final.jar + - netty-transport-native-unix-common-4.1.111.Final-linux-x86_64.jar - netty-incubator-transport-classes-io_uring-0.0.21.Final.jar - netty-incubator-transport-native-io_uring-0.0.21.Final-linux-x86_64.jar - netty-incubator-transport-native-io_uring-0.0.21.Final-linux-aarch_64.jar @@ -268,19 +267,13 @@ The Apache Software License, Version 2.0 - grpc-context-1.55.3.jar - grpc-core-1.55.3.jar - grpc-grpclb-1.55.3.jar - - grpc-netty-1.55.3.jar + - grpc-netty-shaded-1.55.3.jar - grpc-protobuf-1.55.3.jar - grpc-protobuf-lite-1.55.3.jar - grpc-stub-1.55.3.jar - grpc-util-1.60.0.jar - * JEtcd - - jetcd-api-0.7.7.jar - - jetcd-common-0.7.7.jar - - jetcd-core-0.7.7.jar - - jetcd-grpc-0.7.7.jar - * Vertx - - vertx-core-4.5.8.jar - - vertx-grpc-4.5.8.jar + * JEtcd - shaded + * Vertx - shaded * Joda Time - joda-time-2.10.10.jar - failsafe-3.3.2.jar diff --git a/pulsar-sql/presto-distribution/src/assembly/assembly.xml b/pulsar-sql/presto-distribution/src/assembly/assembly.xml index 96c0421c715..64c6778bc43 100644 --- a/pulsar-sql/presto-distribution/src/assembly/assembly.xml +++ b/pulsar-sql/presto-distribution/src/assembly/assembly.xml @@ -60,6 +60,9 @@ <exclude>io.airlift:launcher:tar.gz:bin:${airlift.version}</exclude> <exclude>io.airlift:launcher:tar.gz:properties:${airlift.version}</exclude> <exclude>*:tar.gz</exclude> + <!-- prevent adding annotation libraries --> + <exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude> + <exclude>com.google.android:annotations</exclude> </excludes> </dependencySet> <dependencySet> diff --git a/pulsar-sql/presto-pulsar-plugin/src/assembly/assembly.xml b/pulsar-sql/presto-pulsar-plugin/src/assembly/assembly.xml index 6650abfda3f..ac17aaed70b 100644 --- a/pulsar-sql/presto-pulsar-plugin/src/assembly/assembly.xml +++ b/pulsar-sql/presto-pulsar-plugin/src/assembly/assembly.xml @@ -33,6 +33,9 @@ <scope>runtime</scope> <excludes> <exclude>jakarta.ws.rs:jakarta.ws.rs-api</exclude> + <!-- prevent adding annotation libraries --> + <exclude>org.codehaus.mojo:animal-sniffer-annotations</exclude> + <exclude>com.google.android:annotations</exclude> </excludes> </dependencySet> </dependencySets> diff --git a/src/check-binary-license.sh b/src/check-binary-license.sh index 3a6d266345f..c9ca41fef35 100755 --- a/src/check-binary-license.sh +++ b/src/check-binary-license.sh @@ -96,7 +96,7 @@ done if [ "$NO_PRESTO" -ne 1 ]; then # check pulsar sql jars - JARS=$(tar -tf $TARBALL | grep '\.jar' | grep 'trino/' | grep -v pulsar-client | grep -v bouncy-castle-bc | grep -v pulsar-metadata | grep -v 'managed-ledger' | grep -v 'pulsar-client-admin' | grep -v 'pulsar-client-api' | grep -v 'pulsar-functions-api' | grep -v 'pulsar-presto-connector-original' | grep -v 'pulsar-presto-distribution' | grep -v 'pulsar-common' | grep -v 'pulsar-functions-proto' | grep -v 'pulsar-functions-utils' | grep -v 'pulsar-io-core' | grep -v 'pulsar-transacti [...] + JARS=$(tar -tf $TARBALL | grep '\.jar' | grep 'trino/' | grep -v pulsar-client | grep -v bouncy-castle-bc | grep -v pulsar-metadata | grep -v 'managed-ledger' | grep -v 'pulsar-client-admin' | grep -v 'pulsar-client-api' | grep -v 'pulsar-functions-api' | grep -v 'pulsar-presto-connector-original' | grep -v 'pulsar-presto-distribution' | grep -v 'pulsar-common' | grep -v 'pulsar-functions-proto' | grep -v 'pulsar-functions-utils' | grep -v 'pulsar-io-core' | grep -v 'pulsar-transacti [...] if [ -n "$JARS" ]; then LICENSEPATH=$(tar -tf $TARBALL | awk '/^[^\/]*\/trino\/LICENSE/') LICENSE=$(tar -O -xf $TARBALL "$LICENSEPATH")