无效查询日期列上的查询异常:无法从以下位置创建无符号的 int(用于日期):'1601856000000'



自从我们升级到Scala 2.13之后,访问Cassandra中Date列的查询失败,但出现了一个异常:无法从‘1601856000000’中生成unsigned int(用于日期(

这个值显然太大了,无法放入无符号的int。根据Cassandra文档,日期存储为无符号int,表示自epoch 以来的天数

但是,当我查看虚幻的dsl DateSerializer代码时,我发现它故意从所有支持的Date类型中取millisInceEpoch值,这是异常中的值

列:object date extends DateColumn with ClusteringOrder with Descending

查询/方法:

select
.where(_.userId eqs userId)
.and(_.date gte startDate)
.fetch()(implicitly, executionContext)

幻影dsl版本2.59.0

已经尝试使用LocalDate(同样的问题(并将该列表示为StringColumn,如果我将日期格式化为YYYY-MM-dd,则该列适用于查询,但结果集中的值无法解析为日期

我在这里错过了什么?

过了一段时间,一位同事想出了一个解决方案:如果您将列定义为com.datatax.river.core.LocalDate,它确实可以

最新更新