Hibernate session.find() call is commiting the database changes which is quite bizzare. Can somebody explain why hibernate is doing that?
Here is the stack trace that I obtained by forcing an exception on insert:
net.sf.hibernate.exception.ConstraintViolationException: Could not execute
JDBC batch update
at net.sf.hibernate.exception.ErrorCodeConverter.convert(ErrorCodeConverter.java:73)
at net.sf.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:30)
at net.sf.hibernate.impl.BatcherImpl.convert(BatcherImpl.java:325)
at net.sf.hibernate.impl.BatcherImpl.executeBatch(BatcherImpl.java:134)
at net.sf.hibernate.impl.BatcherImpl.prepareStatement(BatcherImpl.java:60)
at net.sf.hibernate.impl.BatcherImpl.prepareStatement(BatcherImpl.java:57)
at net.sf.hibernate.impl.BatcherImpl.prepareBatchStatement(BatcherImpl.java:110)
at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:456)
at net.sf.hibernate.persister.EntityPersister.insert(EntityPersister.java:435)
at net.sf.hibernate.impl.ScheduledInsertion.execute(ScheduledInsertion.java:37)
at net.sf.hibernate.impl.SessionImpl.executeAll(SessionImpl.java:2438)
at net.sf.hibernate.impl.SessionImpl.execute(SessionImpl.java:2391)
at net.sf.hibernate.impl.SessionImpl.autoFlushIfRequired(SessionImpl.java:1820)
at net.sf.hibernate.impl.SessionImpl.getQueries(SessionImpl.java:1577)
at net.sf.hibernate.impl.SessionImpl.find(SessionImpl.java:1542)
Regards,
Vijay