PessimisticLockException при сохранении данных в цикле - PullRequest
0 голосов
/ 05 апреля 2019

Я получаю исключение pesimistlock при попытке сохранить несколько объектов одновременно через JPA. Вот мой код для справки

@Override
@Transactional(propagation = Propagation.REQUIRED, rollbackFor = Exception.class)
public Boolean changeDplListMappingByCustomWatchList(List<Integer> dplIds, Integer customWatchListId,
    ServiceRequestor customServiceRequestor) {

            for(Integer dplId : dplIds) {
                if(dplId != null) {
                    CustomWatchListDplMapping customWatchListDplMapping = new CustomWatchListDplMapping();
                    customWatchListDplMapping.setDplId(dplId);
                    customWatchListDplMapping.setWatchListId(customWatchListId);

                    this.create(customWatchListDplMapping);
                }
            }
    }
    catch(Exception e) {
        LOG.error("Exception occured while changing dpl mapping by custom watchList id", e);
    }

    return true;
}

public void create(Model entity) {
    manager.persist(entity);
    manager.joinTransaction();
}

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

1 Ответ

0 голосов
/ 05 апреля 2019

по умолчанию пессимистическая блокировка на 1 секунду, поэтому, пожалуйста, внесите изменения в файл свойств, он поможет вам разблокировать, и вы сможете сохранить в базе данных

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