Skip to content

Update HBASE to 2.3.7 in PXF#51

Merged
ostinru merged 1 commit intoMDB_STABLEfrom
pxf-hbase
Feb 18, 2026
Merged

Update HBASE to 2.3.7 in PXF#51
ostinru merged 1 commit intoMDB_STABLEfrom
pxf-hbase

Conversation

@ostinru
Copy link
Copy Markdown
Contributor

@ostinru ostinru commented Feb 18, 2026

hbase-client update

Update hbase-client from 1.3.2 to 2.3.7 (latest version with minimal 3rd-party library updates) with following decision made:

  • Use hadoop 2 version - Despite of the fact that we are using hadoop 3 in automation tests, we still using hadoop2 libs for all other connectors.
  • Use shaded version of libraries when it relocates java-packages to new namespaces
  • Use non-shaded version of libraries when it just bundles several jars to single fat-jar. Fat jars hides dependencies from gradle, however puts classes on classpath. This will lead to unpredictable issues.

Fortunately, hbase-client:2.3.7 depends on hadoop-2.10.0 that we are using! No changes here.

update details

runtimeClasspath - Runtime classpath of source set 'main'.
\--- org.apache.hbase:hbase-client:2.3.7
     +--- org.apache.hbase.thirdparty:hbase-shaded-protobuf:3.3.0
     +--- org.apache.hbase:hbase-common:2.3.7
     |    +--- org.apache.hbase:hbase-logging:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0
     |    |    \--- com.google.errorprone:error_prone_annotations:2.3.4
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-gson:3.3.0
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-netty:3.3.0
     |    +--- commons-codec:commons-codec:1.13
     |    +--- org.apache.commons:commons-lang3:3.9
     |    +--- commons-io:commons-io:2.11.0
     |    +--- com.google.protobuf:protobuf-java:2.5.0
     |    +--- org.apache.htrace:htrace-core4:4.2.0-incubating
     |    +--- org.apache.commons:commons-crypto:1.0.0
     |    +--- org.apache.yetus:audience-annotations:0.5.0
     |    \--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2
     +--- org.apache.hbase:hbase-hadoop-compat:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     |    +--- org.apache.hbase:hbase-metrics-api:2.3.7
     |    |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    |    +--- org.apache.commons:commons-lang3:3.9
     |    |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- org.apache.hbase:hbase-hadoop2-compat:2.3.7
     |    +--- org.apache.hbase:hbase-hadoop-compat:2.3.7 (*)
     |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    +--- org.apache.hbase:hbase-metrics:2.3.7
     |    |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     |    |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    |    +--- org.apache.hbase:hbase-metrics-api:2.3.7 (*)
     |    |    +--- io.dropwizard.metrics:metrics-core:3.2.6
     |    +--- org.apache.hbase:hbase-metrics-api:2.3.7 (*)
     |    +--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2 (*)
     |    +--- javax.activation:javax.activation-api:1.2.0
     |    +--- org.apache.commons:commons-lang3:3.9
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- org.apache.hbase:hbase-protocol-shaded:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-protobuf:3.3.0
     +--- org.apache.hbase:hbase-protocol:2.3.7
     |    +--- com.google.protobuf:protobuf-java:2.5.0
     +--- commons-codec:commons-codec:1.13
     +--- commons-io:commons-io:2.11.0
     +--- org.apache.commons:commons-lang3:3.9
     +--- org.slf4j:slf4j-api:1.7.30 -> 1.7.36
     +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- com.google.protobuf:protobuf-java:2.5.0
     +--- org.apache.hbase.thirdparty:hbase-shaded-netty:3.3.0
     +--- org.apache.zookeeper:zookeeper:3.5.7 (*)
     +--- org.apache.htrace:htrace-core4:4.2.0-incubating
     +--- org.jruby.jcodings:jcodings:1.0.18
     +--- org.jruby.joni:joni:2.1.11
     |    \--- org.jruby.jcodings:jcodings:1.0.13 -> 1.0.18
     +--- io.dropwizard.metrics:metrics-core:3.2.6 (*)
     +--- org.apache.commons:commons-crypto:1.0.0
     +--- org.apache.yetus:audience-annotations:0.5.0
     +--- org.apache.hadoop:hadoop-auth:2.10.0 -> 2.10.2 (*)
     \--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2 (*)

(*) - dependencies omitted (listed previously)

Other changes

  • Automation tests: upgrade hbase to 2.3.7

### hbase-client update

