[hibernate-dev] Regressions after upgrading from ORM 4.1.6 to 4.1.8

Guillaume Smet guillaume.smet at gmail.com
Sat Nov 17 06:34:20 EST 2012


Hi,

After upgrading from 4.1.6 to 4.1.8, we have a couple of regressions
in one of our applications.

We tried to obtain self contained test cases and understand what the
problem is but it's quite hard to reproduce and we haven't found a way
to isolate the problem yet.

Anyway, I was wondering if the stacktraces could ring a bell for
someone to help us analyze the problem. It might even be an obvious
bug for you once you have the stracktrace.

Here are both stacktraces for the regressions we have:

Stacktrace 1 (only when we configure the batch loading - might be due
to a race condition because it's not systematic):

Caused by: java.lang.NullPointerException
        at
org.hibernate.type.descriptor.java.AbstractTypeDescriptor.extractHashCode(AbstractTypeDescriptor.java:88)
        at
org.hibernate.type.AbstractStandardBasicType.getHashCode(AbstractStandardBasicType.java:210)
        at
org.hibernate.type.AbstractStandardBasicType.getHashCode(AbstractStandardBasicType.java:214)
        at org.hibernate.cache.spi.CacheKey.calculateHashCode(CacheKey.java:71)
        at org.hibernate.cache.spi.CacheKey.<init>(CacheKey.java:67)
        at
org.hibernate.internal.AbstractSessionImpl.generateCacheKey(AbstractSessionImpl.java:252)
        at
org.hibernate.engine.spi.BatchFetchQueue.isCached(BatchFetchQueue.java:330)
        at
org.hibernate.engine.spi.BatchFetchQueue.getCollectionBatch(BatchFetchQueue.java:312)
        at
org.hibernate.loader.collection.BatchingCollectionInitializer.initialize(BatchingCollectionInitializer.java:72)
        at
org.hibernate.persister.collection.AbstractCollectionPersister.initialize(AbstractCollectionPersister.java:678)
        at
org.hibernate.event.internal.DefaultInitializeCollectionEventListener.onInitializeCollection(DefaultInitializeCollectionEventListener.java:80)
        at
org.hibernate.internal.SessionImpl.initializeCollection(SessionImpl.java:1804)
        at
org.hibernate.collection.internal.AbstractPersistentCollection$4.doWork(AbstractPersistentCollection.java:549)
        at
org.hibernate.collection.internal.AbstractPersistentCollection.withTemporarySessionIfNeeded(AbstractPersistentCollection.java:234)
        at
org.hibernate.collection.internal.AbstractPersistentCollection.initialize(AbstractPersistentCollection.java:545)
        at
org.hibernate.collection.internal.PersistentBag.removeAll(PersistentBag.java:345)





Stacktrace 2 (we have this one even if we disable the batch loading):

Caused by: java.lang.NullPointerException
        at org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:259)
        at org.hibernate.engine.internal.Cascade.cascade(Cascade.java:165)
        at
org.hibernate.event.internal.AbstractFlushingEventListener.cascadeOnFlush(AbstractFlushingEventListener.java:160)
        at
org.hibernate.event.internal.AbstractFlushingEventListener.prepareEntityFlushes(AbstractFlushingEventListener.java:151)
        at
org.hibernate.event.internal.AbstractFlushingEventListener.flushEverythingToExecutions(AbstractFlushingEventListener.java:88)
        at
org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1213)
        at
org.hibernate.ejb.AbstractEntityManagerImpl.flush(AbstractEntityManagerImpl.java:986)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at
org.springframework.orm.jpa.SharedEntityManagerCreator$SharedEntityManagerInvocationHandler.invoke(SharedEntityManagerCreator.java:240)
        at $Proxy115.flush(Unknown Source)


Thanks for your feedback.

-- 
Guillaume


More information about the hibernate-dev mailing list