This is an automated email from the ASF dual-hosted git repository.
david-streamlio pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar-connectors.git
The following commit(s) were added to refs/heads/master by this push:
new 89219f05 [fix][io] Pin opentelemetry-semconv to a version the HBase
client can use (#102)
89219f05 is described below
commit 89219f05b2e19f6d482d6d33b11c490ff607d0d9
Author: David Kjerrumgaard <[email protected]>
AuthorDate: Fri Jul 10 14:32:18 2026 -0700
[fix][io] Pin opentelemetry-semconv to a version the HBase client can use
(#102)
hbase-client references io.opentelemetry.semconv.SemanticAttributes when
building a trace span on every table operation. That class was removed
after the ~1.30 semconv line, but the shared platform force-upgrades
semconv to 1.37.0, so the sink throws NoClassDefFoundError on its first
HBase call — the connector cannot write in a current build.
Exclude the platform-managed semconv and pin 1.29.0-alpha (the version
hbase-client declares), which still ships SemanticAttributes. After the
change :hbase:runtimeClasspath resolves semconv to 1.29.0-alpha and the
class is present.
---
hbase/build.gradle.kts | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/hbase/build.gradle.kts b/hbase/build.gradle.kts
index be1f1e5c..970a33d2 100644
--- a/hbase/build.gradle.kts
+++ b/hbase/build.gradle.kts
@@ -21,6 +21,15 @@ plugins {
id("pulsar-connectors.java-conventions")
id("pulsar-connectors.nar-conventions")
}
+
+// hbase-client references io.opentelemetry.semconv.SemanticAttributes when
building a trace span
+// on every table operation. That class was removed after the ~1.30 semconv
line, but the shared
+// platform force-upgrades semconv to 1.37.0, so the sink throws
NoClassDefFoundError on its first
+// HBase call. Drop the platform-managed version and pin the version
hbase-client actually needs.
+pulsarConnectorsDependencies {
+ exclude(libs.opentelemetry.semconv)
+}
+
dependencies {
implementation(libs.pulsar.io.core)
implementation(libs.pulsar.functions.instance)
@@ -30,4 +39,5 @@ dependencies {
implementation(libs.guava)
implementation(libs.hbase.client)
implementation(libs.hbase.common)
+
implementation("io.opentelemetry.semconv:opentelemetry-semconv:1.29.0-alpha")
}