Update `hbase-client` from `1.3.2` to `2.3.7` (latest version with minimal 3rd-party library updates) with following decision made:
* Use hadoop 2 version - Despite of the fact that we are using hadoop 3 in automation tests, we still using hadoop2 libs for all other connectors.
* Use shaded version of libraries when it relocates java-packages to new namespaces
* Use non-shaded version of libraries when it just bundles several jars to single fat-jar. Fat jars hides dependencies from gradle, however puts classes on classpath. This will lead to unpredictable issues.

Fortunately, `hbase-client:2.3.7` depends on `hadoop-2.10.0` that we are using! No changes here.

### update details

```
runtimeClasspath - Runtime classpath of source set 'main'.
\--- org.apache.hbase:hbase-client:2.3.7
     +--- org.apache.hbase.thirdparty:hbase-shaded-protobuf:3.3.0
     +--- org.apache.hbase:hbase-common:2.3.7
     |    +--- org.apache.hbase:hbase-logging:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0
     |    |    \--- com.google.errorprone:error_prone_annotations:2.3.4
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-gson:3.3.0
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-netty:3.3.0
     |    +--- commons-codec:commons-codec:1.13
     |    +--- org.apache.commons:commons-lang3:3.9
     |    +--- commons-io:commons-io:2.11.0
     |    +--- com.google.protobuf:protobuf-java:2.5.0
     |    +--- org.apache.htrace:htrace-core4:4.2.0-incubating
     |    +--- org.apache.commons:commons-crypto:1.0.0
     |    +--- org.apache.yetus:audience-annotations:0.5.0
     |    \--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2
     +--- org.apache.hbase:hbase-hadoop-compat:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     |    +--- org.apache.hbase:hbase-metrics-api:2.3.7
     |    |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    |    +--- org.apache.commons:commons-lang3:3.9
     |    |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- org.apache.hbase:hbase-hadoop2-compat:2.3.7
     |    +--- org.apache.hbase:hbase-hadoop-compat:2.3.7 (*)
     |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    +--- org.apache.hbase:hbase-metrics:2.3.7
     |    |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     |    |    +--- org.apache.hbase:hbase-common:2.3.7 (*)
     |    |    +--- org.apache.hbase:hbase-metrics-api:2.3.7 (*)
     |    |    +--- io.dropwizard.metrics:metrics-core:3.2.6
     |    +--- org.apache.hbase:hbase-metrics-api:2.3.7 (*)
     |    +--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2 (*)
     |    +--- javax.activation:javax.activation-api:1.2.0
     |    +--- org.apache.commons:commons-lang3:3.9
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- org.apache.hbase:hbase-protocol-shaded:2.3.7
     |    +--- org.apache.hbase.thirdparty:hbase-shaded-protobuf:3.3.0
     +--- org.apache.hbase:hbase-protocol:2.3.7
     |    +--- com.google.protobuf:protobuf-java:2.5.0
     +--- commons-codec:commons-codec:1.13
     +--- commons-io:commons-io:2.11.0
     +--- org.apache.commons:commons-lang3:3.9
     +--- org.slf4j:slf4j-api:1.7.30 -> 1.7.36
     +--- org.apache.hbase.thirdparty:hbase-shaded-miscellaneous:3.3.0 (*)
     +--- com.google.protobuf:protobuf-java:2.5.0
     +--- org.apache.hbase.thirdparty:hbase-shaded-netty:3.3.0
     +--- org.apache.zookeeper:zookeeper:3.5.7 (*)
     +--- org.apache.htrace:htrace-core4:4.2.0-incubating
     +--- org.jruby.jcodings:jcodings:1.0.18
     +--- org.jruby.joni:joni:2.1.11
     |    \--- org.jruby.jcodings:jcodings:1.0.13 -> 1.0.18
     +--- io.dropwizard.metrics:metrics-core:3.2.6 (*)
     +--- org.apache.commons:commons-crypto:1.0.0
     +--- org.apache.yetus:audience-annotations:0.5.0
     +--- org.apache.hadoop:hadoop-auth:2.10.0 -> 2.10.2 (*)
     \--- org.apache.hadoop:hadoop-common:2.10.0 -> 2.10.2 (*)

(*) - dependencies omitted (listed previously)
```

### Other changes

* Automation tests: upgrade hbase to 2.3.7
Copy link
Copy Markdown

@leborchuk leborchuk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@ostinru ostinru marked this pull request as ready for review February 18, 2026 14:42
@ostinru
Copy link
Copy Markdown
Contributor Author

ostinru commented Feb 18, 2026

Tests: Passed: 1003, Failed: 97, Skipped: 46

@ostinru ostinru merged commit 34f6de3 into MDB_STABLE Feb 18, 2026
16 of 23 checks passed
@ostinru ostinru deleted the pxf-hbase branch February 18, 2026 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants