Я использую Neo4j 1.8.RC1 и пытаюсь создать коэффициент кластеризации для узлов на моем графике.ExecutionEngine не распознающий параметр
У меня есть следующий код, который, насколько я могу сказать, работает на системе Linux, но не работает на моей машине Windows:
Map<String, Object> params = new HashMap<String, Object>();
String query;
String typeString;
if (type == <some type>) {
typeString = "TYPE1";
}
else {
typeString = "TYPE2";
}
params.put("myid", userid);
query = "start a=node(*) match (a)-[:"+ typeString +"]-(b) WITH a, count(distinct b) as n "
+ "match (a)-[:" + typeString + "]-()-[r:"+ typeString+"]-()-[:"+typeString+"]-(a) where a.thisId! = {myid} return n, count(distinct r) as relcount";
ExecutionEngine engine = new ExecutionEngine(graphDb);
ExecutionResult result = engine.execute(query, params);
При попытке получить доступ к результату, я get
Exception in thread "main" java.lang.RuntimeException: org.neo4j.cypher.ParameterNotFoundException: Expected a parameter named myid
Я прошел через и проверил, что он есть. Что происходит?
«Я использую Neo4j 1.8.RC1» - Вы имеете в виду ** 1.9 ** RC1? – ean5533
Нет, я имею в виду 1.8 RC1. – betseyb
Почему вы используете 1.8RC1? 1.8 был стабильным в течение длительного времени. Они идут к версии 1.8.2. Возможно, вы очень хорошо столкнулись с ошибкой, которая была установлена между 1.8.RC1 и 1.8.2. – ean5533