dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #43096
Error while removing a DataElement from a ProgramStage (2.20)
Hi devs,
We get an exception each time we want to remove a particular data element
from its program (programstage). It seems that does not matter if the
datalement has a trackedentityvalue or not (and it shouldn't matter
right?). We are running 2.20 (revision 19968). It works fine for 2.22, but
it is important for us to have this problem solved for 2.20 (if possible),
as many dataelements do not make sense for us anymore (even we can not run
the analytics because of this ...)
Is there anything you can do from your side?
Thanks guys!
Jose
Here is the error trace...
* ERROR 2016-02-08 20:38:26,194 Error while executing action
(ExceptionIntercept
or.java [http-apr-8080-exec-6])
org.springframework.dao.InvalidDataAccessApiUsageException: deleted object
would
be re-saved by cascade (remove deleted object from associations):
[org.hisp.dhi
s.program.ProgramStageDataElement#21547]; nested exception is
org.hibernate.Obje
ctDeletedException: deleted object would be re-saved by cascade (remove
deleted
object from associations):
[org.hisp.dhis.program.ProgramStageDataElement#21547]
at
org.springframework.orm.hibernate4.SessionFactoryUtils.convertHiberna
teAccessException(SessionFactoryUtils.java:193)
at
org.springframework.orm.hibernate4.HibernateTransactionManager.conver
tHibernateAccessException(HibernateTransactionManager.java:730)
at
org.springframework.orm.hibernate4.HibernateTransactionManager.doComm
it(HibernateTransactionManager.java:592)
at
org.springframework.transaction.support.AbstractPlatformTransactionMa
nager.processCommit(AbstractPlatformTransactionManager.java:757)
at
org.springframework.transaction.support.AbstractPlatformTransactionMa
nager.commit(AbstractPlatformTransactionManager.java:726)
at
org.springframework.transaction.interceptor.TransactionAspectSupport.
commitTransactionAfterReturning(TransactionAspectSupport.java:521)
at
org.springframework.transaction.interceptor.TransactionAspectSupport.
invokeWithinTransaction(TransactionAspectSupport.java:291)
at
org.springframework.transaction.interceptor.TransactionInterceptor.in
voke(TransactionInterceptor.java:96)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
ReflectiveMethodInvocation.java:179)
at
org.springframework.aop.framework.adapter.MethodBeforeAdviceIntercept
or.invoke(MethodBeforeAdviceInterceptor.java:52)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
ReflectiveMethodInvocation.java:179)
at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invok
e(ExposeInvocationInterceptor.java:92)
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(
ReflectiveMethodInvocation.java:179)
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynami
cAopProxy.java:207)
at com.sun.proxy.$Proxy91.deleteProgramStageDataElement(Unknown
Source)
at
org.hisp.dhis.trackedentity.action.programstage.UpdateProgramStageAct
ion.execute(UpdateProgramStageAction.java:474)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
java:57)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
sorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultA
ctionInvocation.java:450)
at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(Defa
ultActionInvocation.java:289)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:252)
at
org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.interc
ept(XWorkPortalUserInterceptor.java:91)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.inte
rcept(XWorkPortalModuleInterceptor.java:92)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.interc
ept(XWorkPortalMenuInterceptor.java:100)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.inte
rcept(XWorkPortalParamsInterceptor.java:150)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterce
ptor.java:83)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.interceptor.UserSettingInterceptor.intercept(UserSettin
gInterceptor.java:84)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.security.intercept.LoginInterceptor.intercept(LoginInte
rceptor.java:85)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(X
WorkSecurityInterceptor.java:116)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSe
ttingInterceptor.java:138)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.j
ava:139)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept
(ParametersInterceptor.java:254)
at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept
(MethodFilterInterceptor.java:98)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.inter
cept(StaticParametersInterceptor.java:191)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInt
erceptor.java:113)
at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionI
nvocation.java:246)
at
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.j
ava:54)
at
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.jav
a:562)
at
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(Exec
uteOperations.java:77)
at
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
.doFilter(StrutsPrepareAndExecuteFilter.java:99)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:330)
at
org.springframework.security.web.access.intercept.FilterSecurityInter
ceptor.invoke(FilterSecurityInterceptor.java:118)
at
org.springframework.security.web.access.intercept.FilterSecurityInter
ceptor.doFilter(FilterSecurityInterceptor.java:84)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.access.ExceptionTranslationFilter.do
Filter(ExceptionTranslationFilter.java:113)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.session.SessionManagementFilter.doFi
lter(SessionManagementFilter.java:103)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.authentication.AnonymousAuthenticati
onFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.servletapi.SecurityContextHolderAwar
eRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.savedrequest.RequestCacheAwareFilter
.doFilter(RequestCacheAwareFilter.java:45)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.authentication.www.BasicAuthenticati
onFilter.doFilter(BasicAuthenticationFilter.java:150)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.hisp.dhis.security.filter.CorsFilter.doFilter(CorsFilter.java:100
)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.authentication.AbstractAuthenticatio
nProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.authentication.AbstractAuthenticatio
nProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(Cus
tomAuthenticationFilter.java:64)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.oauth2.provider.authentication.OAuth2Aut
henticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:1
40)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.authentication.logout.LogoutFilter.d
oFilter(LogoutFilter.java:110)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(Automati
cAccessFilter.java:115)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.header.HeaderWriterFilter.doFilterIn
ternal(HeaderWriterFilter.java:57)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerR
equestFilter.java:107)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.context.request.async.WebAsyncManage
rIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerR
equestFilter.java:107)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.context.SecurityContextPersistenceFi
lter.doFilter(SecurityContextPersistenceFilter.java:87)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.
doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.FilterChainProxy.doFilterInternal(Fi
lterChainProxy.java:192)
at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChai
nProxy.java:160)
at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(D
elegatingFilterProxy.java:344)
at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(Delegat
ingFilterProxy.java:261)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.do
FilterInternal(OpenSessionInViewFilter.java:151)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerR
equestFilter.java:107)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at
org.springframework.web.filter.CharacterEncodingFilter.doFilterIntern
al(CharacterEncodingFilter.java:85)
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerR
equestFilter.java:107)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl
icationFilterChain.java:243)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF
ilterChain.java:210)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV
alve.java:222)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextV
alve.java:123)
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica
torBase.java:502)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j
ava:171)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j
ava:100)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:
953)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal
ve.java:118)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav
a:409)
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp
11Processor.java:1044)
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(
AbstractProtocol.java:607)
at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.doRun(AprEndpo
int.java:2441)
at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoin
t.java:2430)
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:744)
Caused by: org.hibernate.ObjectDeletedException: deleted object would be
re-save
d by cascade (remove deleted object from associations):
[org.hisp.dhis.program.P
rogramStageDataElement#21547]
at
org.hibernate.internal.SessionImpl.forceFlush(SessionImpl.java:1208)
at
org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.entityI
sTransient(DefaultSaveOrUpdateEventListener.java:184)
at
org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.perform
SaveOrUpdate(DefaultSaveOrUpdateEventListener.java:114)
at
org.hibernate.event.internal.DefaultSaveOrUpdateEventListener.onSaveO
rUpdate(DefaultSaveOrUpdateEventListener.java:90)
at
org.hibernate.internal.SessionImpl.fireSaveOrUpdate(SessionImpl.java:
654)
at
org.hibernate.internal.SessionImpl.saveOrUpdate(SessionImpl.java:646)
at
org.hibernate.engine.spi.CascadingAction$5.cascade(CascadingAction.ja
va:258)
at
org.hibernate.engine.internal.Cascade.cascadeToOne(Cascade.java:396)
at
org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java
:339)
at
org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:20
7)
at
org.hibernate.engine.internal.Cascade.cascadeCollectionElements(Casca
de.java:426)
at
org.hibernate.engine.internal.Cascade.cascadeCollection(Cascade.java:
366)
at
org.hibernate.engine.internal.Cascade.cascadeAssociation(Cascade.java
:342)
at
org.hibernate.engine.internal.Cascade.cascadeProperty(Cascade.java:20
7)
at org.hibernate.engine.internal.Cascade.cascade(Cascade.java:164)
at
org.hibernate.event.internal.AbstractFlushingEventListener.cascadeOnF
lush(AbstractFlushingEventListener.java:165)
at
org.hibernate.event.internal.AbstractFlushingEventListener.prepareEnt
ityFlushes(AbstractFlushingEventListener.java:156)
at
org.hibernate.event.internal.AbstractFlushingEventListener.flushEvery
thingToExecutions(AbstractFlushingEventListener.java:89)
at
org.hibernate.event.internal.DefaultFlushEventListener.onFlush(Defaul
tFlushEventListener.java:55)
at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1195)
at
org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:404)
at
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.before
TransactionCommit(JdbcTransaction.java:101)
at
org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(A
bstractTransactionImpl.java:175)
at
org.springframework.orm.hibernate4.HibernateTransactionManager.doComm
it(HibernateTransactionManager.java:584)
... 120 more
Follow ups