У меня есть Titan 0.3.2, работающий во встроенном режиме, и я могу создавать и запрашивать индексы ElasticSearch через оболочку Gremlin (см. предыдущий вопрос). Я использую конфигурацию по умолчанию, которая называет индекс ES «поиском».
Эти поиски возвращают правильные узлы без ошибок через оболочку Gremlin:
g.query().has('my_label','abc').vertices()
g.query().has('my_label',CONTAINS,'abc').vertices()
Однако, если я попытаюсь запустить те же самые запросы Gremlin через RexPro, Rexster отправляет эту ошибку для первого запроса выше:
java.util.concurrent.ExecutionException:
javax.script.ScriptException:
javax.script.ScriptException:
java.lang.IllegalArgumentException: Index is unknown or not configured: search
а это для второго:
java.util.concurrent.ExecutionException:
javax.script.ScriptException:
javax.script.ScriptException:
groovy.lang.MissingPropertyException: No such property: CONTAINS for class: Script3
Точно так же, если я попытаюсь запросить индексированный ключ через REST API (GET):
http://localhost:8182/graphs/graph/vertices?key=my_key&value=abc
Я получаю тот же ответ об ошибке:
{"message":"Index is unknown or not configured: search","error":"Index is unknown or not configured: search"}
Наконец, если я попытаюсь начать с чистой базы данных и запустить скрипт создания индекса через rexpro:
g.makeType().name("my_label").dataType(String.class).indexed("search", Vertex.class).unique(Direction.OUT).makePropertyKey();
Я вижу ту же неизвестную ошибку индекса:
java.util.concurrent.ExecutionException:
javax.script.ScriptException:
javax.script.ScriptException:
java.lang.IllegalArgumentException: Index is unknown or not configured: search
Таким образом, кажется, что Rexster нуждается в некоторой дополнительной информации о серверной части индексирования, возможно, в его файле конфигурации (я использую файл по умолчанию, включенный в установку). Кто-нибудь знаком с этой проблемой? Рад предоставить дополнительную информацию.