【问题标题】:Trouble compiling scala code using the astyanax client使用 astyanax 客户端编译 scala 代码时遇到问题
【发布时间】:2013-04-25 17:35:41
【问题描述】:
val CF_USER_STATS = new ColumnFamily[java.lang.Long, String]("Standard2", LongSerializer.get, StringSerializer.get)

val m: MutationBatch = keyspace.prepareMutationBatch()

m.withRow(CF_USER_STATS, "acct1234").incrementCounterColumn("CounterColumn1", 1)

m.execute()

以上是创建一个列族,旨在用作 Cassandra 中的计数器。无论出于何种原因,编译都失败了:

type mismatch;
[error]  found   : com.netflix.astyanax.model.ColumnFamily[Long,String]
[error]  required: com.netflix.astyanax.model.ColumnFamily[Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: java.io.Serializable] with java.io.Serializable] with java.io.Serializable] with java.io.Serializable,String]
[error] Note: Long <: Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: java.io.Serializable] with java.io.Serializable] with java.io.Serializable] with java.io.Serializable, but Java-defined class ColumnFamily is invariant in type K.
[error] You may wish to investigate a wildcard type such as `_ <: Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: Comparable[_ >: String with Long <: java.io.Serializable] with java.io.Serializable] with java.io.Serializable] with java.io.Serializable`. (SLS 3.2.10)
[error]   m.withRow(CF_USER_STATS, "acct1234")

【问题讨论】:

    标签: scala cassandra astyanax


    【解决方案1】:

    带有描述的 Astyanax ColumnFamily 语法

    ColumnFamily<String, String> CF = 
         new ColumnFamily<String, String>(
         "Standard1",              // Column Family Name
         StringSerializer.get(),   // Key Serializer
         StringSerializer.get());  // Column Serializer
    

    现在,在您的情况下,您将行键提到为 Long 类型,将列提到为字符串,并且在更新计数器时,您使用键作为字符串,这就是 类型不匹配的原因。

    【讨论】:

      猜你喜欢
      • 2018-09-23
      • 2020-08-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-19
      • 2012-04-09
      相关资源
      最近更新 更多