尝试保存数据到Cassandra(使用Scala)时,我遇到了以下异常:
我正在使用YARN,并且已经将com.google.**阴影化以避免Guava符号冲突。
下面是代码片段:
任何帮助都将不胜感激。 更新 根据要求添加来自pom文件的详细信息:
请注意,我并不总是会遇到这个错误,但它会随机出现,这在生产环境中更加危险。java.lang.ClassCastException: com.datastax.driver.core.DefaultResultSetFuture 无法转换为 com.google.common.util.concurrent.ListenableFuture
我正在使用YARN,并且已经将com.google.**阴影化以避免Guava符号冲突。
下面是代码片段:
rdd.saveToCassandra(keyspace,"movie_attributes", SomeColumns("movie_id","movie_title","genre"))
任何帮助都将不胜感激。 更新 根据要求添加来自pom文件的详细信息:
<dependency>
<groupId>com.datastax.spark</groupId>
<artifactId>spark-cassandra-connector_2.10</artifactId>
<version>1.5.0</version>
</dependency>
<dependency>
<groupId>com.datastax.spark</groupId>
<artifactId>spark-cassandra-connector-java_2.10</artifactId>
<version>1.5.0</version>
</dependency>
**Shading guava**
<relocation> <!-- Conflicts between Cassandra Java driver and YARN -->
<pattern>com.google</pattern>
<shadedPattern>oryx.com.google</shadedPattern>
<includes>
<include>com.google.common.**</include>
</includes>
</relocation>
Spark版本:1.5.2 Cassandra版本:2.2.3
sbt myProject/test
失败了。 - rabejens