【问题标题】:Cassandra Triggers not being recognised by DataStax DevCenterDataStax DevCenter 无法识别 Cassandra 触发器
【发布时间】:2015-01-27 01:31:40
【问题描述】:

我正在研究 Cassandra 集群的概念证明 - 目前在 x64 java 1.0.7_60 上运行 Datastax 社区版(Cassandra 版本 2.0.7)作为两个节点集群(x2 Windows 7 机器)。到目前为止,一切都运行良好,但我的设计在很大程度上依赖于触发器,我绝对无法让 C* 正确识别它们。

我无法让 DevCenter (1.1.0) 识别 /triggers 文件夹中的任何内容。包含我自己的 ITrigger 实现的 jar 和我从 https://github.com/apache/cassandra/tree/trunk/examples/triggers 的 InvertedIndex 示例编译的 jar 也是如此。输入 CQL 命令(对于 InvertedIndex 示例)-

在 table1 上使用 'org.apache.cassandra.triggers.InvertedIndex' 创建 TRIGGER test1;

  • 总是返回

我已经仔细检查过的事情 -

  • 所有命名空间/表名/触发器类名都正确。
  • 我将类名用单引号括起来,CQL 语句本身看起来不错。
  • 我已将 jar 文件复制到两个节点上的 /triggers 文件夹中。
  • 我检查了 Cassandra 日志,但看不到任何相关内容。

我只在 Windows 上运行,而我正在构建一些 Ubuntu 机器,这与在 Windows 上运行有什么关系吗?

任何建议都将不胜感激,我非常希望将此处理保留在数据库中而不是客户端。

【问题讨论】:

  • 在将 .jar 文件复制到触发器目录后,您是否尝试过重新启动 Cassandra 或重新加载触发器 (nodetool reloadtriggers)? Cassandra 需要这样才能看到新的触发器。
  • 这在 cqlsh 中有效吗?只是想确保这是 DevCenter 的问题。
  • @BrianC - 感谢您的评论 - 我确实尝试通过 nodetool 重新加载,但根本没有任何触发器可以重新加载。
  • @phact - 我设法使用 cqlsh 添加我的触发器没有问题,它运行完美。我猜想把它归结为在 Windows 上运行的 DevCenter。再次感谢。

标签: cassandra datastax


【解决方案1】:

这里是 cassandra trigger class not found issues with windows system的链接。

cassandra 3.5 fails to load trigger class

【讨论】:

    猜你喜欢
    • 2017-12-26
    • 2014-07-28
    • 2016-05-15
    • 1970-01-01
    • 2014-05-08
    • 2019-08-31
    • 2014-08-18
    • 1970-01-01
    • 2019-05-18
    相关资源
    最近更新 更多