自从我们升级到Scala2.13之后,访问Cassandra中Date列的查询失败,并出现异常: Unable to make unsigned int (for date) from:'1601856000000‘
这个值显然太大了,不适合无符号整型。根据Cassandra documentation,date以无符号整数的形式存储,表示自纪元以来的天数
但是,当我查看幻影- Date代码时,我发现它故意从所有支持的DateSerializer类型中获取millisSinceEpoch值,这是异常中的值
专栏:object date extends DateColumn with ClusteringOrder with Descending
查询/方法:
select
.where(_.userId eqs userId)
.and(_.date gte startDate)
.fetch()(implicitly, executionContext)Phantom-dsl版本2.59.0
我已经尝试使用LocalDate (同样的问题)并将列表示为StringColumn,如果我将日期格式化为YYYY-MM-dd,但是无法将结果集中的值解析为日期,则此方法适用于查询
这里我漏掉了什么?
发布于 2020-11-19 18:03:07
过了一段时间,一位同事提出了一个解决方案:如果将列定义为com.datastax.driver.core.LocalDate,它就可以工作
https://stackoverflow.com/questions/64682688
复制相似问题