我们正在运行多个Kubernetes集群,运行Cassandra。我们通常的步骤是重新启动卡桑德拉吊舱,每次登录并提交一个nodetool drain,然后触发对这个吊舱的重新开发。但是当吊舱重新启动时,经常会出现错误,例如
ERROR [HintsDispatcher:2] 2017-08-07 11:09:32,489 HintsDispatchExecutor.java:243 - Failed to dispatch hints file 5fdd139d-4465-4825-85ef-f380bddcb67d-1502100535128-1.hints: file is corrupted ({})那些损坏的文件阻止了卡桑德拉的启动。有没有办法让Cassandra冲过所有缓冲区,在停止之前停止写,以确保没有留下任何损坏的文件?
发布于 2017-08-07 15:12:21
您可以尝试禁用暗示的切换,或者尝试在疏漏之后截断提示:
节点工具集群提示
如果您关心一致性,则在处理之后运行修复。
警告:--如果您正在使用任何一致性设置或RF=1,这可能会导致一些数据丢失。
https://stackoverflow.com/questions/45545615
复制相似问题