-
Notifications
You must be signed in to change notification settings - Fork 3.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[improve][build] Upgrade Apache ZooKeeper to 3.9.1 #20933
Conversation
pulsar-metadata/src/test/java/org/apache/pulsar/metadata/TestZKServer.java
Show resolved
Hide resolved
import org.assertj.core.util.Files; | ||
import org.junit.platform.commons.util.ReflectionUtils; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is also an issue with this line. It is failing checkstyle because of this recent PR #20611
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In looking into the ReflectionUtils
source code, I see the following warning:
/**
* Collection of utilities for working with the Java reflection APIs.
*
* <h2>DISCLAIMER</h2>
*
* <p>These utilities are intended solely for usage within the JUnit framework
* itself. <strong>Any usage by external parties is not supported.</strong>
* Use at your own risk!
*
* <p>Some utilities are published via the maintained {@code ReflectionSupport}
* class.
*
* @since 1.0
* @see org.junit.platform.commons.support.ReflectionSupport
*/
@API(status = INTERNAL, since = "1.0")
public final class ReflectionUtils
We might need to refactor this part of the PR. What is your opinion @eolivelli?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is TestZKServer, it is testing code, so it is fine to use JUnit utilities IMHO
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
btw, I have removed it
39f5b77
to
cb18934
Compare
The pr had no activity for 30 days, mark with Stale label. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also there are some license files should be updated.
Please also upgrade to use 3.9.1 |
@eolivelli Please rebase & upgrade to use 3.9.1 since that would be needed for solving CVE-2023-44981 . |
@lhotari would you have time to pick up this PR please ? I don't have much time these days |
@eolivelli sure. I'll complete this PR. |
a39d14c
to
cc16964
Compare
…etty:netty-transport-native-epoll:jar` [INFO] +- org.apache.zookeeper:zookeeper-prometheus-metrics:jar:3.9.1:compile [INFO] | \- org.apache.zookeeper:zookeeper:jar:3.9.1:compile [INFO] | +- org.apache.zookeeper:zookeeper-jute:jar:3.9.1:compile [INFO] | \- org.apache.yetus:audience-annotations:jar:0.12.0:compile [INFO] +- org.apache.zookeeper:zookeeper:jar:tests:3.9.1:test [INFO] | +- org.apache.zookeeper:zookeeper-jute:jar:3.9.1:compile [INFO] | +- org.apache.yetus:audience-annotations:jar:0.12.0:compile [INFO] | +- io.netty:netty-handler:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-resolver:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-transport:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-transport-native-unix-common:jar:4.1.100.Final:compile [INFO] | | \- io.netty:netty-codec:jar:4.1.100.Final:compile [INFO] | +- io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.100.Final:compile [INFO] | | \- io.netty:netty-transport-classes-epoll:jar:4.1.100.Final:compile [INFO] | +- io.netty:netty-tcnative-boringssl-static:jar:2.0.61.Final:compile [INFO] | | +- io.netty:netty-tcnative-classes:jar:2.0.61.Final:compile [INFO] | | +- io.netty:netty-tcnative-boringssl-static:jar:linux-x86_64:2.0.61.Final:compile [INFO] | | +- io.netty:netty-tcnative-boringssl-static:jar:linux-aarch_64:2.0.61.Final:compile [INFO] | | +- io.netty:netty-tcnative-boringssl-static:jar:osx-x86_64:2.0.61.Final:compile [INFO] | | +- io.netty:netty-tcnative-boringssl-static:jar:osx-aarch_64:2.0.61.Final:compile [INFO] | | \- io.netty:netty-tcnative-boringssl-static:jar:windows-x86_64:2.0.61.Final:compile [INFO] | \- commons-io:commons-io:jar:2.8.0:compile [INFO] +- org.apache.zookeeper:zookeeper-prometheus-metrics:jar:3.8.1:compile [INFO] | \- org.apache.zookeeper:zookeeper:jar:3.8.1:compile [INFO] | +- org.apache.zookeeper:zookeeper-jute:jar:3.8.1:compile [INFO] | +- org.apache.yetus:audience-annotations:jar:0.12.0:compile [INFO] | \- io.netty:netty-transport-native-epoll:jar:4.1.100.Final:compile [INFO] +- org.apache.zookeeper:zookeeper:jar:tests:3.8.1:test [INFO] | +- org.apache.zookeeper:zookeeper-jute:jar:3.8.1:compile [INFO] | +- org.apache.yetus:audience-annotations:jar:0.12.0:compile [INFO] | +- io.netty:netty-handler:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-resolver:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-transport:jar:4.1.100.Final:compile [INFO] | | +- io.netty:netty-transport-native-unix-common:jar:4.1.100.Final:compile [INFO] | | \- io.netty:netty-codec:jar:4.1.100.Final:compile [INFO] | +- io.netty:netty-transport-native-epoll:jar:4.1.100.Final:test [INFO] | | \- io.netty:netty-transport-classes-epoll:jar:4.1.100.Final:compile [INFO] | \- commons-io:commons-io:jar:2.8.0:compile
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit 5572c38)
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org>
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit 5572c38)
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit a614aad) Conflicts: distribution/server/src/assemble/LICENSE.bin.txt pom.xml pulsar-sql/presto-distribution/LICENSE
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit a614aad) Conflicts: distribution/server/src/assemble/LICENSE.bin.txt pom.xml pulsar-sql/presto-distribution/LICENSE
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit 5572c38)
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org>
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org>
zookeeper 3.9.1 add a check to print a log. ```java if (addr.getPort() == 0) { LOG.info("bound to port {}", this.ss.getLocalAddress()); } ```
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit 5572c38)
Cherry-picking to 2.11.4 for consistency. This is already cherry-picked to branch-2.10 . |
Co-authored-by: Lari Hotari <lhotari@apache.org> Co-authored-by: xiangying <1984997880@qq.com> Co-authored-by: Jiwe Guo <technoboy@apache.org> (cherry picked from commit 5572c38) # Conflicts: # pom.xml
Motivation
Apache ZooKeeper 3.9.0 comes with a few performance improvements and also full support for backup/restore.
It is fully compatible with 3.8.x.
It is worth to upgrade for Pulsar 3.1.0
Release notes:
https://zookeeper.apache.org/doc/r3.9.0/releasenotes.html
Modifications
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:
If the box was checked, please highlight the changes
Documentation
doc
doc-required
doc-not-needed
doc-complete
Matching PR in forked repository
PR in forked repository: eolivelli#24