Ошибка кратчайшего пути ArangoDB AQL 2.8

мы пытаемся переключиться на «стиль 3.0» графических функций.

Запускаем пример документации:

FOR v, e IN OUTBOUND SHORTEST_PATH 'circles/A' TO 'circles/D' GRAPH 'traversalGraph' RETURN [v._key, e._key]

и это работает в ArangoDB 3.0, но не в ArangoDB 2.8.11 Ошибка:

"errorNum":1501,"errorMessage":"syntax error, unexpected quoted string near '' TO 'circles/D' GRAPH 'traversa...' at position 1:46 (while parsing)"

Наша цель — перевести все запросы в «стиль 3.0», потому что мы хотим обновить базу данных до версии 3.0, но нам также нужна обратная совместимость. Мы прочитали https://docs.arangodb.com/cookbook/AQL/MigratingGraphFunctionsTo3.html и есть раздел, в котором говорится о кратчайшем_пути. Мы попробовали пример, но ошибка выше.

Кто-нибудь может нам помочь?

Большое тебе спасибо.

С наилучшими пожеланиями,

Даниэле


person Daniele Bortoluzzi    schedule 01.09.2016    source источник


Ответы (1)


Упомянутая вами реализация SHORTEST_PATH была добавлена ​​в версии 3.0.

В ArangoDB 2.8 его еще не было, поэтому он не понимает этот новый синтаксис. Так что я боюсь, что вы не сможете использовать эти запросы с 2.8.

Если вы хотите, чтобы ваше приложение было гибким между этими двумя версиями ArangoDB, в настоящее время вам придется использовать два пути кода в своем приложении.

Это немного неудобно, но другие считают, что усилия того стоят, надеюсь, вы тоже ;-)

person dothebart    schedule 02.09.2016
comment
Наше программное обеспечение с ArangoDB 2.8 находится в разработке для крупной страховой компании. Итак, мы должны гарантировать обратную совместимость с версии 2.8 на версию 3.0, и мы не можем переключать версии из кода. :) Мне любопытно, а почему вы не добавляете в релиз 2.8 реализацию SHORTEST_PATH? - person Daniele Bortoluzzi; 05.09.2016
comment
Вы можете разрешить переадресацию устаревшая функция SHORTEST_PATH в версии 3.0. Однако в версии 3.0 запросы должны быть другими: arangodb::SHORTEST_PATH. Как вы уже знаете Яна, возможно, вы захотите написать ему через jan.stuecke на arangodb.com, возможно, он сможет найти более гладкое решение этой проблемы. - person dothebart; 06.09.2016