Skip to content
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

Merged
merged 9 commits into from
Nov 29, 2023

Conversation

eolivelli
Copy link
Contributor

@eolivelli eolivelli commented Aug 4, 2023

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

  • Upgrade Apache ZooKeeper
  • in update the base test class that starts ZK to use ZooKeeper Embedded

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

  • Dependencies (add or upgrade a dependency)
  • The public API
  • The schema
  • The default values of configurations
  • The threading model
  • The binary protocol
  • The REST endpoints
  • The admin CLI options
  • The metrics
  • Anything that affects deployment

Documentation

  • doc
  • doc-required
  • doc-not-needed
  • doc-complete

Matching PR in forked repository

PR in forked repository: eolivelli#24

@github-actions github-actions bot added the doc-not-needed Your PR changes do not impact docs label Aug 4, 2023
@Technoboy- Technoboy- added this to the 3.2.0 milestone Aug 7, 2023
@Technoboy- Technoboy- added ready-to-test dependencies Pull requests that update a dependency file labels Aug 7, 2023
@Technoboy- Technoboy- closed this Aug 7, 2023
@Technoboy- Technoboy- reopened this Aug 7, 2023
@tisonkun tisonkun changed the title [broker][bookie] Upgrade Apache ZooKeeper to 3.9.0 [improve][build] Upgrade Apache ZooKeeper to 3.9.0 Aug 8, 2023
import org.assertj.core.util.Files;
import org.junit.platform.commons.util.ReflectionUtils;
Copy link
Member

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

Copy link
Member

@michaeljmarshall michaeljmarshall Aug 9, 2023

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?

Copy link
Contributor Author

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

Copy link
Contributor Author

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

@github-actions
Copy link

github-actions bot commented Oct 2, 2023

The pr had no activity for 30 days, mark with Stale label.

@github-actions github-actions bot added the Stale label Oct 2, 2023
Copy link
Member

@tisonkun tisonkun left a 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.

@lhotari
Copy link
Member

lhotari commented Oct 16, 2023

Please also upgrade to use 3.9.1

@github-actions github-actions bot removed the Stale label Oct 17, 2023
@lhotari
Copy link
Member

lhotari commented Oct 18, 2023

@eolivelli Please rebase & upgrade to use 3.9.1 since that would be needed for solving CVE-2023-44981 .

@eolivelli
Copy link
Contributor Author

@lhotari would you have time to pick up this PR please ? I don't have much time these days

@lhotari
Copy link
Member

lhotari commented Oct 18, 2023

@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.

@lhotari lhotari changed the title [improve][build] Upgrade Apache ZooKeeper to 3.9.0 [improve][build] Upgrade Apache ZooKeeper to 3.9.1 Oct 18, 2023
liangyepianzhou and others added 3 commits November 28, 2023 11:37
…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
@Technoboy- Technoboy- merged commit 5572c38 into apache:master Nov 29, 2023
46 of 48 checks passed
liangyepianzhou pushed a commit that referenced this pull request Nov 29, 2023
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)
Technoboy- added a commit that referenced this pull request Dec 4, 2023
Co-authored-by: Lari Hotari <lhotari@apache.org>
Co-authored-by: xiangying <1984997880@qq.com>
Co-authored-by: Jiwe Guo <technoboy@apache.org>
liangyepianzhou pushed a commit to streamnative/pulsar-archived that referenced this pull request Dec 12, 2023
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)
nikhil-ctds pushed a commit to datastax/pulsar that referenced this pull request Dec 12, 2023
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
srinath-ctds pushed a commit to datastax/pulsar that referenced this pull request Dec 14, 2023
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
liangyepianzhou pushed a commit that referenced this pull request Dec 14, 2023
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)
nikhil-ctds pushed a commit to datastax/pulsar that referenced this pull request Dec 20, 2023
Co-authored-by: Lari Hotari <lhotari@apache.org>
Co-authored-by: xiangying <1984997880@qq.com>
Co-authored-by: Jiwe Guo <technoboy@apache.org>
srinath-ctds pushed a commit to datastax/pulsar that referenced this pull request Dec 20, 2023
Co-authored-by: Lari Hotari <lhotari@apache.org>
Co-authored-by: xiangying <1984997880@qq.com>
Co-authored-by: Jiwe Guo <technoboy@apache.org>
liangyepianzhou added a commit to liangyepianzhou/pulsar that referenced this pull request Feb 15, 2024
zookeeper 3.9.1 add a check to print a log.
```java
                if (addr.getPort() == 0) {
                    LOG.info("bound to port {}", this.ss.getLocalAddress());
                }
```
nodece pushed a commit to nodece/pulsar that referenced this pull request Feb 23, 2024
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)
@lhotari
Copy link
Member

lhotari commented Feb 27, 2024

Cherry-picking to 2.11.4 for consistency. This is already cherry-picked to branch-2.10 .

lhotari pushed a commit that referenced this pull request Feb 27, 2024
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants