opendj EntryNotFoundException

Я новичок в opendj. Используя метод ConnectionChangeRecordWriter writeChangeRecord(), я могу добавить запись на LDAP-сервер opendj с успешным результатом. Это выглядит хорошо. Но сразу после вызывающего метода я хочу найти добавленную запись и исключение, созданное с помощью EntryNotFoundException:

org.forgerock.opendj.ldap.EntryNotFoundException: No Such Entry: Entry ns-base-config-key=track,cn=Schema,ou=Configs,dc=nationsky,dc=com cannot be modified because no such entry exists in the server.

Пока, если через несколько минут после добавления, я могу успешно найти запись. Таким образом, я должен сделать цикл, чтобы продолжать поиск, пока результат не будет успешным. Что с ним не так? Я сделал ошибку? Спасибо за помощь.


person Long Cui    schedule 07.02.2017    source источник


Ответы (1)


Обычно это происходит при кодировании топологии репликации, которая находится за балансировщиком нагрузки.

Запрос на добавление перенаправляется балансировщиком нагрузки на сервер каталогов A, а последующее чтение направляется на сервер каталогов B. Иногда запрос на поиск достигает сервера B до того, как на нем будет воспроизведена операция добавления.

person JnRouvignac    schedule 10.02.2017
comment
Я использую один экземпляр сервера OpenDJ. Вопрос и сейчас остается открытым. - person Long Cui; 23.02.2017
comment
Можете ли вы поделиться примером кода, который раскрывает проблему? - person JnRouvignac; 23.02.2017