Uploaded image for project: 'Jackrabbit Oak'
  1. Jackrabbit Oak
  2. OAK-1343

Performance issue with login()/getGroupMembership() with many users

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 0.14
    • 0.15
    • core
    • None

    Description

      (Tested with oak-snapshot as of ca 11:59AM, Jan 20, 2014 CET)

      When doing performance tests against oak I run into a major slowdown with each request showing the following WARNs:

      21.01.2014 11:42:51.625 *WARN* [FelixStartLevel] org.apache.jackrabbit.oak.plugins.index.property.strategy.ContentMirrorStoreStrategy Traversed 1000 nodes using index :weakreferen
      ces(294de355-7d9d-30b3-92d8-a1e6aab028cf) with filter Filter(, path=/*)
      ...
      21.01.2014 11:42:55.345 *WARN* [FelixStartLevel] org.apache.jackrabbit.oak.plugins.index.property.strategy.ContentMirrorStoreStrategy Traversed 8000 nodes using index :weakreferen
      ces(294de355-7d9d-30b3-92d8-a1e6aab028cf) with filter Filter(, path=/*)
      

      I traced this down to the following call:

      PrincipalProviderImpl.getGroupMembership

      In my performance test I create 1000 test users and it looks like the above call is currently very inefficient with that many users. This call happens during login(), so on each request you get the WARNs above, and subsequently each request is really slow.

      Attachments

        Activity

          People

            stillalex Alex Deparvu
            stefanegli Stefan Egli
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: