java - ConcurrentModificationException upon committing transaction with Hibernate -


in our application have upgraded hibernate 3.5.6-final 4.2.21.final , getting concurrentmodificationexception when database transaction committed:

java.util.concurrentmodificationexception: null     @ java.util.arraylist$itr.checkforcomodification(arraylist.java:901)     @ java.util.arraylist$itr.next(arraylist.java:851)     @ org.hibernate.engine.spi.actionqueue.executeactions(actionqueue.java:386)     @ org.hibernate.engine.spi.actionqueue.executeactions(actionqueue.java:304)     @ org.hibernate.event.internal.abstractflushingeventlistener.performexecutions(abstractflushingeventlistener.java:349)     @ org.hibernate.event.internal.defaultflusheventlistener.onflush(defaultflusheventlistener.java:56)     @ org.hibernate.internal.sessionimpl.flush(sessionimpl.java:1195)     @ org.hibernate.internal.sessionimpl.managedflush(sessionimpl.java:404)     @ org.hibernate.engine.transaction.internal.jdbc.jdbctransaction.beforetransactioncommit(jdbctransaction.java:101)     @ org.hibernate.engine.transaction.spi.abstracttransactionimpl.commit(abstracttransactionimpl.java:175) 

is known issue hibernate 4.2?

the exception turned out caused problem hibernate custom constraint validator use. validator's isvalid running hibernate criteria query. query triggered hibernate session flush resulted in concurrentmodificationexception. fixed problem temporarily disabling auto flush in isvalid method:

@override public boolean isvalid(object object, final constraintvalidatorcontext c) {    try {       sessionfactory.getcurrentsession().setflushmode(flushmode.manual);       ...    } {       sessionfactory.getcurrentsession().setflushmode(flushmode.auto);    } } 

the problem may manifest stackoverflowerror.


Comments

Popular posts from this blog

amazon web services - S3 Pre-signed POST validate file type? -

c# - Check Keyboard Input Winforms -