This is an automated email from the ASF dual-hosted git repository. zhangduo pushed a commit to branch branch-3 in repository https://gitbox.apache.org/repos/asf/hbase.git
The following commit(s) were added to refs/heads/branch-3 by this push: new 6cd718a6d55 HBASE-28153 Upgrade zookeeper to a newer version (#5475) 6cd718a6d55 is described below commit 6cd718a6d551361b67cfc1da0b154ac25f48b460 Author: Duo Zhang <zhang...@apache.org> AuthorDate: Wed Nov 1 10:46:32 2023 +0800 HBASE-28153 Upgrade zookeeper to a newer version (#5475) Signed-off-by: Nick Dimiduk <ndimi...@apache.org> Signed-off-by: Andrew Purtell <apurt...@apache.org> Signed-off-by: Bryan Beaudreault <bbeaudrea...@apache.org> (cherry picked from commit a97373965e3aca45e0a43d38d6de2827c8f4c4ae) --- hbase-it/pom.xml | 7 --- hbase-server/pom.xml | 7 --- hbase-zookeeper/pom.xml | 9 ++++ pom.xml | 133 +++++++++++++----------------------------------- 4 files changed, 44 insertions(+), 112 deletions(-) diff --git a/hbase-it/pom.xml b/hbase-it/pom.xml index bc67f21c7dc..c3f884a16b0 100644 --- a/hbase-it/pom.xml +++ b/hbase-it/pom.xml @@ -132,13 +132,6 @@ <groupId>io.opentelemetry</groupId> <artifactId>opentelemetry-api</artifactId> </dependency> - <!-- Hadoop needs Netty 3.x at test scope for the minicluster --> - <dependency> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - <version>${netty.hadoop.version}</version> - <scope>test</scope> - </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>jcl-over-slf4j</artifactId> diff --git a/hbase-server/pom.xml b/hbase-server/pom.xml index 2455c199cb2..c04947529bf 100644 --- a/hbase-server/pom.xml +++ b/hbase-server/pom.xml @@ -699,13 +699,6 @@ </exclusion> </exclusions> </dependency> - <!-- Hadoop needs Netty 3.x at test scope for the minicluster> - <dependency> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - <version>${netty.hadoop.version}</version> - <scope>test</scope> - </dependency--> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-minikdc</artifactId> diff --git a/hbase-zookeeper/pom.xml b/hbase-zookeeper/pom.xml index f1711fdf338..8fceb26d5b0 100644 --- a/hbase-zookeeper/pom.xml +++ b/hbase-zookeeper/pom.xml @@ -139,6 +139,15 @@ <artifactId>log4j-slf4j-impl</artifactId> <scope>test</scope> </dependency> + <!-- ZooKeeperServer needs the below dependencies, thus MiniZooKeeperCluster also needs them --> + <dependency> + <groupId>org.xerial.snappy</groupId> + <artifactId>snappy-java</artifactId> + </dependency> + <dependency> + <groupId>commons-cli</groupId> + <artifactId>commons-cli</artifactId> + </dependency> </dependencies> <build> diff --git a/pom.xml b/pom.xml index 277baa3cddb..6dbbd34b825 100644 --- a/pom.xml +++ b/pom.xml @@ -802,9 +802,18 @@ --> <hadoop.version>${hadoop-three.version}</hadoop.version> <assembly.file>src/main/assembly/hadoop-three-compat.xml</assembly.file> - <!--This property is for hadoops netty. HBase netty - comes in via hbase-thirdparty hbase-shaded-netty--> - <netty.hadoop.version>3.10.5.Final</netty.hadoop.version> + <!-- + These property is for transitive netty dependencies from thirdparty dependencies, like + hadoop and zookeeper. HBase netty comes in via hbase-thirdparty hbase-shaded-netty + In the old time, netty-all includes all the classes but maven does not know it so it is + possible that we have netty-all and netty-handler both on the classpath but they have + different version and cause conflicts. Newer version of netty-all solved the this problem + by depending all other netty modules, but we'd better still specify the version by our own + in the dependencyManagement section as it could still lead to different versions of netty + modules and cause trouble if we only rely on transitive dependencies. + --> + <netty3.version>3.10.6.Final</netty3.version> + <netty4.version>4.1.100.Final</netty4.version> <!-- end HBASE-15925 default hadoop compatibility values --> <audience-annotations.version>0.13.0</audience-annotations.version> <!-- @@ -819,6 +828,7 @@ <commons-io.version>2.11.0</commons-io.version> <commons-lang3.version>3.9</commons-lang3.version> <commons-math.version>3.6.1</commons-math.version> + <commons-cli.version>1.5.0</commons-cli.version> <disruptor.version>3.4.4</disruptor.version> <httpclient.version>4.5.13</httpclient.version> <httpcore.version>4.4.13</httpcore.version> @@ -840,7 +850,7 @@ <protobuf.plugin.version>0.6.1</protobuf.plugin.version> <thrift.path>thrift</thrift.path> <thrift.version>0.14.1</thrift.version> - <zookeeper.version>3.5.7</zookeeper.version> + <zookeeper.version>3.8.3</zookeeper.version> <jline.version>2.11</jline.version> <slf4j.version>1.7.30</slf4j.version> <clover.version>4.0.3</clover.version> @@ -1411,6 +1421,11 @@ <artifactId>commons-math3</artifactId> <version>${commons-math.version}</version> </dependency> + <dependency> + <groupId>commons-cli</groupId> + <artifactId>commons-cli</artifactId> + <version>${commons-cli.version}</version> + </dependency> <dependency> <!-- commons-logging is only used by hbase-http's HttpRequestLog and hbase-server's HBaseTestingUtil. @@ -1425,44 +1440,12 @@ <version>${zookeeper.version}</version> <exclusions> <exclusion> - <groupId>com.google.code.findbugs</groupId> - <artifactId>jsr305</artifactId> - </exclusion> - <exclusion> - <groupId>com.github.spotbugs</groupId> - <artifactId>spotbugs-annotations</artifactId> - </exclusion> - <exclusion> - <groupId>jline</groupId> - <artifactId>jline</artifactId> - </exclusion> - <exclusion> - <groupId>com.sun.jmx</groupId> - <artifactId>jmxri</artifactId> - </exclusion> - <exclusion> - <groupId>com.sun.jdmk</groupId> - <artifactId>jmxtools</artifactId> - </exclusion> - <exclusion> - <groupId>javax.jms</groupId> - <artifactId>jms</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> + <groupId>ch.qos.logback</groupId> + <artifactId>logback-core</artifactId> </exclusion> <exclusion> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-log4j12</artifactId> - </exclusion> - <exclusion> - <groupId>log4j</groupId> - <artifactId>log4j</artifactId> + <groupId>ch.qos.logback</groupId> + <artifactId>logback-classic</artifactId> </exclusion> </exclusions> </dependency> @@ -1785,6 +1768,18 @@ </exclusion> </exclusions> </dependency> + <dependency> + <groupId>io.netty</groupId> + <artifactId>netty</artifactId> + <version>${netty3.version}</version> + </dependency> + <dependency> + <groupId>io.netty</groupId> + <artifactId>netty-bom</artifactId> + <version>${netty4.version}</version> + <type>pom</type> + <scope>import</scope> + </dependency> </dependencies> </dependencyManagement> <dependencies> @@ -3554,14 +3549,6 @@ <groupId>org.codehaus.jackson</groupId> <artifactId>*</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> @@ -3653,14 +3640,6 @@ <groupId>com.sun.jersey</groupId> <artifactId>jersey-core</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> @@ -3690,14 +3669,6 @@ <groupId>com.sun.jersey</groupId> <artifactId>jersey-core</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> <exclusion> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> @@ -3896,17 +3867,6 @@ <groupId>stax</groupId> <artifactId>stax-api</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <!-- MiniMRCluster needs the hadoop netty-all transitive include... a - netty-all 4.0.52 version.... so we have to let it through. - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> - --> <exclusion> <groupId>com.google.code.findbugs</groupId> <artifactId>jsr305</artifactId> @@ -3935,14 +3895,6 @@ <groupId>org.slf4j</groupId> <artifactId>slf4j-reload4j</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> </exclusions> </dependency> <dependency> @@ -3984,13 +3936,6 @@ <groupId>org.slf4j</groupId> <artifactId>slf4j-reload4j</artifactId> </exclusion> - <!-- - Needed in test context when hadoop-3.3 runs. - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> - --> <exclusion> <groupId>org.codehaus.jackson</groupId> <artifactId>*</artifactId> @@ -4056,14 +4001,6 @@ <groupId>stax</groupId> <artifactId>stax-api</artifactId> </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty</artifactId> - </exclusion> - <exclusion> - <groupId>io.netty</groupId> - <artifactId>netty-all</artifactId> - </exclusion> <exclusion> <groupId>com.google.code.findbugs</groupId> <artifactId>jsr305</artifactId>