go - Aerospike 扫描返回状态为“完成(放弃响应超时)”
问题描述
有时返回的数据比我们的 aerospike 数据库中实际可用的数据少。检查日志时,注意到以下条目:
INFO (scan): (scan.c:614) starting basic scan job {id} {namespace:set} priority 2, sample-pct 100
INFO (scan): (scan.c:692) finished basic scan job {id} (-2)
如果我们通过 检查扫描show scans
,我们会在表中看到以下条目:
trid: {id} | job-progress: 49.78 | job-type: basic | status: "done (abandoned-response-timeout)"
根据我们遇到的超时状态,这就是为什么没有返回所有数据的原因。然而,在这种情况下,我们宁愿期待一条错误消息,而不是返回更少的数据。
我们正在运行3.15.1.4
带有三个 aerospike 节点/pod 的 aerospike 版本。我们正在使用 go-client 与 Aerospike 数据库进行交互。
有没有办法增加超时?
解决方案
Aerospike 现在的版本为 5.6.0.9。请升级,您将经历中间跳转版本以获取最新版本,因此需要仔细计划。扫描已大修。引入了 Set-index 以真正加快对在包含其他大集合或大量记录的否则非常大的命名空间中具有非常少记录的集合的扫描。
推荐阅读
- python - 如何使用 Nuitka 从 Python 获取已编译二进制文件的当前路径?
- azure-devops - Azure DevOps 组织设置与项目级别的成本
- java - 为什么 lombok 不提供继承属性的 getter 方法?
- c# - 获取活动 MAC 地址的问题
- ios - 如何在请求网络中应用等待?
- mysql - 忽略我“跳过”的记录?
- javascript - React Native 最小/准系统设置
- c# - 在 ASP.NET 应用程序中关闭 MySQL 连接的最佳方法是什么?
- python - 如何在python的特定区域插入json代码?
- python - 如何将标签与 tkinter 文本小部件中的文本一起保存?