cassandra - upgradesstables 在 dse cassandra 升级中不起作用
问题描述
我正在将 DSE cassndra 从 4.8.16 升级到 5.0.15 ,但是当我执行nodetool upgradesstables
时出现以下错误:
error: commitlog directory '/var/lib/cassandra/commitlog' or, if it does not already exist, an existing parent directory of it, is not readable and writable for the DSE. Check file system and configuration.
-- StackTrace --
org.apache.cassandra.exceptions.ConfigurationException: commitlog directory '/var/lib/cassandra/commitlog' or, if it does not already exist, an existing parent directory of it, is not readable and writable for the DSE. Check file system and configuration.
at org.apache.cassandra.config.DatabaseDescriptor.resolveAndCheckDirectory(DatabaseDescriptor.java:798)
at org.apache.cassandra.config.DatabaseDescriptor.applyConfig(DatabaseDescriptor.java:535)
at org.apache.cassandra.config.DatabaseDescriptor.<clinit>(DatabaseDescriptor.java:131)
at org.apache.cassandra.tools.NodeProbe.checkJobs(NodeProbe.java:274)
at org.apache.cassandra.tools.NodeProbe.upgradeSSTables(NodeProbe.java:328)
at org.apache.cassandra.tools.nodetool.UpgradeSSTable.execute(UpgradeSSTable.java:54)
at org.apache.cassandra.tools.NodeTool$NodeToolCmd.run(NodeTool.java:253)
at org.apache.cassandra.tools.NodeTool.main(NodeTool.java:167)
解决方案
以前版本的提交日志与新版本不兼容。要刷新旧安装的提交日志,请使用
nodetool -h hostname drain
还要检查 cassandra.yml 中的提交日志目录路径。
推荐阅读
- angular - 如何应用 gzip 并缩小 Angular 6 中的文件?
- python - tensorflow Docker 时出现 cuDNN 错误
- c#-4.0 - GridEx 项目即时填充
- javascript - 如何编写 .html.erb javascript 函数来隐藏特定页面的标题?
- reactjs - 无法读取 Reactjs 中未定义的属性“令牌”
- mqtt - 当使用 MQTT 和 Qos 1 时,不需要从订阅者发送 PUBACK 数据包到代理吗?
- javascript - react-native 深度链接如何获取最新的 url
- ansible - Ansible 无法为 Redhat 中的 GRUB 引导加载程序设置密码
- javascript - 我想使用 jQuery 永久(或特定时期)隐藏一个元素
- firebase - android studio中的文件或目录已损坏且无法读取错误