You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@calcite.apache.org by "Michael Mior (JIRA)" <ji...@apache.org> on 2017/03/20 20:25:41 UTC
[jira] [Comment Edited] (CALCITE-1715) Cassandra adapter is broken
by Guava change
[ https://issues.apache.org/jira/browse/CALCITE-1715?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15933476#comment-15933476 ]
Michael Mior edited comment on CALCITE-1715 at 3/20/17 8:25 PM:
----------------------------------------------------------------
Bad news. The Cassandra driver appears to depend on Guava 16.0.1. It works with 18.0, but not with 20.0. This is due to {{Futures.transform}} being renamed to {{Futures.transformAsync}} with the old name finally dropped in 20.0. Easiest solution would be to upgrade to 19.0 instead of 20.0 for the time being. (Assuming this doesn't cause any issues with the rest of Calcite.)
was (Author: michaelmior):
Bad news. The Cassandra driver appears to depend on Guava 16.0.1. It works with 18.0, but not with 20.0. This is due to {{Futures.transform}} being renamed to {{Futures.transformAsync}} with the old name finally dropped in 20.0. Easiest solution would be to upgrade to 19.0 instead of 20.0 for the time being.
> Cassandra adapter is broken by Guava change
> -------------------------------------------
>
> Key: CALCITE-1715
> URL: https://issues.apache.org/jira/browse/CALCITE-1715
> Project: Calcite
> Issue Type: Bug
> Components: cassandra
> Affects Versions: 1.12.0
> Reporter: Michael Mior
>
> The Cassandra driver appears to be incompatible with Guava 20. Works fine when downgrading to Guava 18. Stack trace of the exception produced when trying to connect via sqlline below:
> {noformat}
> java.lang.NoSuchMethodError: com.google.common.util.concurrent.Futures.transform(Lcom/google/common/util/concurrent/ListenableFuture;Lcom/google/common/util/concurrent/AsyncFunction;Ljava/util/concurrent/Executor;)Lcom/google/common/util/concurrent/ListenableFuture;
> at com.datastax.driver.core.Connection.initAsync(Connection.java:182)
> at com.datastax.driver.core.Connection$Factory.open(Connection.java:796)
> at com.datastax.driver.core.ControlConnection.tryConnect(ControlConnection.java:253)
> at com.datastax.driver.core.ControlConnection.reconnectInternal(ControlConnection.java:201)
> at com.datastax.driver.core.ControlConnection.connect(ControlConnection.java:79)
> at com.datastax.driver.core.Cluster$Manager.init(Cluster.java:1483)
> at com.datastax.driver.core.Cluster.init(Cluster.java:159)
> at com.datastax.driver.core.Cluster.connectAsync(Cluster.java:330)
> at com.datastax.driver.core.Cluster.connect(Cluster.java:280)
> at org.apache.calcite.adapter.cassandra.CassandraSchema.<init>(CassandraSchema.java:109)
> at org.apache.calcite.adapter.cassandra.CassandraSchemaFactory.create(CassandraSchemaFactory.java:40)
> at org.apache.calcite.model.ModelHandler.visit(ModelHandler.java:215)
> at org.apache.calcite.model.JsonCustomSchema.accept(JsonCustomSchema.java:45)
> at org.apache.calcite.model.ModelHandler.visit(ModelHandler.java:143)
> at org.apache.calcite.model.ModelHandler.<init>(ModelHandler.java:85)
> at org.apache.calcite.jdbc.Driver$1.onConnectionInit(Driver.java:104)
> at org.apache.calcite.avatica.UnregisteredDriver.connect(UnregisteredDriver.java:145)
> at sqlline.DatabaseConnection.connect(DatabaseConnection.java:157)
> at sqlline.DatabaseConnection.getConnection(DatabaseConnection.java:203)
> at sqlline.Commands.connect(Commands.java:1064)
> at sqlline.Commands.connect(Commands.java:996)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at sqlline.ReflectiveCommandHandler.execute(ReflectiveCommandHandler.java:38)
> at sqlline.SqlLine.dispatch(SqlLine.java:809)
> at sqlline.SqlLine.begin(SqlLine.java:686)
> at sqlline.SqlLine.start(SqlLine.java:398)
> at sqlline.SqlLine.main(SqlLine.java:291)
> {noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)