express - 所有 cassandra 物化视图未配置表
问题描述
所以我有以下设置,我在本地网络上有 8 台服务器,每台服务器都运行 cassandra。其中 2 个服务器是种子节点,其余的只是常规节点。如果我运行 nodetool status,一切都会正确显示并且所有节点都是 UN。
我有一个运行 express-cassandra 的 express.js 应用程序。它有很多表和物化视图(总共 70 个),我必须多次重新启动 express 服务器,以便用表填充 cassandra 键空间,否则它会在某个时候停止填充。创建表后,我可以正常访问所有标准表,但是当我尝试访问任何物化视图表时,我不断收到有关未配置表的错误 -InvalidRequest: Error from server: code=2200 [Invalid query] message="unconfigured table ...
此外,如果我运行我的应用程序,对物化视图的所有查询都会失败。
似乎数据库创建过程不断损坏(由于我必须重新启动快速服务器以确保所有表都已创建)。如果我只是启动 express.js 服务器并让它继续运行,它将停止在大约 20 个表处创建表(我让它运行了大约 2 个小时而没有创建任何表)。如果我重新启动它,它将再次创建几个表,然后再次停止。依此类推,直到我创建了所有表。
此外,当我尝试修复该密钥空间(由 express-cassandra 创建)时,我一直无法连接到其中一个节点,尽管 nodetool 状态显示它已启动。
解决方案
在这里发布答案,这样如果其他人收到类似的问题,就会知道是什么原因造成的。
我遇到了物化视图名称的问题 - 它太长了。不幸的是express-cassandra
,没有以有意义的方式提供有关物化视图长度的任何信息。
没有尝试确切的长度,但它大于 70 个字符。
推荐阅读
- .net - .NET 将标头添加到 index.html 请求的响应中?
- c++ - 如果密钥有效,如何检查 Json 文件并使用 RapidJson 在 C++ 中创建对象数组
- c# - 如何在 IIS 中将我的网站与子域名绑定?
- git - 是否可以忽略 git 中的更改?
- python - 如何组合 1440 个 .csv 文件,每个文件都有一个需要作为列的标题?
- android - 在 fragmentManager 中重新排序片段
- c++ - C ++将新类实例化为继承的类类型
- javascript - SideNav 酒吧变成汉堡包
- django - 如何在 django ORM 的 From 子句中编写子查询
- java - 在应用程序之间共享枚举(业务领域)