Properties Titan/ES:由于持久性异常,无法提交事务
我在尝试使用ElasticSearch在Titan中创建和使用索引类型时遇到问题。我使用的是Titan Server 0.4.0,它有一个groovy脚本,可以执行以下操作:Properties Titan/ES:由于持久性异常,无法提交事务,properties,indexing,elasticsearch,titan,Properties,Indexing,elasticsearch,Titan,我在尝试使用ElasticSearch在Titan中创建和使用索引类型时遇到问题。我使用的是Titan Server 0.4.0,它有一个groovy脚本,可以执行以下操作: 设置配置: config.setProperty(“storage.backend”、“cassandra”) config.setProperty(“storage.hostname”、“127.0.0.1”) config.setProperty(“storage.index.elastic.backend”、“ela
v、 setProperty(“property1”,property1)
v、 setProperty(“property2”,property2) })
javax.script.ScriptException: com.thinkaurelius.titan.core.TitanException: Could not commit transaction due to exception during persistence
对这个错误的研究表明,这是一个资源锁定、并发属性设置或唯一属性的问题,但是我没有在代码中使用这些。当我手动键入它们时,它的工作方式似乎不寻常,但当我在脚本中运行它时,它会中断-在第2部分中设置属性索引之前,脚本是否可能会超越自身并尝试为属性赋值(步骤3)
谢谢,
Adam您能验证您没有任何无效值吗?我还没有测试它,但是我怀疑当你尝试插入空字符串时Titan/ES也会抛出这个异常。嗨,Daniel,谢谢你的回复。我注释掉了设置实际属性的代码,但仍然得到了相同的错误,所以不幸的是,我认为这不是问题所在。只是添加-我在Gremlin控制台中运行了脚本,发现它在以下行中抛出了此错误:v=bg.addVertex(value)。堆栈跟踪告诉我“没有为属性指定类型”,这似乎是ElasticSearch功能的错误。也许我用错了这个命令?我并没有改变这一行,当我没有特定的属性键时,它工作得很好。好吧,我缩小了范围,它变得更加混乱。addVertex(value)循环通过一个包含IP地址的csv文件,通过打印输出,它似乎从文件中加载了前1000个,然后出错。无论我如何编辑列表,IP it错误总是在第1001行。“bg”听起来像是在使用BatchGraph,BatchGraph似乎在1000个条目之后提交批处理。真正奇怪的是,您在没有设置任何属性的情况下得到相同的错误。你能在某个地方分享完整的代码吗,也许是要点?