You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jackrabbit.apache.org by "angela (JIRA)" <ji...@apache.org> on 2012/07/18 15:44:34 UTC

[jira] [Created] (JCR-3394) Use multiple sessions to calculate permissions

angela created JCR-3394:
---------------------------

             Summary: Use multiple sessions to calculate permissions
                 Key: JCR-3394
                 URL: https://issues.apache.org/jira/browse/JCR-3394
             Project: Jackrabbit Content Repository
          Issue Type: Sub-task
            Reporter: angela


see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-3394:
------------------------

    Attachment: JCR-3394_2.patch

improved patch including some more docu. note that with that new patch  the session-pool is only created if the access control provider configuration is present and contains the "session-pool" config option with value "true".

in order to enable the pool the workspace config (or the workspace template) needs to contain the following entry:

<AccessControlProvider class="...">
      <param name="session-pool" value="true"/>
</AccessControlProvider>

note: i didn't add a special handling for size "1" and decided to never use the session specified to initialize the pool within the pool in order to be sure that the pool can really control the session it holds (and properly release them upon disposal) without interfering with other internals.

note2: the size is still retrieved from a system property. we have to remove that before we include it into the trunk... just left it there for further testing.
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, JCR-3394_2.patch, pool-1-10-100-nocache.csv, pool-1-10-100.csv, pooled.csv, pooled.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "angela (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

angela updated JCR-3394:
------------------------

    Attachment: JCR-3394.patch

initial patch using original pool implementation from julian but passing it into ac-evaluation (ab)using the configuration.

i did neither carefully test nor run any performance benchmarks.

after all... it's still a hack. IMO the proper way was to solve the fundamental issues but that would require quite some rewrite...
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment: pool-1-10-100-nocache.csv

Test results with pool sizes 1, 10, and 100, and disabled cache.
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pool-1-10-100-nocache.csv, pool-1-10-100.csv, pooled.csv, pooled.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment:     (was: pool-sizes.png)
    
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment: pool-1-10-100.csv

test results for pool sizes 1, 10, and 100
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pool-1-10-100.csv, pooled.csv, pooled.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Comment Edited] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13418475#comment-13418475 ] 

Julian Reschke edited comment on JCR-3394 at 7/20/12 1:14 PM:
--------------------------------------------------------------

Testing with different pool sizes; inconclusive results. Needs investigation.

(Caused by not running the tests correctly; fixing this right now)
                
      was (Author: reschke):
    Testing with different pool sizes; inconclusive results. Needs investigation.
                  
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: 3394.csv, 3394.png, JCR-3394.patch, pool-sizes.csv, pool-sizes.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment: pool-sizes.csv
                pool-sizes.png

Testing with different pool sizes; inconclusive results. Needs investigation.
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: 3394.csv, 3394.png, JCR-3394.patch, pool-sizes.csv, pool-sizes.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment:     (was: 3394.png)
    
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pool-sizes.csv, pool-sizes.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment:     (was: pool-sizes.csv)
    
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment: 3394.csv
                3394.png

Test results, comparing with Jackrabbit trunk.

Reminder: names are {branch}-{cachesize}-{strategy}-{cachenoacl}-{specialcaseroot}

The results show that "P" and "T" work much better with the session pool. We also see that special-casing the root node for some weird reason seems to make things slower. (this deserves more investigation)

Tests with different session pool sizes still need to be done.
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: 3394.csv, 3394.png, JCR-3394.patch
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment:     (was: 3394.csv)
    
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pool-sizes.csv, pool-sizes.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Comment: was deleted

(was: Testing with different pool sizes; inconclusive results. Needs investigation.

(Caused by not running the tests correctly; fixing this right now))
    
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pooled.csv, pooled.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] [Updated] (JCR-3394) Use multiple sessions to calculate permissions

Posted by "Julian Reschke (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/JCR-3394?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Julian Reschke updated JCR-3394:
--------------------------------

    Attachment: pooled.csv
                pooled.png

Tests with different pool sizes (machine: ancient Quad-Core Win7).

We see that "P" works well with multiple sessions. "T" probably isn't worth the effort. "S" is bad with a single session (which is what's the current state of things)
                
> Use multiple sessions to calculate permissions
> ----------------------------------------------
>
>                 Key: JCR-3394
>                 URL: https://issues.apache.org/jira/browse/JCR-3394
>             Project: Jackrabbit Content Repository
>          Issue Type: Sub-task
>            Reporter: angela
>         Attachments: JCR-3394.patch, pooled.csv, pooled.png
>
>
> see JCR-2950 for information. subtask to track changes related to that (potential) improvement

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira