Categories

See More
Popular Forum

MBA (4887) B.Tech (1769) Engineering (1486) Class 12 (1030) Study Abroad (1004) Computer Science and Engineering (988) Business Management Studies (865) BBA (846) Diploma (746) CAT (651) B.Com (648) B.Sc (643) JEE Mains (618) Mechanical Engineering (574) Exam (525) India (462) Career (452) All Time Q&A (439) Mass Communication (427) BCA (417) Science (384) Computers & IT (Non-Engg) (383) Medicine & Health Sciences (381) Hotel Management (373) Civil Engineering (353) MCA (349) Tuteehub Top Questions (348) Distance (340) Colleges in India (334)
See More

PessimisticLockException when saving data in loop

General Tech Bugs & Fixes

Max. 2000 characters
Replies

usr_profile.png

User

( 6 months ago )

 

I am getting pesimistlockexception when trying to persist multiple object of same time through JPA. Here is my code for reference

@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();
}

After first entity when it iterate through second one it throws an exception. If it has only one entity to save then it works well, but for more than one entity model it throws this exception.

usr_profile.png

User

( 6 months ago )

by default pessimistic lock is for 1 second so please do the changes in the properties file it will help you to unlock and you will be able to save into database

what's your interest


forum_ban8_5d8c5fd7cf6f7.gif