Details

    • Bug
    • Resolution: Done
    • Major
    • xCM 5.0 SP5, xCM 6.0.0
    • xCM 5.0 SP5, xCM 6.0.0
    • None

    Description

      6.0 r22127

      I have set some groups for each role of my N-step WF, but when I try to go trough the different steps of the validation process with my different users, I can't even do the first notification. I have so edited again my roles, and no one has been set. I have so redifined it, and reedited: every thing has been lost again, even using apply button, then ok button.

      TestRail: Results

        Attachments

          Activity

            [JAHIA-3432] N step WF: impossible to set WF roles

            Resolution: removed mMembers field, which is hiding the parent one
            Commit: 25066

            shyrkov Sergiy Shyrkov (Inactive) added a comment - Resolution: removed mMembers field, which is hiding the parent one Commit: 25066

            In following case the isMember() returns "false" (incorrect):

            • give an LDAP group the RW access to a page
            • login with one of the group's members
            shyrkov Sergiy Shyrkov (Inactive) added a comment - In following case the isMember() returns "false" (incorrect): give an LDAP group the RW access to a page login with one of the group's members

            I can not reproduce the ClientAbortException, but the there are not too many reasons for this kind of exception:
            1) The end user closes the browser window, when a page is still loading
            2) The browser cancels the request on a timeout

            In both these cases the server (the Tomcat itself) throws the ClientAbortException.

            I can assume that the loading of list of groups is taken too long. On my machine, using LDAP server on 10.8.37.17 via software-based VPN, it takes minutes to display list of LDAP grops if the preloading is enabled (default option).

            Thank you once again for testing it!

            shyrkov Sergiy Shyrkov (Inactive) added a comment - I can not reproduce the ClientAbortException, but the there are not too many reasons for this kind of exception: 1) The end user closes the browser window, when a page is still loading 2) The browser cancels the request on a timeout In both these cases the server (the Tomcat itself) throws the ClientAbortException. I can assume that the loading of list of groups is taken too long. On my machine, using LDAP server on 10.8.37.17 via software-based VPN, it takes minutes to display list of LDAP grops if the preloading is enabled (default option). Thank you once again for testing it!

            In sp5 when I access to LDAP server and click on admin/ managing groups I have this exception in the console:

            INFO: Server startup in 21094 ms
            2008-10-07 14:19:00,390: ERROR [org.jahia.admin.users.ManageUsers] - Error
            ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error
            at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:366)
            at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:323)
            at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:392)
            at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:381)
            at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89)
            at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336)
            at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:395)
            at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136)
            at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:146)
            at java.io.OutputStreamWriter.write(OutputStreamWriter.java:204)
            at org.jahia.bin.JahiaAdministration.doRedirect(JahiaAdministration.java:604)
            at org.jahia.admin.users.ManageUsers.doRedirect(ManageUsers.java:244)
            at org.jahia.admin.users.ManageUsers.displayUsers(ManageUsers.java:285)
            at org.jahia.admin.users.ManageUsers.userRequestDispatcher(ManageUsers.java:169)
            at org.jahia.admin.users.ManageUsers.<init>(ManageUsers.java:135)
            at org.jahia.bin.JahiaAdministration.userRequestDispatcher(JahiaAdministration.java:449)
            at org.jahia.bin.JahiaAdministration.service(JahiaAdministration.java:257)
            at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at org.jahia.bin.filters.esi.ESIFilter.doFilter(ESIFilter.java:110)
            at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
            at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
            at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
            at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174)
            at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433)
            at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
            at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
            at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
            at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
            at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874)
            at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
            at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
            at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
            at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
            at java.lang.Thread.run(Thread.java:595)
            Caused by: java.net.SocketException: Software caused connection abort: socket write error
            at java.net.SocketOutputStream.socketWrite0(Native Method)
            at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92)
            at java.net.SocketOutputStream.write(SocketOutputStream.java:136)
            at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:747)
            at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432)
            at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347)
            at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:770)
            at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:126)
            at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:580)
            at org.apache.coyote.Response.doWrite(Response.java:560)
            at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:361)

            aafshar aafshar [X] (Inactive) added a comment - In sp5 when I access to LDAP server and click on admin/ managing groups I have this exception in the console: INFO: Server startup in 21094 ms 2008-10-07 14:19:00,390: ERROR [org.jahia.admin.users.ManageUsers] - Error ClientAbortException: java.net.SocketException: Software caused connection abort: socket write error at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:366) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:323) at org.apache.catalina.connector.OutputBuffer.writeBytes(OutputBuffer.java:392) at org.apache.catalina.connector.OutputBuffer.write(OutputBuffer.java:381) at org.apache.catalina.connector.CoyoteOutputStream.write(CoyoteOutputStream.java:89) at sun.nio.cs.StreamEncoder$CharsetSE.writeBytes(StreamEncoder.java:336) at sun.nio.cs.StreamEncoder$CharsetSE.implWrite(StreamEncoder.java:395) at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:136) at sun.nio.cs.StreamEncoder.write(StreamEncoder.java:146) at java.io.OutputStreamWriter.write(OutputStreamWriter.java:204) at org.jahia.bin.JahiaAdministration.doRedirect(JahiaAdministration.java:604) at org.jahia.admin.users.ManageUsers.doRedirect(ManageUsers.java:244) at org.jahia.admin.users.ManageUsers.displayUsers(ManageUsers.java:285) at org.jahia.admin.users.ManageUsers.userRequestDispatcher(ManageUsers.java:169) at org.jahia.admin.users.ManageUsers.<init>(ManageUsers.java:135) at org.jahia.bin.JahiaAdministration.userRequestDispatcher(JahiaAdministration.java:449) at org.jahia.bin.JahiaAdministration.service(JahiaAdministration.java:257) at javax.servlet.http.HttpServlet.service(HttpServlet.java:803) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.jahia.bin.filters.esi.ESIFilter.doFilter(ESIFilter.java:110) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:174) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:433) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151) at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:874) at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665) at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528) at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689) at java.lang.Thread.run(Thread.java:595) Caused by: java.net.SocketException: Software caused connection abort: socket write error at java.net.SocketOutputStream.socketWrite0(Native Method) at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:92) at java.net.SocketOutputStream.write(SocketOutputStream.java:136) at org.apache.coyote.http11.InternalOutputBuffer.realWriteBytes(InternalOutputBuffer.java:747) at org.apache.tomcat.util.buf.ByteChunk.flushBuffer(ByteChunk.java:432) at org.apache.tomcat.util.buf.ByteChunk.append(ByteChunk.java:347) at org.apache.coyote.http11.InternalOutputBuffer$OutputStreamOutputBuffer.doWrite(InternalOutputBuffer.java:770) at org.apache.coyote.http11.filters.ChunkedOutputFilter.doWrite(ChunkedOutputFilter.java:126) at org.apache.coyote.http11.InternalOutputBuffer.doWrite(InternalOutputBuffer.java:580) at org.apache.coyote.Response.doWrite(Response.java:560) at org.apache.catalina.connector.OutputBuffer.realWriteBytes(OutputBuffer.java:361)

            JAHIA-3432: N step WF: impossible to set WF roles
            http://www.jahia.net/jira/browse/JAHIA-3432
            Resolution: 1) fix lazy loading of LDAP group members (if the 'groups.ldap.preload' in the groups.ldap.properties is set to 'false' - members are not loaded at all)
            2) Implement proper lazy loading of group members:

            • membership is checked without loading all members of the group in this case
            • all members are loaded only if the JahiaGroup.members() method is called (forces loading of all members of the group)
            • in the Jahia Administration / Site Settings / Group Maanagement the members of the group in the group list overview are not displayed (before 'mygroup (user1, user2, ...)', now 'mygroup (...)'). Members are loaded in this case only in the edit group view

            Commit: 22429 (SP5) and 22430 (Andromeda)

            shyrkov Sergiy Shyrkov (Inactive) added a comment - JAHIA-3432 : N step WF: impossible to set WF roles http://www.jahia.net/jira/browse/JAHIA-3432 Resolution: 1) fix lazy loading of LDAP group members (if the 'groups.ldap.preload' in the groups.ldap.properties is set to 'false' - members are not loaded at all) 2) Implement proper lazy loading of group members: membership is checked without loading all members of the group in this case all members are loaded only if the JahiaGroup.members() method is called (forces loading of all members of the group) in the Jahia Administration / Site Settings / Group Maanagement the members of the group in the group list overview are not displayed (before 'mygroup (user1, user2, ...)', now 'mygroup (...)'). Members are loaded in this case only in the edit group view Commit: 22429 (SP5) and 22430 (Andromeda)

            Thanks for info, so please check with Thomas and Benji if necessary for solving/finding a solution for this issue.

            aafshar aafshar [X] (Inactive) added a comment - Thanks for info, so please check with Thomas and Benji if necessary for solving/finding a solution for this issue.

            Groups and memberships are stored correctly in the database but seems not loaded properly because of the lazy loading for group members introduced in CONE-60 (commits 19536, 19538 in the trunk by Benjamin). As now the preloading of group members is completely disabled (commit 21742 by Thomas), group members are not loaded when reading a group.
            We should find another solution for this lazy loading, e.g. using a proxy to retrieve group members when they are first requested (using members(), isMember() etc. methods).

            The problem should also be present in the trunk in case the "preloadDBGroupMembersActivated" is set to false in the jahia.properties

            shyrkov Sergiy Shyrkov (Inactive) added a comment - Groups and memberships are stored correctly in the database but seems not loaded properly because of the lazy loading for group members introduced in CONE-60 (commits 19536, 19538 in the trunk by Benjamin). As now the preloading of group members is completely disabled (commit 21742 by Thomas), group members are not loaded when reading a group. We should find another solution for this lazy loading, e.g. using a proxy to retrieve group members when they are first requested (using members(), isMember() etc. methods). The problem should also be present in the trunk in case the "preloadDBGroupMembersActivated" is set to false in the jahia.properties

            Nothing seems to be stored as Anna said, but is it a view or a backend problem ?

            rfelden Romain Felden (Inactive) added a comment - Nothing seems to be stored as Anna said, but is it a view or a backend problem ?

            People

              shyrkov Sergiy Shyrkov (Inactive)
              dsaulnier_old Damien Saulnier
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                TestRail: Runs

                  TestRail: Cases

                    Packages

                      Version Package
                      xCM 5.0 SP5
                      xCM 6.0.0