From c4721346ed42ce9c15b9ddd532bdb0a17a4f8b4d Mon Sep 17 00:00:00 2001 From: Lari Hotari Date: Mon, 24 Jun 2024 14:37:28 +0300 Subject: [PATCH 01/10] Require Java 17 or Java 21 for building Bookkeeper --- .github/workflows/bk-ci.yml | 16 ++--- .github/workflows/bk-streamstorage-python.yml | 2 +- .github/workflows/codeql.yml | 2 +- .github/workflows/website-deploy.yaml | 2 +- .github/workflows/website-pr-validation.yml | 2 +- circe-checksum/pom.xml | 34 +++++++++ cpu-affinity/pom.xml | 34 +++++++++ pom.xml | 69 +++++++++++++------ 8 files changed, 127 insertions(+), 34 deletions(-) diff --git a/.github/workflows/bk-ci.yml b/.github/workflows/bk-ci.yml index 1f6ffd652ec..b4572e4b820 100644 --- a/.github/workflows/bk-ci.yml +++ b/.github/workflows/bk-ci.yml @@ -78,7 +78,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Validate pull request if: steps.check_changes.outputs.docs_only != 'true' @@ -156,7 +156,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Build run: | @@ -230,7 +230,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Pick ubuntu mirror for the docker image build run: | @@ -315,7 +315,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 8 + java-version: 17 - name: Pick ubuntu mirror for the docker image build run: | @@ -397,7 +397,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: mvn package run: mvn -B -nsu clean package -DskipTests @@ -429,7 +429,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: mvn package run: mvn -B -nsu clean package -DskipTests @@ -444,10 +444,6 @@ jobs: fail-fast: false matrix: include: - - step_name: Compatibility Check Java8 - jdk_version: 8 - - step_name: Compatibility Check Java11 - jdk_version: 11 - step_name: Compatibility Check Java17 jdk_version: 17 - step_name: Compatibility Check Java21 diff --git a/.github/workflows/bk-streamstorage-python.yml b/.github/workflows/bk-streamstorage-python.yml index 71dbe610452..d53b730b07c 100644 --- a/.github/workflows/bk-streamstorage-python.yml +++ b/.github/workflows/bk-streamstorage-python.yml @@ -70,7 +70,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Build run: mvn -q -T 1C -B -nsu clean install -DskipTests -Dcheckstyle.skip -Dspotbugs.skip -Drat.skip -Dmaven.javadoc.skip - name: Pick ubuntu mirror for the docker image build diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index e838fccc36e..76443f9e740 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -83,7 +83,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Validate pull request if: steps.check_changes.outputs.docs_only != 'true' diff --git a/.github/workflows/website-deploy.yaml b/.github/workflows/website-deploy.yaml index 868b1db0c7b..253ff26647a 100644 --- a/.github/workflows/website-deploy.yaml +++ b/.github/workflows/website-deploy.yaml @@ -44,7 +44,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Setup NodeJS diff --git a/.github/workflows/website-pr-validation.yml b/.github/workflows/website-pr-validation.yml index 9d38cb59f28..5ffa667582c 100644 --- a/.github/workflows/website-pr-validation.yml +++ b/.github/workflows/website-pr-validation.yml @@ -41,7 +41,7 @@ jobs: uses: actions/setup-java@v4 with: distribution: 'temurin' - java-version: 11 + java-version: 17 - name: Setup NodeJS diff --git a/circe-checksum/pom.xml b/circe-checksum/pom.xml index 9f9ca5f0c6f..5997c02580a 100644 --- a/circe-checksum/pom.xml +++ b/circe-checksum/pom.xml @@ -63,6 +63,10 @@ org.apache.maven.plugins maven-compiler-plugin + + + 8 + com.github.maven-nar @@ -111,6 +115,36 @@ + + org.apache.maven.plugins + maven-enforcer-plugin + ${maven-enforcer-plugin.version} + + + enforce-bytecode-version + + enforce + + + + + 8 + + test + + + + + + + + + org.codehaus.mojo + extra-enforcer-rules + ${extra-enforcer-rules.version} + + + diff --git a/cpu-affinity/pom.xml b/cpu-affinity/pom.xml index 5ba9bc95de5..c77347376da 100644 --- a/cpu-affinity/pom.xml +++ b/cpu-affinity/pom.xml @@ -48,6 +48,10 @@ org.apache.maven.plugins maven-compiler-plugin + + + 8 + com.github.maven-nar @@ -87,6 +91,36 @@ + + org.apache.maven.plugins + maven-enforcer-plugin + ${maven-enforcer-plugin.version} + + + enforce-bytecode-version + + enforce + + + + + 8 + + test + + + + + + + + + org.codehaus.mojo + extra-enforcer-rules + ${extra-enforcer-rules.version} + + + diff --git a/pom.xml b/pom.xml index 1651bfcac71..83ee1c64c97 100644 --- a/pom.xml +++ b/pom.xml @@ -191,6 +191,8 @@ 3.3.1 3.12.1 3.2.5 + 3.5.0 + 1.8.0 9.2.0 3.10.1 1.4.1.Final @@ -883,6 +885,28 @@ + + org.apache.maven.plugins + maven-compiler-plugin + ${maven-compiler-plugin.version} + + + 17 + UTF-8 + true + true + + + org.projectlombok + lombok + ${lombok.version} + + + + -parameters + + + org.apache.maven.plugins maven-checkstyle-plugin @@ -940,6 +964,31 @@ + + org.apache.maven.plugins + maven-enforcer-plugin + ${maven-enforcer-plugin.version} + + + enforce-maven + + enforce + + + + + [17,18),[21,22) + Java 17 or Java 21 is required to build Bookkeeper. + + + 3.6.1 + Maven 3.6.1 or newer is required to build Bookkeeper. + + + + + + com.github.spotbugs spotbugs-maven-plugin @@ -948,26 +997,6 @@ ${session.executionRootDirectory}/buildtools/src/main/resources/bookkeeper/findbugsExclude.xml - - org.apache.maven.plugins - maven-compiler-plugin - ${maven-compiler-plugin.version} - - UTF-8 - true - true - - - org.projectlombok - lombok - ${lombok.version} - - - - -parameters - - - org.apache.maven.plugins maven-surefire-plugin From 8fe5867f805fb65bfd1bb6ea7fe1a650e726be8a Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Mon, 24 Feb 2025 09:49:47 -0800 Subject: [PATCH 02/10] --add-opens for test execution --- pom.xml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/pom.xml b/pom.xml index 8a26bad3d42..9661b4c881d 100644 --- a/pom.xml +++ b/pom.xml @@ -208,6 +208,19 @@ 1.26.0 http://archive.ubuntu.com/ubuntu/ http://security.ubuntu.com/ubuntu/ + + + --add-opens java.base/jdk.internal.loader=ALL-UNNAMED + --add-opens java.base/java.lang=ALL-UNNAMED + --add-opens java.base/java.io=ALL-UNNAMED + --add-opens java.base/java.util=ALL-UNNAMED + --add-opens java.base/sun.net=ALL-UNNAMED + --add-opens java.desktop/java.beans=ALL-UNNAMED + --add-opens java.management/sun.management=ALL-UNNAMED + --add-opens jdk.management/com.sun.management.internal=ALL-UNNAMED + --add-opens java.base/jdk.internal.platform=ALL-UNNAMED + + @@ -950,6 +963,10 @@ ${maven-surefire-plugin.version} flaky + -XX:+ExitOnOutOfMemoryError + -Dio.netty.tryReflectionSetAccessible=true + ${test.additional.args} + From 6d8eac2fa45357b19ba21036b853b97236a67051 Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Mon, 24 Feb 2025 15:46:51 -0800 Subject: [PATCH 03/10] Apply surefire config in module explicitely --- .../current-server-old-clients/pom.xml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tests/backward-compat/current-server-old-clients/pom.xml b/tests/backward-compat/current-server-old-clients/pom.xml index 4c3d5163cc5..ba30e7d1b8b 100644 --- a/tests/backward-compat/current-server-old-clients/pom.xml +++ b/tests/backward-compat/current-server-old-clients/pom.xml @@ -29,4 +29,21 @@ jar Apache BookKeeper :: Tests :: Backward Compatibility :: Test old clients working on current server + + + + org.apache.maven.plugins + maven-surefire-plugin + ${maven-surefire-plugin.version} + + flaky + -XX:+ExitOnOutOfMemoryError + -Dio.netty.tryReflectionSetAccessible=true + ${test.additional.args} + + + + + + From 605565ad2a3ac2045eb457db85da2069e3696b83 Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Wed, 4 Jun 2025 08:10:31 -0700 Subject: [PATCH 04/10] Fixed Arquillian version --- pom.xml | 9 +++++++-- tests/integration-tests-base/pom.xml | 11 +++++++++++ 2 files changed, 18 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 8b56d8552c9..9b0eddf78db 100644 --- a/pom.xml +++ b/pom.xml @@ -116,8 +116,8 @@ - 1.18.2 - 1.8.0.Final + 2.0.0.Final + 1.9.4.Final 1.78 3.0.1 1.9.0 @@ -800,6 +800,11 @@ + + org.jboss.arquillian.core + arquillian-core-spi + ${arquillian-junit.version} + javax.ws.rs javax.ws.rs-api diff --git a/tests/integration-tests-base/pom.xml b/tests/integration-tests-base/pom.xml index 402f05c1beb..f12c4f01315 100644 --- a/tests/integration-tests-base/pom.xml +++ b/tests/integration-tests-base/pom.xml @@ -48,6 +48,17 @@ test + + org.jboss.arquillian.core + arquillian-core-spi + test + + + + org.yaml + snakeyaml + ${snakeyaml.version} + From da26f858b50827be60fb451932d0b8be4857ee5d Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 10:20:42 -0700 Subject: [PATCH 05/10] Add arquillian-junit-container dependency --- tests/integration-tests-base/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/integration-tests-base/pom.xml b/tests/integration-tests-base/pom.xml index f12c4f01315..bd77790b380 100644 --- a/tests/integration-tests-base/pom.xml +++ b/tests/integration-tests-base/pom.xml @@ -54,6 +54,12 @@ test + + org.jboss.arquillian.junit + arquillian-junit-container + test + + org.yaml snakeyaml From 8130811002f634cabfa76dad435496d47dff9fb5 Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 10:28:32 -0700 Subject: [PATCH 06/10] Fixed pom --- pom.xml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/pom.xml b/pom.xml index 9b0eddf78db..6fcad27aab4 100644 --- a/pom.xml +++ b/pom.xml @@ -805,6 +805,11 @@ arquillian-core-spi ${arquillian-junit.version} + + org.jboss.arquillian.junit + arquillian-junit-container + ${arquillian-junit.version} + javax.ws.rs javax.ws.rs-api From bf0cccceaf6677668daa1ac49d5a99cbbe3db56c Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 15:14:29 -0700 Subject: [PATCH 07/10] Ping snakeyaml version --- tests/integration/smoke/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/integration/smoke/pom.xml b/tests/integration/smoke/pom.xml index 3793b9cfb55..b612c17bd9c 100644 --- a/tests/integration/smoke/pom.xml +++ b/tests/integration/smoke/pom.xml @@ -83,6 +83,12 @@ org.arquillian.cube arquillian-cube-docker + + + org.yaml + snakeyaml + ${snakeyaml.version} + From f7721253f5f83a653bb39fd68fc976fd095b7995 Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 16:00:58 -0700 Subject: [PATCH 08/10] Fix for backward compat test --- tests/backward-compat/pom.xml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/tests/backward-compat/pom.xml b/tests/backward-compat/pom.xml index 024656982fe..3fe94b4c8ed 100644 --- a/tests/backward-compat/pom.xml +++ b/tests/backward-compat/pom.xml @@ -63,6 +63,24 @@ org.arquillian.cube arquillian-cube-docker + + + org.jboss.arquillian.core + arquillian-core-spi + test + + + + org.jboss.arquillian.junit + arquillian-junit-container + test + + + + org.yaml + snakeyaml + ${snakeyaml.version} + From 4cc75e8b2384e2a812eaa0b0c4681df23460d35f Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 16:37:08 -0700 Subject: [PATCH 09/10] More fixes --- tests/backward-compat/pom.xml | 2 -- 1 file changed, 2 deletions(-) diff --git a/tests/backward-compat/pom.xml b/tests/backward-compat/pom.xml index 3fe94b4c8ed..8f53c27633d 100644 --- a/tests/backward-compat/pom.xml +++ b/tests/backward-compat/pom.xml @@ -67,13 +67,11 @@ org.jboss.arquillian.core arquillian-core-spi - test org.jboss.arquillian.junit arquillian-junit-container - test From 8e261981ba53346c6cb9f2e7b320a46f6c777a44 Mon Sep 17 00:00:00 2001 From: Matteo Merli Date: Thu, 5 Jun 2025 17:12:20 -0700 Subject: [PATCH 10/10] More missing deps --- tests/backward-compat/pom.xml | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/backward-compat/pom.xml b/tests/backward-compat/pom.xml index 8f53c27633d..7de067fbb0d 100644 --- a/tests/backward-compat/pom.xml +++ b/tests/backward-compat/pom.xml @@ -69,6 +69,12 @@ arquillian-core-spi + + org.jboss.arquillian.test + arquillian-test-spi + ${arquillian-junit.version} + + org.jboss.arquillian.junit arquillian-junit-container