[
https://issues.apache.org/jira/browse/BEAM-2523?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Kenneth Knowles updated BEAM-2523:
----------------------------------
Description:
Putting the SDK, DataflowRunner, and GCP IO on the same classpath, results in
(at least) three versions of protobuf getting pulled in. These should be made
to converge. We should consider using maven enforcer, which I think can check
this.
{code}
[INFO] com.example:foo:jar:0.1
[INFO] +- org.apache.beam:beam-sdks-java-core:jar:2.0.0:compile
[INFO] +-
org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.0.0:compile
[INFO] | +-
org.apache.beam:beam-sdks-java-extensions-protobuf:jar:2.0.0:compile
[INFO] | | \- (com.google.protobuf:protobuf-java:jar:3.2.0:compile - omitted
for duplicate)
[INFO] | +- com.google.api.grpc:grpc-google-pubsub-v1:jar:0.1.0:compile
[INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.0.0:compile - omitted
for conflict with 3.2.0)
[INFO] | | \- com.google.api.grpc:grpc-google-iam-v1:jar:0.1.0:compile
[INFO] | | \- (com.google.protobuf:protobuf-java:jar:3.0.0:compile -
omitted for conflict with 3.2.0)
[INFO] | +-
com.google.cloud.datastore:datastore-v1-proto-client:jar:1.4.0:compile
[INFO] | | +-
(com.google.cloud.datastore:datastore-v1-protos:jar:1.3.0:compile - omitted for
duplicate)
[INFO] | | +- (com.google.http-client:google-http-client:jar:1.20.0:compile -
omitted for conflict with 1.22.0)
[INFO] | | +-
com.google.http-client:google-http-client-protobuf:jar:1.20.0:compile
[INFO] | | | +-
(com.google.http-client:google-http-client:jar:1.20.0:compile - omitted for
conflict with 1.22.0)
[INFO] | | | \- (com.google.protobuf:protobuf-java:jar:2.4.1:compile -
omitted for conflict with 3.2.0)
[INFO] | +- com.google.cloud.datastore:datastore-v1-protos:jar:1.3.0:compile
[INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.0.0:compile - omitted
for conflict with 3.2.0)
[INFO] | +- com.google.cloud.bigtable:bigtable-protos:jar:0.9.6.2:compile
[INFO] | | +- (com.google.code.findbugs:jsr305:jar:3.0.1:compile - omitted
for duplicate)
[INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.2.0:compile - omitted
for duplicate)
{code}
Incidentally, the dependency plugin stopped supporting the verbose tree, so we
can't even visually inspect this except by downgrading.
> GCP IO exposes protobuf on its API surface, causing user pain
> -------------------------------------------------------------
>
> Key: BEAM-2523
> URL: https://issues.apache.org/jira/browse/BEAM-2523
> Project: Beam
> Issue Type: Bug
> Components: runner-dataflow
> Reporter: Kenneth Knowles
> Assignee: Kenneth Knowles
> Fix For: 2.1.0
>
>
> Putting the SDK, DataflowRunner, and GCP IO on the same classpath, results in
> (at least) three versions of protobuf getting pulled in. These should be made
> to converge. We should consider using maven enforcer, which I think can check
> this.
> {code}
> [INFO] com.example:foo:jar:0.1
> [INFO] +- org.apache.beam:beam-sdks-java-core:jar:2.0.0:compile
> [INFO] +-
> org.apache.beam:beam-sdks-java-io-google-cloud-platform:jar:2.0.0:compile
> [INFO] | +-
> org.apache.beam:beam-sdks-java-extensions-protobuf:jar:2.0.0:compile
> [INFO] | | \- (com.google.protobuf:protobuf-java:jar:3.2.0:compile -
> omitted for duplicate)
> [INFO] | +- com.google.api.grpc:grpc-google-pubsub-v1:jar:0.1.0:compile
> [INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.0.0:compile -
> omitted for conflict with 3.2.0)
> [INFO] | | \- com.google.api.grpc:grpc-google-iam-v1:jar:0.1.0:compile
> [INFO] | | \- (com.google.protobuf:protobuf-java:jar:3.0.0:compile -
> omitted for conflict with 3.2.0)
> [INFO] | +-
> com.google.cloud.datastore:datastore-v1-proto-client:jar:1.4.0:compile
> [INFO] | | +-
> (com.google.cloud.datastore:datastore-v1-protos:jar:1.3.0:compile - omitted
> for duplicate)
> [INFO] | | +- (com.google.http-client:google-http-client:jar:1.20.0:compile
> - omitted for conflict with 1.22.0)
> [INFO] | | +-
> com.google.http-client:google-http-client-protobuf:jar:1.20.0:compile
> [INFO] | | | +-
> (com.google.http-client:google-http-client:jar:1.20.0:compile - omitted for
> conflict with 1.22.0)
> [INFO] | | | \- (com.google.protobuf:protobuf-java:jar:2.4.1:compile -
> omitted for conflict with 3.2.0)
> [INFO] | +- com.google.cloud.datastore:datastore-v1-protos:jar:1.3.0:compile
> [INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.0.0:compile -
> omitted for conflict with 3.2.0)
> [INFO] | +- com.google.cloud.bigtable:bigtable-protos:jar:0.9.6.2:compile
> [INFO] | | +- (com.google.code.findbugs:jsr305:jar:3.0.1:compile - omitted
> for duplicate)
> [INFO] | | +- (com.google.protobuf:protobuf-java:jar:3.2.0:compile -
> omitted for duplicate)
> {code}
> Incidentally, the dependency plugin stopped supporting the verbose tree, so
> we can't even visually inspect this except by downgrading.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)