Thanks for the quick response Lars. In which version was it removed? We are managing multiple instances on different versions and I just want to make sure we remove it from the right ones.
Thanks! On Tue, Feb 14, 2017 at 2:20 PM, Lars Helge Øverland <[email protected]> wrote: > Hi Lorill, > > this happens due to a lingering legacy database table. We will include a > startup statement to remove it. In the meantime you can run this SQL > against your database: > > drop table caseaggregationcondition; > > regards, > > Lars > > > On Tue, Feb 14, 2017 at 11:10 PM, Lorill Crees <[email protected]> wrote: > >> Hi Lars, >> >> I am attempting to delete a data element via the API and am getting the >> below error, due to a foreign key constraint on table >> "caseaggregationcondition". >> >> What are CaseAggregationConditions and where are they in the DHIS 2 UI? >> >> In your prior email to Channara you said that "If you upgrade to a later >> version of DHIS 2, those have been removed completely." >> >> Which version has these removed completely? We are using DHIS 2 Version: >> 2.25 >> Build revision: >> a143100 >> Build date: >> 2017-02-07 14:28 >> >> If they have not been removed in 2.25, how can we delete them via the Web >> API? >> >> Thanks, >> >> Lorill >> >> >> >> * ERROR 2017-02-14 13:25:49,092 ERROR: update or delete on table >> "dataelement" violates foreign key constraint >> "fk_caseaggregationcondition_dataelement" >> on table "caseaggregationcondition" >> Detail: Key (dataelementid)=(109575) is still referenced from table >> "caseaggregationcondition". (SqlExceptionHelper.java [http-nio-8090-exec-8]) >> org.hibernate.exception.ConstraintViolationException: could not execute >> statement >> at org.hibernate.exception.internal.SQLStateConversionDelegate. >> convert(SQLStateConversionDelegate.java:112) >> at org.hibernate.exception.internal.StandardSQLExceptionConvert >> er.convert(StandardSQLExceptionConverter.java:42) >> at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(Sql >> ExceptionHelper.java:111) >> at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(Sql >> ExceptionHelper.java:97) >> at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.execu >> teUpdate(ResultSetReturnImpl.java:207) >> at org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.ad >> dToBatch(NonBatchingBatch.java:45) >> at org.hibernate.persister.entity.AbstractEntityPersister.delet >> e(AbstractEntityPersister.java:3233) >> at org.hibernate.persister.entity.AbstractEntityPersister.delet >> e(AbstractEntityPersister.java:3470) >> at org.hibernate.action.internal.EntityDeleteAction.execute(Ent >> ityDeleteAction.java:98) >> at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQu >> eue.java:560) >> at org.hibernate.engine.spi.ActionQueue.executeActions(ActionQu >> eue.java:434) >> at org.hibernate.event.internal.AbstractFlushingEventListener.p >> erformExecutions(AbstractFlushingEventListener.java:337) >> at org.hibernate.event.internal.DefaultFlushEventListener.onFlu >> sh(DefaultFlushEventListener.java:39) >> at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1295) >> at org.hisp.dhis.dxf2.metadata.objectbundle.DefaultObjectBundle >> Service.commit(DefaultObjectBundleService.java:158) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce >> ssorImpl.java:62) >> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >> thodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:483) >> at org.springframework.aop.support.AopUtils.invokeJoinpointUsin >> gReflection(AopUtils.java:302) >> 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.TransactionInter >> ceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >> at org.springframework.transaction.interceptor.TransactionAspec >> tSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >> at org.springframework.transaction.interceptor.TransactionInter >> ceptor.invoke(TransactionInterceptor.java:96) >> at org.springframework.aop.framework.ReflectiveMethodInvocation >> .proceed(ReflectiveMethodInvocation.java:179) >> at org.springframework.aop.framework.JdkDynamicAopProxy.invoke( >> JdkDynamicAopProxy.java:208) >> at com.sun.proxy.$Proxy186.commit(Unknown Source) >> at org.hisp.dhis.dxf2.metadata.DefaultMetadataImportService.imp >> ortMetadata(DefaultMetadataImportService.java:126) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce >> ssorImpl.java:62) >> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >> thodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:483) >> at org.springframework.aop.support.AopUtils.invokeJoinpointUsin >> gReflection(AopUtils.java:302) >> 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.TransactionInter >> ceptor$1.proceedWithInvocation(TransactionInterceptor.java:99) >> at org.springframework.transaction.interceptor.TransactionAspec >> tSupport.invokeWithinTransaction(TransactionAspectSupport.java:281) >> at org.springframework.transaction.interceptor.TransactionInter >> ceptor.invoke(TransactionInterceptor.java:96) >> at org.springframework.aop.framework.ReflectiveMethodInvocation >> .proceed(ReflectiveMethodInvocation.java:179) >> at org.springframework.aop.framework.JdkDynamicAopProxy.invoke( >> JdkDynamicAopProxy.java:208) >> at com.sun.proxy.$Proxy188.importMetadata(Unknown Source) >> at org.hisp.dhis.webapi.controller.AbstractCrudController.delet >> eObject(AbstractCrudController.java:772) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce >> ssorImpl.java:62) >> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >> thodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:483) >> at org.springframework.web.method.support.InvocableHandlerMetho >> d.doInvoke(InvocableHandlerMethod.java:221) >> at org.springframework.web.method.support.InvocableHandlerMetho >> d.invokeForRequest(InvocableHandlerMethod.java:136) >> at org.springframework.web.servlet.mvc.method.annotation.Servle >> tInvocableHandlerMethod.invokeAndHandle(ServletInvocableHand >> lerMethod.java:110) >> at org.springframework.web.servlet.mvc.method.annotation.Reques >> tMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHan >> dlerAdapter.java:817) >> at org.springframework.web.servlet.mvc.method.annotation.Reques >> tMappingHandlerAdapter.handleInternal(RequestMappingHandlerA >> dapter.java:731) >> at org.springframework.web.servlet.mvc.method.AbstractHandlerMe >> thodAdapter.handle(AbstractHandlerMethodAdapter.java:85) >> at org.springframework.web.servlet.DispatcherServlet.doDispatch >> (DispatcherServlet.java:959) >> at org.springframework.web.servlet.DispatcherServlet.doService( >> DispatcherServlet.java:893) >> at org.springframework.web.servlet.FrameworkServlet.processRequ >> est(FrameworkServlet.java:968) >> at org.springframework.web.servlet.FrameworkServlet.doDelete(Fr >> ameworkServlet.java:892) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:654) >> at org.springframework.web.servlet.FrameworkServlet.service(Fra >> meworkServlet.java:844) >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:729) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:291) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:330) >> at org.springframework.security.web.access.intercept.FilterSecu >> rityInterceptor.invoke(FilterSecurityInterceptor.java:118) >> at org.springframework.security.web.access.intercept.FilterSecu >> rityInterceptor.doFilter(FilterSecurityInterceptor.java:84) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.access.ExceptionTranslation >> Filter.doFilter(ExceptionTranslationFilter.java:113) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.session.SessionManagementFi >> lter.doFilter(SessionManagementFilter.java:103) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.authentication.AnonymousAut >> henticationFilter.doFilter(AnonymousAuthenticationFilter.java:113) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.servletapi.SecurityContextH >> olderAwareRequestFilter.doFilter(SecurityContextHolderAwareR >> equestFilter.java:154) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.savedrequest.RequestCacheAw >> areFilter.doFilter(RequestCacheAwareFilter.java:45) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.authentication.www.BasicAut >> henticationFilter.doFilter(BasicAuthenticationFilter.java:201) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.hisp.dhis.security.filter.CorsFilter.doFilter(CorsFilter.java:91) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.authentication.AbstractAuth >> enticationProcessingFilter.doFilter(AbstractAuthenticationPr >> ocessingFilter.java:199) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.authentication.AbstractAuth >> enticationProcessingFilter.doFilter(AbstractAuthenticationPr >> ocessingFilter.java:199) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.hisp.dhis.security.filter.CustomAuthenticationFilter.doF >> ilter(CustomAuthenticationFilter.java:64) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.oauth2.provider.authentication. >> OAuth2AuthenticationProcessingFilter.doFilter(OAuth2Authenti >> cationProcessingFilter.java:140) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.authentication.logout.Logou >> tFilter.doFilter(LogoutFilter.java:110) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter >> (AutomaticAccessFilter.java:115) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.header.HeaderWriterFilter.d >> oFilterInternal(HeaderWriterFilter.java:57) >> at org.springframework.web.filter.OncePerRequestFilter.doFilter >> (OncePerRequestFilter.java:107) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.context.request.async.WebAs >> yncManagerIntegrationFilter.doFilterInternal(WebAsyncManager >> IntegrationFilter.java:50) >> at org.springframework.web.filter.OncePerRequestFilter.doFilter >> (OncePerRequestFilter.java:107) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.context.SecurityContextPers >> istenceFilter.doFilter(SecurityContextPersistenceFilter.java:87) >> at org.springframework.security.web.FilterChainProxy$VirtualFil >> terChain.doFilter(FilterChainProxy.java:342) >> at org.springframework.security.web.FilterChainProxy.doFilterIn >> ternal(FilterChainProxy.java:192) >> at org.springframework.security.web.FilterChainProxy.doFilter(F >> ilterChainProxy.java:160) >> at org.springframework.web.filter.DelegatingFilterProxy.invokeD >> elegate(DelegatingFilterProxy.java:346) >> at org.springframework.web.filter.DelegatingFilterProxy.doFilte >> r(DelegatingFilterProxy.java:262) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.hisp.dhis.servlet.filter.HttpUrlPatternFilter.doFilter(H >> ttpUrlPatternFilter.java:105) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.springframework.web.filter.ShallowEtagHeaderFilter.doFil >> terInternal(ShallowEtagHeaderFilter.java:87) >> at org.hisp.dhis.servlet.filter.ExcludableShallowEtagHeaderFilt >> er.doFilterInternal(ExcludableShallowEtagHeaderFilter.java:110) >> at org.springframework.web.filter.OncePerRequestFilter.doFilter >> (OncePerRequestFilter.java:107) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.springframework.orm.hibernate5.support.OpenSessionInView >> Filter.doFilterInternal(OpenSessionInViewFilter.java:151) >> at org.springframework.web.filter.OncePerRequestFilter.doFilter >> (OncePerRequestFilter.java:107) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.springframework.web.filter.CharacterEncodingFilter.doFil >> terInternal(CharacterEncodingFilter.java:121) >> at org.springframework.web.filter.OncePerRequestFilter.doFilter >> (OncePerRequestFilter.java:107) >> at org.apache.catalina.core.ApplicationFilterChain.internalDoFi >> lter(ApplicationFilterChain.java:239) >> at org.apache.catalina.core.ApplicationFilterChain.doFilter(App >> licationFilterChain.java:206) >> at org.apache.catalina.core.StandardWrapperValve.invoke(Standar >> dWrapperValve.java:219) >> at org.apache.catalina.core.StandardContextValve.invoke(Standar >> dContextValve.java:106) >> at org.apache.catalina.authenticator.AuthenticatorBase.invoke(A >> uthenticatorBase.java:502) >> at org.apache.catalina.core.StandardHostValve.invoke(StandardHo >> stValve.java:142) >> at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorRepo >> rtValve.java:79) >> at org.apache.catalina.valves.AbstractAccessLogValve.invoke(Abs >> tractAccessLogValve.java:610) >> at org.apache.catalina.core.StandardEngineValve.invoke(Standard >> EngineValve.java:88) >> at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAd >> apter.java:518) >> at org.apache.coyote.http11.AbstractHttp11Processor.process(Abs >> tractHttp11Processor.java:1091) >> at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler >> .process(AbstractProtocol.java:668) >> at org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionH >> andler.process(Http11NioProtocol.java:223) >> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun >> (NioEndpoint.java:1517) >> at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(N >> ioEndpoint.java:1474) >> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool >> Executor.java:1142) >> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo >> lExecutor.java:617) >> at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.r >> un(TaskThread.java:61) >> at java.lang.Thread.run(Thread.java:745) >> Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on >> table "dataelement" violates foreign key constraint >> "fk_caseaggregationcondition_dataelement" on table >> "caseaggregationcondition" >> Detail: Key (dataelementid)=(109575) is still referenced from table >> "caseaggregationcondition". >> at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorRespons >> e(QueryExecutorImpl.java:2455) >> at org.postgresql.core.v3.QueryExecutorImpl.processResults(Quer >> yExecutorImpl.java:2155) >> at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecut >> orImpl.java:288) >> at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:430) >> at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:356) >> at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgP >> reparedStatement.java:168) >> at org.postgresql.jdbc.PgPreparedStatement.executeUpdate(PgPrep >> aredStatement.java:135) >> at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUp >> date(NewProxyPreparedStatement.java:105) >> at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.execu >> teUpdate(ResultSetReturnImpl.java:204) >> ... 137 more >> >> >> >> On Tue, Dec 13, 2016 at 1:13 AM, Lars Helge Øverland <[email protected]> >> wrote: >> >>> Hi Channara, >>> >>> that means that the delete was not allowed due to case aggregation >>> conditions still referencing the data element. You need to the delete the >>> case aggregation queries first. If you upgrade to a later version of DHIS >>> 2, those have been removed completely. >>> >>> regards, >>> >>> Lars >>> >>> On Tue, Dec 13, 2016 at 9:50 AM, channara rin <[email protected]> >>> wrote: >>> >>>> dear all, >>>> i want to delete in data elements. but when i click remove, i got >>>> console like below: >>>> * INFO 2016-12-13 15:48:27,917 Delete was not allowed by >>>> CaseAggregationConditionDeletionHandler: CaseAggregationCondition >>>> (DefaultDeletionManager.java [http-nio-80-exec-8]) >>>> >>>> do you know this problem, how can i delete it? >>>> >>>> thank you >>>> channara >>>> >>>> _______________________________________________ >>>> Mailing list: https://launchpad.net/~dhis2-users >>>> Post to : [email protected] >>>> Unsubscribe : https://launchpad.net/~dhis2-users >>>> More help : https://help.launchpad.net/ListHelp >>>> >>>> >>> >>> >>> -- >>> Lars Helge Øverland >>> Lead developer, DHIS 2 >>> University of Oslo >>> Skype: larshelgeoverland >>> [email protected] >>> http://www.dhis2.org <https://www.dhis2.org/> >>> >>> >>> _______________________________________________ >>> Mailing list: https://launchpad.net/~dhis2-devs >>> Post to : [email protected] >>> Unsubscribe : https://launchpad.net/~dhis2-devs >>> More help : https://help.launchpad.net/ListHelp >>> >>> >> >> >> -- >> Lorill Crees >> Project Leader / Senior Developer >> 2Paths Solutions Ltd. <http://www.2paths.com> >> >> [email protected] >> skype: lorill2paths >> (604) 689-4123 x 15 <(604)%20689-4123> >> > > > > -- > Lars Helge Øverland > Lead developer, DHIS 2 > University of Oslo > Skype: larshelgeoverland > [email protected] > http://www.dhis2.org <https://www.dhis2.org/> > > -- Lorill Crees Project Leader / Senior Developer 2Paths Solutions Ltd. <http://www.2paths.com> [email protected] skype: lorill2paths (604) 689-4123 x 15
_______________________________________________ Mailing list: https://launchpad.net/~dhis2-devs Post to : [email protected] Unsubscribe : https://launchpad.net/~dhis2-devs More help : https://help.launchpad.net/ListHelp

