← Back to team overview

dhis2-devs team mailing list archive

Re: [Bug 1286687] [NEW] selecting attributes for tracked entity throws exception

 

Hi Tran,

Thanks for checking. I have upgraded and just tested again but got the same
Exception. Log copied below. Happy to supply any more details as required.


Thanks

Busoye

Version:

2.15-SNAPSHOT

Build revision:

14131


* ERROR 2014-03-03 13:06:24,859 ERROR: null value in column
"programattributeid" violates not-null constraint

  Detail: Failing row contains (null, null, 1, t, null, null, 232092,
232090). (SqlExceptionHelper.java [http-apr-8080-exec-6])

* ERROR 2014-03-03 13:06:24,859 Error while executing action
(ExceptionInterceptor.java [http-apr-8080-exec-6])

org.springframework.dao.DataIntegrityViolationException: could not execute
statement; SQL [n/a]; constraint [programattributeid]; nested exception is

org.hibernate.exception.ConstraintViolationException: could not execute
statement

        at
org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:138)

        at
org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:680)

        at
org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:562)

        at
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:755)

        at
org.springframework.transaction.support.AbstractPlatformTransactionManager.commit(AbstractPlatformTransactionManager.java:724)

        at
org.springframework.transaction.interceptor.TransactionAspectSupport.commitTransactionAfterReturning(TransactionAspectSupport.java:475)

        at
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:270)

        at
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)

        at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at
org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:91)

        at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

        at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)

        at com.sun.proxy.$Proxy32.updateProgram(Unknown Source)

        at
org.hisp.dhis.trackedentity.action.program.AddProgramAction.execute(AddProgramAction.java:322)

        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)

        at java.lang.reflect.Method.invoke(Unknown Source)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invokeAction(DefaultActionInvocation.java:450)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invokeActionOnly(DefaultActionInvocation.java:289)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:252)

        at
org.hisp.dhis.webportal.interceptor.XWorkPortalUserInterceptor.intercept(XWorkPortalUserInterceptor.java:88)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.webportal.interceptor.XWorkPortalModuleInterceptor.intercept(XWorkPortalModuleInterceptor.java:93)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.webportal.interceptor.XWorkPortalMenuInterceptor.intercept(XWorkPortalMenuInterceptor.java:97)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.webportal.interceptor.XWorkPortalParamsInterceptor.intercept(XWorkPortalParamsInterceptor.java:147)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.interceptor.ContextInterceptor.intercept(ContextInterceptor.java:83)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.interceptor.UserSettingInterceptor.intercept(UserSettingInterceptor.java:81)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.security.intercept.LoginInterceptor.intercept(LoginInterceptor.java:85)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.security.intercept.XWorkSecurityInterceptor.intercept(XWorkSecurityInterceptor.java:113)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.interceptor.SystemSettingInterceptor.intercept(SystemSettingInterceptor.java:108)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.interceptor.I18nInterceptor.intercept(I18nInterceptor.java:136)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
com.opensymphony.xwork2.interceptor.ParametersInterceptor.doIntercept(ParametersInterceptor.java:249)

        at
com.opensymphony.xwork2.interceptor.MethodFilterInterceptor.intercept(MethodFilterInterceptor.java:98)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
com.opensymphony.xwork2.interceptor.StaticParametersInterceptor.intercept(StaticParametersInterceptor.java:191)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.hisp.dhis.interceptor.ExceptionInterceptor.intercept(ExceptionInterceptor.java:110)

        at
com.opensymphony.xwork2.DefaultActionInvocation.invoke(DefaultActionInvocation.java:246)

        at
org.apache.struts2.impl.StrutsActionProxy.execute(StrutsActionProxy.java:54)

        at
org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:562)

        at
org.apache.struts2.dispatcher.ng.ExecuteOperations.executeAction(ExecuteOperations.java:77)

        at
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:99)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)

        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)

        at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:5

4)

        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.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java

:183)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.hisp.dhis.security.filter.CustomAuthenticationFilter.doFilter(CustomAuthenticationFilter.java:64)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:105)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.hisp.dhis.security.filter.AutomaticAccessFilter.doFilter(AutomaticAccessFilter.java:113)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)

        at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)

        at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)

        at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)

        at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)

        at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:149)

        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)

        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)

        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)

        at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1805)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)

        at java.lang.Thread.run(Unknown Source)

Caused by: org.hibernate.exception.ConstraintViolationException: could not
execute statement

        at
org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:128)

        at
org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)

        at
org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:125)

        at
org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:110)

        at
org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:136)

        at
org.hibernate.engine.jdbc.batch.internal.NonBatchingBatch.addToBatch(NonBatchingBatch.java:58)

        at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3058)

        at
org.hibernate.persister.entity.AbstractEntityPersister.insert(AbstractEntityPersister.java:3499)

        at
org.hibernate.action.internal.EntityInsertAction.execute(EntityInsertAction.java:88)

        at
org.hibernate.engine.spi.ActionQueue.execute(ActionQueue.java:362)

        at
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:354)

        at
org.hibernate.engine.spi.ActionQueue.executeActions(ActionQueue.java:275)

        at
org.hibernate.event.internal.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:328)

        at
org.hibernate.event.internal.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:52)

        at org.hibernate.internal.SessionImpl.flush(SessionImpl.java:1233)

        at
org.hibernate.internal.SessionImpl.managedFlush(SessionImpl.java:403)

        at
