类型作为自定义类型返回"/>
持续时间列类型作为自定义类型返回
我在卡桑德拉有下表:
create table duration_table
(
id int primary key,
duration_col duration
);
Cassandra DB 版本为 4.0.5,cassandra nodejs 驱动版本为 4.6.4。 当我通过
请求表元数据时client.metadata.getTable(keyspaceName, "duration_table")
结果是:
...,
{
...,
columns: [
...,
{
"name": "duration_col",
"type": {
"code": 21,
"info": null,
"options": {
"frozen": false
}
},
"isStatic": false
}
]
}
duration_col返回的type code为21,对应cassandra-driver中的types.dataTypes.duration枚举。 但是,当我通过 cassandra 驱动程序客户端发送以下请求时:
client.execute("SELECT * FROM duration_table");
结果如下:
{
...,
columns: [
...,
{
"name": "duration_col",
"type": {
"code": 0,
"type": null,
"info": "org.apache.cassandra.db.marshal.DurationType"
}
}
]
}
这里的返回类型是0,对应驱动中的types.dataTypes.custom枚举。 所以,我的问题是:
- 为什么同一张表同列的类型不同?
- 是否保证在这种情况下始终存在值为“org.apache.cassandra.db.marshal.DurationType”的 ResultSet 中返回的“信息”字段?我的意思是我可以将此字段视为持续时间列类型的常量吗?
- 是否有任何其他 cassandra 类型作为自定义类型返回但实际上它们不是自定义类型?
更多推荐
持续时间列类型作为自定义类型返回
发布评论