[ 
https://issues.apache.org/jira/browse/FLINK-4091?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15339201#comment-15339201
 ] 

ASF GitHub Bot commented on FLINK-4091:
---------------------------------------

GitHub user zentol opened a pull request:

    https://github.com/apache/flink/pull/2133

    [FLINK-4091] Fix Guava shading in Cassandra connector

    This PR modifies the guava shading in the Cassandra connector. It no longer 
uses the same pattern as flink-dist which lead to version conflicts.

You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/zentol/flink 4091

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/2133.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #2133
    
----
commit 6e8fdd150fd45e86c2d4df4bfc7384f26472d2c9
Author: zentol <[email protected]>
Date:   2016-06-20T09:15:45Z

    [FLINK-4091] Fix Guava shading in Cassandra connector

----


> flink-connector-cassandra has conflicting guava version
> -------------------------------------------------------
>
>                 Key: FLINK-4091
>                 URL: https://issues.apache.org/jira/browse/FLINK-4091
>             Project: Flink
>          Issue Type: Bug
>          Components: Streaming Connectors
>    Affects Versions: 1.1.0
>         Environment: MacOSX, 1.10-SNAPSHOT (head is 
> 1a6bab3ef76805685044cf4521e32315169f9033)
>            Reporter: Dominik Bruhn
>            Assignee: Chesnay Schepler
>
> The newly merged cassandra streaming connector has an issue with its guava 
> dependency.
> The build-process for flink-connector-cassandra creates shaded JAR file which 
> contains the connector, the datastax cassandra driver plus in 
> org.apache.flink.shaded a shaded copy of guava. 
> The datastax cassandra driver calls into Futures.withFallback ([1]) which is 
> present in this guava version. This also works inside the 
> flink-connector-cassandra jar.
> Now the actual build-process for Flink happens and builds another shaded JAR 
> and creates the flink-dist.jar. Inside this JAR, there is also a shaded 
> version of guava inside org.apache.flink.shaded.
> Now the issue: The guava version which is in the flink-dist.jar is not 
> compatible and doesn't contain the Futures.withFallback which the datastax 
> driver is using.
> This leads into the following issue: You can without any problems launch a 
> flink task which uses the casandra driver locally (so through the 
> mini-cluster) because that is never using the flink-dist.jar. 
> BUT: As soon as you are trying to start this job on a flink cluster (which 
> uses the flink-dist.jar), the job breaks with the following exception:
> https://gist.github.com/theomega/5ab9b14ffb516b15814de28e499b040d
> You can inspect this by opening the 
> flink-connector-cassandra_2.11-1.1-SNAPSHOT.jar and the 
> flink-dist_2.11-1.1-SNAPSHOT.jar in a java decompiler.
> I don't know a good solution here: Perhaps it would be one solution to shade 
> the guava for the cassandra-driver somewhere else than at 
> org.apache.flink.shaded.
> [1]: 
> https://google.github.io/guava/releases/19.0/api/docs/com/google/common/util/concurrent/Futures.html#withFallback(com.google.common.util.concurrent.ListenableFuture,
>  com.google.common.util.concurrent.FutureFallback, 
> java.util.concurrent.Executor)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to