org.hibernate.engine.transaction.internal.jdbc.JdbcTransaction.beforeTransactionCommit(JdbcTransaction.java:101)

        at
org.hibernate.engine.transaction.spi.AbstractTransactionImpl.commit(AbstractTransactionImpl.java:175)

        at
org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:554)

        ... 105 more

Caused by: org.postgresql.util.PSQLException: ERROR: null value in column
"programattributeid" violates not-null constraint

  Detail: Failing row contains (null, null, 1, t, null, null, 232092,
232090).

        at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2161)

        at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1890)

        at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)

        at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:560)

        at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:417)

        at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:363)

        at
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)

        at
org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:133)

        ... 119 more

* ERROR 2014-03-03 13:06:24,875 HHH000352: Unable to release batch
statement... (AbstractBatchImpl.java [http-apr-8080-exec-6])

* ERROR 2014-03-03 13:06:24,875 HHH000246: SQLException escaped proxy
(AbstractBatchImpl.java [http-apr-8080-exec-6])

java.sql.SQLException: You can't operate on a closed Statement!!!

        at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:106)

        at com.mchange.v2.sql.SqlUtils.toSQLException(SqlUtils.java:65)

        at
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.clearBatch(NewProxyPreparedStatement.java:1703)

        at
org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.releaseStatements(AbstractBatchImpl.java:163)

        at
org.hibernate.engine.jdbc.batch.internal.AbstractBatchImpl.release(AbstractBatchImpl.java:197)

        at
org.hibernate.engine.jdbc.internal.JdbcCoordinatorImpl.close(JdbcCoordinatorImpl.java:174)

        at
org.hibernate.engine.transaction.internal.TransactionCoordinatorImpl.close(TransactionCoordinatorImpl.java:277)

        at org.hibernate.internal.SessionImpl.close(SessionImpl.java:353)

        at
org.springframework.orm.hibernate4.SessionFactoryUtils.closeSession(SessionFactoryUtils.java:105)

        at
org.springframework.orm.hibernate4.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:158)

        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)

        at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)

        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224)

        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169)

        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168)

        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)

        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927)

        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)

        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987)

        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579)

        at
org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1805)

        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown
Source)

        at java.lang.Thread.run(Unknown Source)

Caused by: java.lang.NullPointerException

        at
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.maybeDirtyTransaction(NewProxyPreparedStatement.java:2069)

        at
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.clearBatch(NewProxyPreparedStatement.java:1695)

        ... 28 more





On 3 March 2014 12:45, Tran Chau <tran.hispvietnam@xxxxxxxxx> wrote:

> Hi Adebusoye,
>
> It works fine with R. 14131<http://bazaar.launchpad.net/~dhis2-devs-core/dhis2/trunk/revision/14131>.
> Can you test it again with latest version ?
>
> Best regards,
> ------------------------------------------------
> Châu Thu Trân
> HISP Viet Nam
> Email: tran.hispvietnam@xxxxxxxxx
>
>
> On Sun, Mar 2, 2014 at 10:46 AM, Adebusoye Anifalaje <busoye@xxxxxxxx>wrote:
>
>> Public bug reported:
>>
>> To create a program for tracking villages, I defined 3 attributes: Name,
>> Population and Date. Name and Date are mandatory.
>>
>> In Programs, selected Multiple entry with registration, set enrolment
>> date as Registration Date and unchecked show incident date.
>>
>> When I select the 3 attributes I created and update, this comes up with
>> an error. I checked the program-attributes table but this doesn't have
>> any records as the programattributesid is not generated for some reason.
>> Is there a step I am missing in this new world of Trackedentity?
>>
>> Relevant section of log  pasted below.
>>
>> Any help most welcome.
>>
>> Thanks.
>>
>> Busoye
>>
>> Version:
>> 2.15-SNAPSHOT
>> Build revision:
>> 14116
>>
>> ** Affects: dhis2
>>      Importance: Undecided
>>          Status: New
>>
>> --
>> You received this bug notification because you are a member of DHIS 2
>> developers, which is subscribed to DHIS.
>> https://bugs.launchpad.net/bugs/1286687
>>
>> Title:
>>   selecting attributes for tracked entity throws exception
>>
>> Status in DHIS 2:
>>   New
>>
>> Bug description:
>>   To create a program for tracking villages, I defined 3 attributes:
>>   Name, Population and Date. Name and Date are mandatory.
>>
>>   In Programs, selected Multiple entry with registration, set enrolment
>>   date as Registration Date and unchecked show incident date.
>>
>>   When I select the 3 attributes I created and update, this comes up
>>   with an error. I checked the program-attributes table but this doesn't
>>   have any records as the programattributesid is not generated for some
>>   reason. Is there a step I am missing in this new world of
>>   Trackedentity?
>>
>>   Relevant section of log  pasted below.
>>
>>   Any help most welcome.
>>
>>   Thanks.
>>
>>   Busoye
>>
>>   Version:
>>   2.15-SNAPSHOT
>>   Build revision:
>>   14116
>>
>> To manage notifications about this bug go to:
>> https://bugs.launchpad.net/dhis2/+bug/1286687/+subscriptions
>>
>> _______________________________________________
>> Mailing list: https://launchpad.net/~dhis2-devs
>> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
>> Unsubscribe : https://launchpad.net/~dhis2-devs
>> More help   : https://help.launchpad.net/ListHelp
>>
>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~dhis2-devs
> Post to     : dhis2-devs@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~dhis2-devs
> More help   : https://help.launchpad.net/ListHelp
>
>

Follow ups

References