Почему все данные исчезают при перезапуске Neo4j? - PullRequest
1 голос
/ 21 марта 2012

Я не понимаю эту парадигму, наверное? Для небольшого отдельного сервера или среды разработки ... Я ненавижу загружать сотни тысяч записей только для того, чтобы проанализировать их в виде графика ... Мне не хватает общей картины здесь?

ОБНОВЛЕНИЕ (21.03.2012 10: 38а):
Моя текущая настройка:

  • Установка по умолчанию
  • Конфиги по умолчанию
  • Настройка сервера
  • Создание узлов через REST API

Ответы [ 2 ]

4 голосов
/ 21 марта 2012

Как вы создаете экземпляр своей базы данных, встроенного или сервера? Вы используете ImpermanentGraphDatabase, потому что это тестовая база данных в памяти. Если вы используете обычную EmbeddedGraphDatabase, ваш график постоянно сохраняется в процессе вставки данных.

Пожалуйста, дайте немного больше информации.

0 голосов
/ 15 ноября 2014

При использовании Java встроенные транзакции должны быть закрыты при сохранении объектов, иначе они могут потеряться. В более ранних версиях это делалось путем вызова finally { tx.finish(); }, в более поздних версиях (2.1+) это должно происходить автоматически при создании экземпляра в try-with-resource . (Это позволяет столкнуться с проблемами, если экземпляр Transaction tx создан вне условия try).

GraphDatabaseService graphDb =  new GraphDatabaseFactory().newEmbeddedDatabase(DB_PATH);
try (Transaction tx = graphDb.beginTx()) {
  // create some nodes here
}
...