Поиск и обновление с блокировкой pessimistic_write не могли предотвратить сбой оптимистической блокировки? - PullRequest
0 голосов
/ 13 декабря 2018

Я пытался найти и обновить одну запись с помощью блокировки pessimistic_write, как показано ниже,

transactionService.executeTransaction(() -> {
    Entity newEntity = em.find(entityClass, id, LockModeType.PESSIMISTIC_WRITE);
    newEntity = setEntityWithProperty.setEntity(newEntity, property);
});

Я использую транзакциюТемплату в Spring. У сущности есть одно поле версии для использования оптимистической блокировки,С блокировкой pessimistic_write во время транзакции (поиск и обновление) другие потоки не могут читать или записывать запись, верно?Но когда фиксируете транзакцию, я все равно могу получить OptimisticLockFailuerException.Почему это происходит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...