Uploaded image for project: 'Grouper'
  1. Grouper
  2. GRP-1411

Generic error message when attempting to delete group that is part of a composite group

    XMLWordPrintable

Details

    • Bug
    • Status: Resolved
    • Minor
    • Resolution: Fixed
    • None
    • 2.3.1, 2.3.0.patch
    • None
    • None

    Description

      When you attempt to delete a group that is still part of a composite group, the delete fails with a message saying "Error: there was a problem deleting the group", but no specifics on why there was a problem such as...that it is still part of a composite group.

      Recommendation: create an error message for that case to tell the user why the group can't be deleted.

      Same behavior currently happens for both UI and WS call.

      Stack trace:

      2016-11-07 16:20:58,106: [ajp-nio-8009-exec-10] WARN UiV2Group.groupDeleteSubmit(1459) - - Error deleting group: '000000028343'/'person'/'jdbc', Group[name=
      uw:org:doit_security:Security Authorizations:hrs_vpn_approval,uuid=d1c4b9c9b39a43ecb7453ef4a62c5ac8]
      edu.internet2.middleware.grouper.exception.GroupDeleteException: Problem in HibernateSession: HibernateSession (521f4930): notNew, notReadonly, READ_WRITE_NEW
      , activeTransaction, session (6ba3fc71), stem name: uw:org:doit_security:Security Authorizations:hrs_vpn_approval, group extension: hrs_vpn_approval, group dE
      xtension: HRS VPN Approval, uuid: d1c4b9c9b39a43ecb7453ef4a62c5ac8, ,
      Problem in HibernateSession: HibernateSession (761565fb): new, notReadonly, READ_WRITE_NEW, notActiveTransaction, session (6ba3fc71)
      at edu.internet2.middleware.grouper.Group$6.callback(Group.java:1838)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:687)
      at edu.internet2.middleware.grouper.Group.delete(Group.java:1759)
      at edu.internet2.middleware.grouper.grouperUi.serviceLogic.UiV2Group.groupDeleteSubmit(UiV2Group.java:1444)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
      at java.lang.reflect.Method.invoke(Method.java:606)
      at edu.internet2.middleware.grouper.util.GrouperUtil.invokeMethod(GrouperUtil.java:4068)
      at edu.internet2.middleware.grouper.util.GrouperUtil.callMethod(GrouperUtil.java:4019)
      at edu.internet2.middleware.grouper.j2ee.GrouperUiRestServlet.doGet(GrouperUiRestServlet.java:288)
      at edu.internet2.middleware.grouper.j2ee.GrouperUiRestServlet.doPost(GrouperUiRestServlet.java:160)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:648)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:230)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at org.owasp.csrfguard.CsrfGuardFilter.doFilter(CsrfGuardFilter.java:110)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at edu.internet2.middleware.grouper.ui.GrouperUiFilter.doFilter(GrouperUiFilter.java:1023)
      at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:192)
      at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:165)
      at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:198)
      at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:108)
      at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:522)
      at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140)
      at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:79)
      at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:620)
      at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87)
      at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:349)
      at org.apache.coyote.ajp.AjpProcessor.service(AjpProcessor.java:780)
      at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)
      at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:785)
      at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1425)
      at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
      at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
      at java.lang.Thread.run(Thread.java:745)
      Caused by: edu.internet2.middleware.grouper.internal.dao.GrouperDAOException: Problem in HibernateSession: HibernateSession (521f4930): notNew, notReadonly, READ_WRITE_NEW, activeTransaction, session (6ba3fc71)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession._internal_hibernateSessionCatch(HibernateSession.java:575)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:697)
      at edu.internet2.middleware.grouper.internal.dao.hib3.Hib3GroupDAO.delete(Hib3GroupDAO.java:138)
      at edu.internet2.middleware.grouper.Group$6.callback(Group.java:1812)
      ... 41 more
      Caused by: org.hibernate.exception.ConstraintViolationException: could not delete: edu.internet2.middleware.grouper.Group#d1c4b9c9b39a43ecb7453ef4a62c5ac8
      at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:96)
      at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
      at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2728)
      at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2911)
      at org.hibernate.action.EntityDeleteAction.execute(EntityDeleteAction.java:97)
      at org.hibernate.engine.ActionQueue.execute(ActionQueue.java:273)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:265)
      at org.hibernate.engine.ActionQueue.executeActions(ActionQueue.java:189)
      at org.hibernate.event.def.AbstractFlushingEventListener.performExecutions(AbstractFlushingEventListener.java:321)
      at org.hibernate.event.def.DefaultFlushEventListener.onFlush(DefaultFlushEventListener.java:51)
      at org.hibernate.impl.SessionImpl.flush(SessionImpl.java:1216)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession._internal_hibernateSessionEnd(HibernateSession.java:498)
      at edu.internet2.middleware.grouper.hibernate.HibernateSession.callbackHibernateSession(HibernateSession.java:694)
      ... 43 more
      Caused by: java.sql.SQLIntegrityConstraintViolationException: ORA-02292: integrity constraint (GROUPER.FK_COMPOSITES_RIGHT_FACTOR) violated - child record found

      at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:459)
      at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:400)
      at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:999)
      at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:539)
      at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:235)
      at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:543)
      at oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:239)
      at oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:1448)
      at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1764)
      at oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.java:4401)
      at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:4568)
      at oracle.jdbc.driver.OraclePreparedStatementWrapper.executeUpdate(OraclePreparedStatementWrapper.java:5579)
      at com.mchange.v2.c3p0.impl.NewProxyPreparedStatement.executeUpdate(NewProxyPreparedStatement.java:105)
      at org.hibernate.persister.entity.AbstractEntityPersister.delete(AbstractEntityPersister.java:2710)
      ... 53 more

      Attachments

        Activity

          People

            chris.hyzer@at.internet2.edu Chris Hyzer (upenn.edu)
            jbabb27 James Babb
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Smart Checklist