我需要了解cqlsh是如何完成自动完成的,因为我希望在create语句的autocomplete中包含一个自定义压缩策略。我通常会在代码中的某个地方放置一个断点,然后按照流程进行操作。但是我不知道如何用cqlsh来完成这个任务,因为我没有看到主要的方法。我如何调试cqlsh以更好地理解我需要在哪里实现这一点?可能与此无关,但我使用的是v3.11。
发布于 2017-04-25 09:52:09
Cqlsh是一个python工具,位于
如果要向cqlsh添加自定义压缩策略,则必须编辑位于$CASSANDRA_HOME//pylib/cqlshlib/cqlhandling.py的依赖文件
找到available_compaction_classes字段并添加您的字段。
available_compaction_classes = (
'LeveledCompactionStrategy',
'SizeTieredCompactionStrategy',
'DateTieredCompactionStrategy',
'TimeWindowCompactionStrategy',
'MyCompactionStrategy'
)这里我添加了MyCompactionStrategy。
现在保存更改并重新登录,您将获得自动完成的压缩。
cassandra@cqlsh:titan> CREATE TABLE test (id int primary key, data text) WITH compaction = {'class': '
DateTieredCompactionStrategy LeveledCompactionStrategy MyCompactionStrategy SizeTieredCompactionStrategy TimeWindowCompactionStrategy发布于 2017-04-25 09:47:11
cqlsh是使用python编写的,因此您可以使用任何python编辑器来调试代码。我正在使用的一个这样的python编辑器是JetBrains PyCharm,您可以从这个编辑器中的“CassandraInstally目录\bin”打开cqlsh.py脚本,并在调试模式下运行cqlsh.py。在运行/调试时,使用console视图提供输入。顺便说一下,我正在使用PyCharm。
发布于 2022-07-06 04:34:19
cqlsh命令有选项--调试,帮助您详细调试它并获得更详细的信息。
https://stackoverflow.com/questions/43606268
复制相似问题