Hi devs, 
I’m having problems upgrading a database from 2.19 to 2.20. I get the follow 
error during startup (full stack trace of error attached), between stage 5 and 
6 of the routine:

* ERROR 2015-08-15 18:39:48,458 org.hibernate.TransientObjectException: object 
references an unsaved transient instance - save the transient instance before 
flushing: org.hisp.dhis.organisationunit.OrganisationUnit
        at 
org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:249)

Any advice on what might be causing this? I even tried "downgrading" the 
database to 2.19 (after trying to start it with 2.20), and it then starts 
without issues - so seems limited to 2.20.

Olav

* INFO  2015-08-15 18:39:37,954 Executing startup routine [5 of 15, runlevel 
3]: TableAlteror (DefaultStartupRoutineExecutor.java [pool-2-thread-1])
* ERROR 2015-08-15 18:39:48,458 org.hibernate.TransientObjectException: object 
references an unsaved transient instance - save the transient instance before 
flushing: org.hisp.dhis.organisationunit.OrganisationUnit
        at 
org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:249)
        at org.hibernate.type.EntityType.getIdentifier(EntityType.java:536)
        at org.hibernate.type.ManyToOneType.nullSafeSet(ManyToOneType.java:165)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2798)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3203)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:3138)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3468)
        at 
org.hibernate.action.internal.EntityUpdateAction.execute(EntityUpdateAction.java:140)
        at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:395)
        at 
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:387)
        at 
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:304)
        at 
org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:349)
        at 
org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56)
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1195)
        at 
org.hisp.dhis.dbms.HibernateDbmsManager.clearSession(HibernateDbmsManager.java:247)
        at 
org.hisp.dhis.organisationunit.hibernate.HibernateOrganisationUnitStore.updatePaths(HibernateOrganisationUnitStore.java:356)
        at 
org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.updatePaths(DefaultOrganisationUnitService.java:1054)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy43.updatePaths(Unknown Source)
        at org.hisp.dhis.startup.TableAlteror.execute(TableAlteror.java:843)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy98.execute(Unknown Source)
        at 
org.hisp.dhis.system.startup.DefaultStartupRoutineExecutor.execute(DefaultStartupRoutineExecutor.java:117)
        at 
org.hisp.dhis.system.startup.DefaultStartupRoutineExecutor.execute(DefaultStartupRoutineExecutor.java:86)
        at 
org.hisp.dhis.system.startup.StartupListener.contextInitialized(StartupListener.java:71)
        at 
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)
        at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
        at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:958)
        at 
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1599)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
 (StartupListener.java [pool-2-thread-1])
Aug 15, 2015 6:39:48 PM org.apache.catalina.core.StandardContext listenerStart
SEVERE: Exception sending context initialized event to listener instance of 
class org.hisp.dhis.system.startup.StartupListener
java.lang.RuntimeException: Failed to run startup routines: object references 
an unsaved transient instance - save the transient instance before flushing: 
org.hisp.dhis.organisationunit.OrganisationUnit
        at 
org.hisp.dhis.system.startup.StartupListener.contextInitialized(StartupListener.java:77)
        at 
org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4779)
        at 
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5273)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at 
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
        at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:958)
        at 
org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1599)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
        at java.util.concurrent.FutureTask.run(FutureTask.java:262)
        at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.hibernate.TransientObjectException: object references an unsaved 
transient instance - save the transient instance before flushing: 
org.hisp.dhis.organisationunit.OrganisationUnit
        at 
org.hibernate.engine.internal.ForeignKeys.getEntityIdentifierIfNotUnsaved(ForeignKeys.java:249)
        at org.hibernate.type.EntityType.getIdentifier(EntityType.java:536)
        at org.hibernate.type.ManyToOneType.nullSafeSet(ManyToOneType.java:165)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.dehydrate(AbstractEntityPersister.java:2798)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3203)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:3138)
        at 
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:3468)
        at 
org.hibernate.action.internal.EntityUpdateAction.execute(EntityUpdateAction.java:140)
        at org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:395)
        at 
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:387)
        at 
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:304)
        at 
org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:349)
        at 
org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:56)
        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1195)
        at 
org.hisp.dhis.dbms.HibernateDbmsManager.clearSession(HibernateDbmsManager.java:247)
        at 
org.hisp.dhis.organisationunit.hibernate.HibernateOrganisationUnitStore.updatePaths(HibernateOrganisationUnitStore.java:356)
        at 
org.hisp.dhis.organisationunit.DefaultOrganisationUnitService.updatePaths(DefaultOrganisationUnitService.java:1054)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:92)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy43.updatePaths(Unknown Source)
        at org.hisp.dhis.startup.TableAlteror.execute(TableAlteror.java:843)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:606)
        at 
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:190)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:157)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:99)
        at 
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:281)
        at 
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:96)
        at 
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:179)
        at 
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:207)
        at com.sun.proxy.$Proxy98.execute(Unknown Source)
        at 
org.hisp.dhis.system.startup.DefaultStartupRoutineExecutor.execute(DefaultStartupRoutineExecutor.java:117)
        at 
org.hisp.dhis.system.startup.DefaultStartupRoutineExecutor.execute(DefaultStartupRoutineExecutor.java:86)
        at 
org.hisp.dhis.system.startup.StartupListener.contextInitialized(StartupListener.java:71)
        ... 13 more

Aug 15, 2015 6:39:48 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Aug 15, 2015 6:39:48 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/dhis] startup failed due to previous errors
* INFO  2015-08-15 18:39:48,475 De-registering jdbc driver: 
org.postgresql.Driver@22bac2b (StartupListener.java [pool-2-thread-1])
Aug 15, 2015 6:39:48 PM org.apache.catalina.core.ApplicationContext log
INFO: Closing Spring root WebApplicationContext
Aug 15, 2015 6:39:48 PM org.apache.catalina.loader.WebappClassLoader 
checkThreadLocalMapForLeaks
SEVERE: The web application [/dhis] created a ThreadLocal with key of type 
[java.lang.ThreadLocal] (value [java.lang.ThreadLocal@4c8efc2d]) and a value of 
type [org.springframework.security.core.context.SecurityContextImpl] (value 
[org.springframework.security.core.context.SecurityContextImpl@ffffffff: Null 
authentication]) but failed to remove it when the web application was stopped. 
Threads are going to be renewed over time to try and avoid a probable memory 
leak.
_______________________________________________
Mailing list: https://launchpad.net/~dhis2-devs
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~dhis2-devs
More help   : https://help.launchpad.net/ListHelp

Reply via email to