dhis2-devs team mailing list archive
-
dhis2-devs team
-
Mailing list archive
-
Message #43679
[DHIS] Unable to delete a user
Hi Morten,
We are using DHIS version 2.23 and created some sample metadata on it. When
we try to delete a user, the user does not get removed.
Following are the logs for the exception:
* INFO 2016-03-04 16:13:13,146 'admin' update
org.hisp.dhis.user.UserAuthorityGroup, name: Superuser, uid: gETZb5SDObu
(AuditLogUtil.java [qtp1727373358-105])
* ERROR 2016-03-04 16:13:13,151 Failed to invoke method deleteUser on
DeletionHandler 'UserSettingDeletionHandler' (DefaultDeletionManager.java
[qtp1727373358-105])
java.lang.reflect.InvocationTargetException
at sun.reflect.GeneratedMethodAccessor618.invoke(Unknown Source)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at
org.hisp.dhis.system.deletion.DefaultDeletionManager.execute(DefaultDeletionManager.java:147)
at
org.hisp.dhis.system.deletion.DeletionInterceptor.intercept(DeletionInterceptor.java:54)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
Caused by: org.hibernate.NonUniqueObjectException: a different object with
the same identifier value was already associated with the session:
[org.hisp.dhis.user.UserSetting#org.hisp.dhis.user.UserSetting@528fc6ba]
at
org.hibernate.engine.internal.StatefulPersistenceContext.checkUniqueness(StatefulPersistenceContext.java:696)
at
org.hibernate.event.internal.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:119)
at
org.hibernate.event.internal.DefaultDeleteEventListener.onDelete(DefaultDeleteEventListener.java:74)
at org.hibernate.internal.SessionImpl.fireDelete(SessionImpl.java:918)
at org.hibernate.internal.SessionImpl.delete(SessionImpl.java:855)
at
org.hisp.dhis.user.hibernate.HibernateUserSettingStore.deleteUserSetting(HibernateUserSettingStore.java:107)
at
org.hisp.dhis.user.DefaultUserSettingService.deleteUserSetting(DefaultUserSettingService.java:160)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
* INFO 2016-03-04 16:13:13,154 'admin' delete org.hisp.dhis.user.User,
name: user new, uid: bSJzGJPYnWi (AuditLogUtil.java [qtp1727373358-105])
* INFO 2016-03-04 16:13:13,155 'admin' delete
org.hisp.dhis.user.UserCredentials, name: admin admin (AuditLogUtil.java
[qtp1727373358-105])
* INFO 2016-03-04 16:13:13,158 'admin' delete org.hisp.dhis.user.User,
name: user new, uid: bSJzGJPYnWi (AuditLogUtil.java [qtp1727373358-105])
* WARN 2016-03-04 16:13:13,174 SQL Error: 0, SQLState: 23503
(SqlExceptionHelper.java [qtp1727373358-105])
* ERROR 2016-03-04 16:13:13,175 ERROR: update or delete on table "userinfo"
violates foreign key constraint "fk_usersetting_userinfoid" on table
"usersetting"
Detail: Key (userinfoid)=(289) is still referenced from table
"usersetting". (SqlExceptionHelper.java [qtp1727373358-105])
* ERROR 2016-03-04 16:13:13,175 Error while executing action
(ExceptionInterceptor.java [qtp1727373358-105])
org.springframework.dao.DataIntegrityViolationException: could not execute
statement; SQL [n/a]; constraint [fk_usersetting_userinfoid]; nested
exception is org.hibernate.exception.ConstraintViolationException: could
not execute statement
at
org.springframework.orm.hibernate4.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:163)
at
org.springframework.orm.hibernate4.HibernateTransactionManager.convertHibernateAccessException(HibernateTransactionManager.java:730)
at
org.springframework.orm.hibernate4.HibernateTransactionManager.doCommit(HibernateTransactionManager.java:592)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.processCommit(AbstractPlatformTransactionManager.java:757)
at
org.springframework.transaction.support.AbstractPlatformTransactionManager.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.invoke(TransactionInterceptor.java:96)
Caused by: org.hibernate.exception.ConstraintViolationException: could not
execute statement
at
org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:129)
at
org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:49)
at
org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:124)
Caused by: org.postgresql.util.PSQLException: ERROR: update or delete on
table "userinfo" violates foreign key constraint
"fk_usersetting_userinfoid" on table "usersetting"
Detail: Key (userinfoid)=(289) is still referenced from table
"usersetting".
at
org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2198)
at
org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1927)
at
org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:561)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:419)
at
org.postgresql.jdbc2.AbstractJdbc2Statement.executeUpdate(AbstractJdbc2Statement.java:365)
at
com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
at
org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:186)
Could you please help fix this.
Regards,
Archana Chillala
Application Developer
Email archanac@xxxxxxxxxxxxxxxx
Telephone +91 9100960533 <+91+9100960533>
[image: ThoughtWorks]
<http://www.thoughtworks.com/?utm_campaign=archana-chillala-signature&utm_medium=email&utm_source=thoughtworks-email-signature-generator>
Follow ups