jackrabbit-oak-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Chetan Mehrotra (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (OAK-3146) ExternalLoginModuleFactory should inject SyncManager and ExternalIdentityProviderManager
Date Tue, 28 Jul 2015 08:14:04 GMT

    [ https://issues.apache.org/jira/browse/OAK-3146?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14644046#comment-14644046

Chetan Mehrotra commented on OAK-3146:

bq.  you filed this issue with the label 'performance' but fixed the issue without even verifying
i.e. writing a benchmark test that would prove that you actually found/fixed a performance

For me the issue was logical one as its knows that frequent lookup on ServiceRegistry is slow
and becomes a bottleneck. Reproducing such performance issue is tricky and hence I went ahead
with the proposed fix based on _logical_ understanding of the problem and from my previous
experience in such issues

bq. there is not auto-backport for improvements and i want you to revert that.

Have reverted the various changes now

Unassigning the issue now as I would not have time to create a benchmark for this issue

> ExternalLoginModuleFactory should inject SyncManager and ExternalIdentityProviderManager
> ----------------------------------------------------------------------------------------
>                 Key: OAK-3146
>                 URL: https://issues.apache.org/jira/browse/OAK-3146
>             Project: Jackrabbit Oak
>          Issue Type: Improvement
>          Components: security
>            Reporter: Chetan Mehrotra
>            Assignee: Chetan Mehrotra
>            Priority: Minor
>              Labels: performance
>             Fix For: 1.3.4
>         Attachments: OAK-3146.patch
> {{ExternalLoginModule}} currently performs a lookup of {{SyncManager}} and {{ExternalIdentityProviderManager}}
in initialize call which performs service lookup using ServiceTracker. Doing a service lookup
in critical path would have adverse performance impact. 
> Instead of performing the lookup {{ExternalLoginModuleFactory}} should track the two
manager instances and pass them to {{ExternalLoginModule}}. This would ensure that expensive
operation like service lookup is not performed in critical path

This message was sent by Atlassian JIRA

View raw message