Hi. I am not sure if this is related or not, but I am filing it along
with this bug, as it seems quite similar.
* INFO 08:43:16,838 Reading file: ZM_ZAMBIA Kapiri-Mposhi District Oct 2009 to
Dec 2009.xml (DefaultDhis14XMLImportService.java [Thread-86])
* INFO 08:43:16,838 Importing meta data (DefaultDhis14XMLImportService.java
[Thread-86])
* INFO 08:43:20,591 Import process done (DefaultDhis14XMLImportService.java
[Thread-86])
* INFO 08:43:20,592 Import process completed (ImportInternalProcess.java
[Thread-86])
* INFO 08:45:08,384 Preview process started (ImportPreviewInternalProcess.java
[Thread-87])
* INFO 08:45:08,405 Imported DataElementCategoryOptions
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:08,414 Imported DataElementCategories
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:08,420 Imported DataElementCategoryCombos
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:08,438 Imported DataElementCategoryOptionCombos
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:08,452 Imported CategoryCategoryOption associations
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:08,465 Imported CategoryComboCategory associations
(DefaultImportObjectManager.java [Thread-87])
* INFO 08:45:09,093 Imported DataElements (DefaultImportObjectManager.java
[Thread-87])
* INFO 08:45:09,483 Imported CalculatedDataElements
(DefaultImportObjectManager.java [Thread-87])
* ERROR 08:45:09,623 Could not synchronize database state with session
(AbstractFlushingEventListener.java [Thread-87])
org.hibernate.StaleObjectStateException: Row was updated or deleted by another
transaction (or unsaved-value mapping was incorrect):
[org.hisp.dhis.dataelement.CalculatedDataElement#951]
at
org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1769)
at
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2412)
at
org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2312)
at
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2612)
at
org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:96)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at
org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:655)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
at
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:321)
at
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:116)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy44.importCalculatedDataElements(Unknown Source)
at
org.hisp.dhis.importexport.service.DefaultImportObjectService.importAll(DefaultImportObjectService.java:641)
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.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
at $Proxy45.importAll(Unknown Source)
at
org.hisp.dhis.importexport.ImportPreviewInternalProcess.executeStatements(ImportPreviewInternalProcess.java:75)
at
org.hisp.dhis.system.process.AbstractStatementInternalProcess.execute(AbstractStatementInternalProcess.java:79)
at
org.hisp.dhis.system.process.AbstractStatementInternalProcess.execute(AbstractStatementInternalProcess.java:37)
at
org.amplecode.cave.process.ProcessExecutor.run(ProcessExecutor.java:125)
at java.lang.Thread.run(Thread.java:619)
* ERROR 08:45:09,626 The process threw exception (ProcessExecutor.java
[Thread-87])
org.springframework.orm.hibernate3.HibernateOptimisticLockingFailureException:
Object of class [org.hisp.dhis.dataelement.CalculatedDataElement] with
identifier [951]: optimistic locking failed; nested exception is
org.hibernate.StaleObjectStateException: Row was updated or deleted by another
transaction (or unsaved-value mapping was incorrect):
[org.hisp.dhis.dataelement.CalculatedDataElement#951]
at
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:669)
at
org.springframework.orm.hibernate3.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:789)
at
org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:663)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:732)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:701)
at
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:321)
at
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:116)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at $Proxy44.importCalculatedDataElements(Unknown Source)
at
org.hisp.dhis.importexport.service.DefaultImportObjectService.importAll(DefaultImportObjectService.java:641)
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.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:307)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:198)
at $Proxy45.importAll(Unknown Source)
at
org.hisp.dhis.importexport.ImportPreviewInternalProcess.executeStatements(ImportPreviewInternalProcess.java:75)
at
org.hisp.dhis.system.process.AbstractStatementInternalProcess.execute(AbstractStatementInternalProcess.java:79)
at
org.hisp.dhis.system.process.AbstractStatementInternalProcess.execute(AbstractStatementInternalProcess.java:37)
at
org.amplecode.cave.process.ProcessExecutor.run(ProcessExecutor.java:125)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.hibernate.StaleObjectStateException: Row was updated or deleted
by another transaction (or unsaved-value mapping was incorrect):
[org.hisp.dhis.dataelement.CalculatedDataElement#951]
at
org.hibernate.persister.entity.AbstractEntityPersister.check(AbstractEntityPersister.java:1769)
at
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2412)
at
org.hibernate.persister.entity.AbstractEntityPersister.updateOrInsert(AbstractEntityPersister.java:2312)
at
org.hibernate.persister.entity.AbstractEntityPersister.update(AbstractEntityPersister.java:2612)
at
org.hibernate.action.EntityUpdateAction.execute(EntityUpdateAction.java:96)
at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:279)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:263)
at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:168)
at
org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:298)
at
org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:27)
at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1000)
at org.hibernate.impl.SessionImpl.managedFlush(SessionImpl.java:338)
at
org.hibernate.transaction.JDBCTransaction.commit(JDBCTransaction.java:106)
at
org.springframework.orm.hibernate3.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:655)
... 20 more
--
dhis14-import-cde-robustness
https://bugs.launchpad.net/bugs/348703
You received this bug notification because you are a member of DHIS 2
developers, which is subscribed to DHIS.
Status in DHIS 2 - District Health Information Software: Fix Committed
Bug description:
The DHIS 1.4 file import should be robust against non-existing identfiers in
calculated data element identifiers, which occur quite often.
_______________________________________________
Mailing list: https://launchpad.net/~dhis2-devs
Post to : [email protected]
Unsubscribe : https://launchpad.net/~dhis2-devs
More help : https://help.launchpad.net/ListHelp