Neo4J 2.1.3 Нарушается ограничение уникальности, это ошибка?

У нас есть база данных Neo4J 2.1.3, и у нас есть ограничение уникальности, которое было создано следующим образом:

СОЗДАТЬ ОГРАНИЧЕНИЕ НА (сегмент: SEGMENT) ASSERT сегмент.segmentId УНИКАЛЬНО

Когда мы проверяем это из браузера, он отлично работает при обнаружении нарушений, например:

CREATE (n: SEGMENT {name: "duplicate", сегментId: 110484}) ВОЗВРАТ n

результаты в

Узел 589 уже существует с меткой SEGMENT и свойством "gmentId "= [110484]

Neo.ClientError.Schema.ConstraintViolation

что хорошо

У нас есть тестер нагрузки с 3-мя машинами и несколькими потоками на блок, использующий Cypher over REST, общающийся с Neo4J и использующий транзакционные конечные точки для создания аналогичных выше (но, конечно, гораздо больше свойств, относящихся к нашему приложению) и всегда записывающих в Мастер Neo4J в настройке HA.

Мы можем надежно воспроизвести в этой настройке несколько нарушений ограничения уникальности, которые НЕ отлавливаются Neo4J, они выполняются без ошибок, и в полученной базе данных мы видим несколько узлов с меткой SEGMENT и одним и тем же значением для свойства plotId (мы намеренно являемся создание дублирующих значений сегмента сегмента для нашего теста).

Кто-нибудь еще сталкивался с той же проблемой? Это ошибка Neo4J?

Благодарю.

Ответы на вопрос(0)

Ваш ответ на вопрос