Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,6 +65,7 @@ All notable changes to this project will be documented in this file.

- testing-tools: Re-add `pytest` Python package as well as `diffutils` package ([#1388]).
- testing-tools: Move Kerberos packages from testing-tools/hive to parent since they provide `kinit` which is needed in other tests too (ex. HBase). ([#1389]).
- hbase: Removed test class from backport HBASE-29797 to HBase version `2.6.3` ([#1426]).

[#1336]: https://github.com/stackabletech/docker-images/pull/1336
[#1337]: https://github.com/stackabletech/docker-images/pull/1337
Expand Down Expand Up @@ -100,6 +101,7 @@ All notable changes to this project will be documented in this file.
[#1422]: https://github.com/stackabletech/docker-images/pull/1422
[#1424]: https://github.com/stackabletech/docker-images/pull/1424
[#1425]: https://github.com/stackabletech/docker-images/pull/1425
[#1426]: https://github.com/stackabletech/docker-images/pull/1426

## [25.11.0] - 2025-11-07

Expand Down
6 changes: 6 additions & 0 deletions hbase/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,9 @@ SDP 24.7 included Phoenix built from the master branch from commit [4afe457](htt
Repository: [hbase-operator-tools](https://github.com/apache/hbase-operator-tools)

This is now mirrored and built from source using `patchable`.

## Back-porting upstream changes

Care needs to be taken when back-porting upstream changes due to changing dependencies.
A patch for multiple versions (that share the same major.minor version) may not work if dependencies have been introduced in the meantime.
e.g. HBASE-29797 can be applied to 2.6.4 directly, but not to 2.6.3 as test libraries were introduced between those versions.
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
From 8616ee8b26bfbba285a36b91eb41a203a49b222a Mon Sep 17 00:00:00 2001
From: dervoeti <lukas.krug@stackable.tech>
Date: Thu, 13 Mar 2025 22:07:31 +0100
From 44fd77d1f20a78dcc34ac9360ab8b4ed1e1d12af Mon Sep 17 00:00:00 2001
From: Andrew Kenworthy <andrew.kenworthy@stackable.tech>
Date: Mon, 9 Feb 2026 18:15:04 +0100
Subject: Add CycloneDX plugin

---
pom.xml | 17 +++++++++++++++++
1 file changed, 17 insertions(+)

diff --git a/pom.xml b/pom.xml
index caa032a..0025687 100644
index 46e7f89..4903bb2 100644
--- a/pom.xml
+++ b/pom.xml
@@ -549,6 +549,23 @@
@@ -557,6 +557,23 @@
</formats>
</configuration>
</plugin>
Expand All @@ -25,10 +25,10 @@ index caa032a..0025687 100644
+ </configuration>
+ <executions>
+ <execution>
+ <goals>
+ <goal>makeBom</goal>
+ </goals>
+ <phase>package</phase>
+ <goals>
+ <goal>makeBom</goal>
+ </goals>
+ <phase>package</phase>
+ </execution>
+ </executions>
+ </plugin>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
From f9e952767faf3032c0d4e729e51b5901fcf1a0e1 Mon Sep 17 00:00:00 2001
From b589c5bae43f401c3c49a5c4b4d106c09343d32b Mon Sep 17 00:00:00 2001
From: Razvan-Daniel Mihai <84674+razvan@users.noreply.github.com>
Date: Tue, 6 May 2025 17:58:34 +0200
Subject: Exclude hbase-testing-utils dependency from the build.
Expand All @@ -9,7 +9,7 @@ Subject: Exclude hbase-testing-utils dependency from the build.
2 files changed, 12 insertions(+), 4 deletions(-)

diff --git a/hbase-hbck2/pom.xml b/hbase-hbck2/pom.xml
index 1d57225..fd0018c 100644
index 69af92e..7bebf32 100644
--- a/hbase-hbck2/pom.xml
+++ b/hbase-hbck2/pom.xml
@@ -114,12 +114,19 @@
Expand All @@ -35,7 +35,7 @@ index 1d57225..fd0018c 100644
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
diff --git a/hbase-tools/pom.xml b/hbase-tools/pom.xml
index 55ef075..eeebe14 100644
index f9d94e8..1644c30 100644
--- a/hbase-tools/pom.xml
+++ b/hbase-tools/pom.xml
@@ -103,12 +103,13 @@
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
From 187db522edc569def2aea3f9453ecb1a674592fe Mon Sep 17 00:00:00 2001
From: Razvan-Daniel Mihai <84674+razvan@users.noreply.github.com>
Date: Wed, 7 May 2025 10:26:37 +0200
From 923efe9f649c947de8809f78cbc899d238545d05 Mon Sep 17 00:00:00 2001
From: Andrew Kenworthy <andrew.kenworthy@stackable.tech>
Date: Tue, 10 Feb 2026 11:35:36 +0100
Subject: Configure git-commit-id-plugin to use native git

This fixes the problem that jgit cannot handle worktrees and the build
Expand All @@ -13,10 +13,10 @@ https://github.com/git-commit-id/git-commit-id-maven-plugin/issues/215
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/hbase-hbck2/pom.xml b/hbase-hbck2/pom.xml
index fd0018c..f00bd18 100644
index 7bebf32..e3c246f 100644
--- a/hbase-hbck2/pom.xml
+++ b/hbase-hbck2/pom.xml
@@ -215,8 +215,9 @@
@@ -214,8 +214,9 @@
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
From 6d1c6b265a91a5e8496dccc3bceec656f15629be Mon Sep 17 00:00:00 2001
From: Andrew Kenworthy <andrew.kenworthy@stackable.tech>
Date: Mon, 9 Feb 2026 15:47:22 +0100
Subject: remove test class that requires jupiter libs

---
.../hadoop/hbase/master/TestWALFencing.java | 81 -------------------
1 file changed, 81 deletions(-)
delete mode 100644 hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestWALFencing.java

diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestWALFencing.java b/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestWALFencing.java
deleted file mode 100644
index 9341dcd5d9..0000000000
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/master/TestWALFencing.java
+++ /dev/null
@@ -1,81 +0,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.
- */
-package org.apache.hadoop.hbase.master;
-
-import static org.awaitility.Awaitility.await;
-
-import java.io.IOException;
-import java.time.Duration;
-import java.util.Collections;
-import org.apache.hadoop.fs.FileStatus;
-import org.apache.hadoop.fs.Path;
-import org.apache.hadoop.hbase.HBaseTestingUtility;
-import org.apache.hadoop.hbase.TableName;
-import org.apache.hadoop.hbase.client.RegionInfo;
-import org.apache.hadoop.hbase.regionserver.HRegionServer;
-import org.apache.hadoop.hbase.regionserver.Region;
-import org.apache.hadoop.hbase.testclassification.MasterTests;
-import org.apache.hadoop.hbase.testclassification.MediumTests;
-import org.apache.hadoop.hbase.util.RecoverLeaseFSUtils;
-import org.junit.jupiter.api.AfterAll;
-import org.junit.jupiter.api.BeforeAll;
-import org.junit.jupiter.api.Tag;
-import org.junit.jupiter.api.Test;
-
-/**
- * Testcase for HBASE-29797, where the lazy initialized WALProvider may recreate the WAL directory
- * and cause our fencing way loses efficacy.
- */
-@Tag(MasterTests.TAG)
-@Tag(MediumTests.TAG)
-public class TestWALFencing {
-
- private static final HBaseTestingUtility UTIL = new HBaseTestingUtility();
-
- @BeforeAll
- public static void setUp() throws Exception {
- UTIL.startMiniCluster(3);
- UTIL.getAdmin().balancerSwitch(false, true);
- }
-
- @AfterAll
- public static void tearDown() throws IOException {
- UTIL.shutdownMiniCluster();
- }
-
- @Test
- public void testMoveMeta() throws Exception {
- HRegionServer metaRs = UTIL.getRSForFirstRegionInTable(TableName.META_TABLE_NAME);
- HRegionServer otherRs = UTIL.getOtherRegionServer(metaRs);
- // do fencing here, i.e, kill otherRs
- Path splittingDir = UTIL.getMiniHBaseCluster().getMaster().getMasterWalManager()
- .getLogDirs(Collections.singleton(otherRs.getServerName())).get(0);
- for (FileStatus walFile : otherRs.getWALFileSystem().listStatus(splittingDir)) {
- RecoverLeaseFSUtils.recoverFileLease(otherRs.getWALFileSystem(), walFile.getPath(),
- otherRs.getConfiguration());
- }
- // move meta region to otherRs, which should fail and crash otherRs, and then master will try to
- // assign meta region to another rs
- RegionInfo metaRegionInfo = metaRs.getRegions().stream().map(Region::getRegionInfo)
- .filter(RegionInfo::isMetaRegion).findAny().get();
- UTIL.getAdmin().move(metaRegionInfo.getEncodedNameAsBytes(), otherRs.getServerName());
- // make sure that meta region is not on otherRs
- await().during(Duration.ofSeconds(5)).atMost(Duration.ofSeconds(6))
- .until(() -> otherRs.getRegions(TableName.META_TABLE_NAME).isEmpty());
- }
-}