Couchbase:使用索引查询 Nickel,但索引不会立即更新
Couchbase : querying with Nickel using indexes, but the indexes do not get updated immediatel
我在使用 Nickel 查询 Couchbase 时遇到问题,我的查询是
SELECT *
FROM `user`
USE INDEX (ord_ts_new_idx USING GSI)
WHERE META(`user`).id LIKE 'ord::27::%'
ORDER BY ts DESC
OFFSET 0 LIMIT 5;
但是这里我得到的值没有更新,但是如果我在一段时间后发出相同的请求它会给我想要的输出。
我用来制作索引的查询是
CREATE INDEX ord_ts_new_idx ON `user-account`(`ts`) USING GSI;
其中 ts
是 TimeStamp
。
那么请问有什么方法可以让我始终获取更新的数据吗?
提前致谢。感谢任何类型的帮助。
你没有说你用的是哪个SDK,但是你用的是客户端SDK? N1QL 提供了一个 scan_consistency 参数,因此请确保您的客户端 SDK 使用此参数。所以去 here and find your language of choice. For example, here is the Java SDK section,在 "read your own write."
下看
请注意,对所有内容执行此操作可能会降低性能,因为在提供结果之前需要刷新索引。所以请务必测试一下。
我在使用 Nickel 查询 Couchbase 时遇到问题,我的查询是
SELECT *
FROM `user`
USE INDEX (ord_ts_new_idx USING GSI)
WHERE META(`user`).id LIKE 'ord::27::%'
ORDER BY ts DESC
OFFSET 0 LIMIT 5;
但是这里我得到的值没有更新,但是如果我在一段时间后发出相同的请求它会给我想要的输出。
我用来制作索引的查询是
CREATE INDEX ord_ts_new_idx ON `user-account`(`ts`) USING GSI;
其中 ts
是 TimeStamp
。
那么请问有什么方法可以让我始终获取更新的数据吗?
提前致谢。感谢任何类型的帮助。
你没有说你用的是哪个SDK,但是你用的是客户端SDK? N1QL 提供了一个 scan_consistency 参数,因此请确保您的客户端 SDK 使用此参数。所以去 here and find your language of choice. For example, here is the Java SDK section,在 "read your own write."
下看请注意,对所有内容执行此操作可能会降低性能,因为在提供结果之前需要刷新索引。所以请务必测试一下。