You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Drop Spark BigTable version to unlock DataProc submission (#167)
## Summary
While testing the Flink side of things, I noticed that our DataProc
submission was broken due to some opencensus version mismatches:
```
[info] com.google.common.util.concurrent.ExecutionError: java.lang.NoSuchMethodError: 'io.opencensus.tags.TagContext io.opencensus.tags.unsafe.ContextUtils.getValue(io.grpc.Context)'
[info] at com.google.common.util.concurrent.Futures.wrapAndThrowUnchecked(Futures.java:1387)
[info] at com.google.common.util.concurrent.Futures.getUnchecked(Futures.java:1380)
[info] at com.google.api.gax.rpc.ApiExceptions.callAndTranslateApiException(ApiExceptions.java:53)
[info] at com.google.api.gax.rpc.UnaryCallable.call(UnaryCallable.java:112)
[info] at com.google.cloud.dataproc.v1.JobControllerClient.submitJob(JobControllerClient.java:435)
[info] at com.google.cloud.dataproc.v1.JobControllerClient.submitJob(JobControllerClient.java:404)
[info] at ai.chronon.integrations.cloud_gcp.DataprocSubmitter.submit(DataprocSubmitter.scala:70)
[info] at ai.chronon.integrations.cloud_gcp.test.DataprocSubmitterTest.$anonfun$new$4(DataprocSubmitterTest.scala:77)
[info] at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23)
[info] at org.scalatest.OutcomeOf.outcomeOf(OutcomeOf.scala:85)
[info] ...
[info] Cause: java.lang.NoSuchMethodError: 'io.opencensus.tags.TagContext io.opencensus.tags.unsafe.ContextUtils.getValue(io.grpc.Context)'
[info] at io.opencensus.implcore.tags.CurrentTagMapUtils.getCurrentTagMap(CurrentTagMapUtils.java:37)
[info] at io.opencensus.implcore.tags.TaggerImpl.getCurrentTagContext(TaggerImpl.java:51)
[info] at io.opencensus.implcore.tags.TaggerImpl.getCurrentTagContext(TaggerImpl.java:31)
[info] at io.grpc.census.CensusStatsModule$StatsClientInterceptor.interceptCall(CensusStatsModule.java:801)
[info] at io.grpc.ClientInterceptors$InterceptorChannel.newCall(ClientInterceptors.java:156)
[info] at com.google.api.gax.grpc.GrpcChannelUUIDInterceptor.interceptCall(GrpcChannelUUIDInterceptor.java:52)
[info] at io.grpc.ClientInterceptors$InterceptorChannel.newCall(ClientInterceptors.java:156)
[info] at com.google.api.gax.grpc.GrpcHeaderInterceptor.interceptCall(GrpcHeaderInterceptor.java:80)
[info] at io.grpc.ClientInterceptors$InterceptorChannel.newCall(ClientInterceptors.java:156)
[info] at com.google.api.gax.grpc.GrpcMetadataHandlerInterceptor.interceptCall(GrpcMetadataHandlerInterceptor.java:54)
[info] ...
```
Tried playing with different opencensus versions + lib management etc
and @tchow-zlai pointed out that this was due to the spark-bigtable dep.
We don't need this dep for the mainstream as we're using the BQ export
data query to load data into BT. The Spark-Bt connector is required
primarily for docker quickstart testing. So in this PR, I've yanked the
dep to re-enable the dataproc submission and reworked the load-data
script and Dockerfile to download the spark-bigtable + slf4j jars to
pass them in only for the Spark2bigTableLoader app in the docker setup.
## Checklist
- [ ] Added Unit Tests
- [ ] Covered by existing CI
- [X] Integration tested
- [ ] Documentation update
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Updated Docker image to include custom JAR files for BigTable and
logging
- Modified Spark configuration to use updated Bigtable dependencies
- Enhanced data loading script with improved JAR file handling
- **Dependency Updates**
- Replaced Spark-specific BigTable connector with general Bigtable HBase
library
- Updated Google Cloud library dependencies to latest versions
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
Copy file name to clipboardExpand all lines: build.sbt
-1Lines changed: 0 additions & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -217,7 +217,6 @@ lazy val cloud_gcp = project
217
217
libraryDependencies +="com.google.cloud.bigdataoss"%"gcsio"%"3.0.3", // need it for https://github.com/GoogleCloudDataproc/hadoop-connectors/blob/master/gcsio/src/main/java/com/google/cloud/hadoop/gcsio/GoogleCloudStorageFileSystem.java
0 commit comments