onttext graphdb не может заблокировать проблему, когда верстак запущен и работает - PullRequest
0 голосов
/ 10 декабря 2018

Я получил и запустил автономную версию graphdb-free-8.4.0 и инициализированный верстак.Когда я пытаюсь протестировать соединение Embedded Graphdb с помощью maven, он говорит:

[ERROR] Не удалось выполнить цель org.codehaus.mojo: exec-maven-plugin: 1.6.0: java (default-cli) в проекте my-first-app: исключение произошло при выполнении класса Java.org.eclipse.rdf4j.sail.SailException: репозиторий в /opt/maven-graphdb-test/graphdb-free-8.4.0/data/repositories/test/storage в настоящее время используется (нам не удалось заблокировать его файл блокировки: / opt/maven-graphdb-test/graphdb-free-8.4.0/data/repositories/test/storage/lock)!

Мне необходимо отключить текущий верстак для проверки встроенного соединения.

Есть ли способ преодолеть эту проблему, не выключая верстак.

Спасибо.

1 Ответ

0 голосов
/ 10 декабря 2018

GraphDB - это база данных, и, как и любая другая база данных, ей необходим эксклюзивный доступ на чтение / запись к файлам для обеспечения согласованности данных.Самый простой ответ - вы не можете запустить несколько экземпляров базы данных на одном и том же образе данных.Есть два варианта решения этой проблемы:

Запуск клиента на удаленном сервере

Инициализация клиента на конечной точке сервера (http://localhost:7200),, но нефайловая система. В этом случае все клиентские запросы будут обрабатываться сервером, поэтому будет только один процесс чтения и записи в образ базы данных.

Запустите каждый сервер со своим собственным образом данных

Запустите второй встроенный сервер GraphDB, чтобы использовать другой каталог $GDB_DATA .Это создаст две независимые копии базы данных, которые не будут мешать.

...