Rexster と Cassandra を使用して Titan グラフ データベースを実装しています。
Ruby で Gremlin を使用して、次のようなエッジを追加しようとしています。
query = 'a = g.addVertex(null,[name:\'' +
someName +
'\']); g.addEdge(null, g.getVertex(' +
someVertexId + '), a, \'labelname\', [weight:' +
someFloatValue.round(5) + 'd]); g.commit();'
#This formats to the following:
#"a = g.addVertex(null,[name:'myawesomename']); g.addEdge(null, g.getVertex(1337), a, 'labelname', [weight:0.30685d]); g.commit();"
これを実行すると、次のエラーが表示されます。
#<Rexster::Rest::RexsterError: Graph server returned error: javax.script.ScriptException: java.lang.IllegalArgumentException: The type of given name is not a label: labelname>
という名前のラベルを定義していないようですが、わかりましlabelname
た。ただし、このラベルを追加する方法を一生理解できないので、このエッジをグラフに追加できます。
ちなみに、頂点の追加はうまくいきます。
スクリプトを実行している titan-server 0.4.0 で ubuntu 12.04 マシンに接続するrexster_ruby gem を使用していtitan.sh
ます。