[Freeipa-devel] [PATCH] 1 Do lazy initializiation ipalib

Rob Crittenden rcritten at redhat.com
Tue Oct 25 20:30:41 UTC 2011


Ondrej Hamada wrote:
> On 10/25/2011 04:01 PM, Martin Kosek wrote:
>> On Tue, 2011-10-25 at 15:29 +0200, Ondrej Hamada wrote:
>>> https://fedorahosted.org/freeipa/ticket/1336
>>>
>>> Lazy initialization of ipalib plugins is used under all contexts, not
>>> only when context = cli. Every loaded plugin is pre-finalized - a flag
>>> is set, which means, that the plugin needs to be finalized. Then every
>>> call of plugin's __gettattr__ checks the flag and finalizes the plugin
>>> if necessary. The code was implemented by jcholast. Time reduction of
>>> commands execution is quite markable:
>>>
>>> patch [s] | normal [s] | command
>>> -----------------------------------------------------------------------
>>> 1.468 | 2.287 | ipa user-add jsmith --firt=john
>>> --last=smith
>>> 1.658 | 2.235 | ipa user-del jsmith
>>> 1.624 | 2.204 | ipa dnsrecord-find example.com
>>>
>> Thanks for submitting the patch. Ondra, just please provide the patch in
>> proper format (exported via command `git format-patch -M -C --patience
>> --full-index -1' which I sent you earlier).
>>
>> Martin
>>
>>
> Sorry, correct version attached

Wow, this is very impressive, great job Ondra and Honza!

Martin, ACK from me but I'd like a second opinion. The patch is very 
straightforward and clean, just want to make sure we're not missing a 
corner case.

I ran the self-tests and didn't see any problem there.

Before pushing please add the ticket # to the commit.

rob




More information about the Freeipa-devel mailing list