[Freeipa-devel] [PATCH] 734 Add handling for indirect memberof other entries.

Rob Crittenden rcritten at redhat.com
Mon Feb 21 13:52:09 UTC 2011


Simo Sorce wrote:
> On Mon, 21 Feb 2011 11:56:39 +0100
> Jakub Hrozek<jhrozek at redhat.com>  wrote:
>
>> On Sat, Feb 19, 2011 at 11:47:45PM -0500, Rob Crittenden wrote:
>>> I had to add a couple of short sleep calls to make things work a
>>> little better. The memberof plugin runs as a postop and we have no
>>> way of knowing when it has done its work. If we don't pause we may
>>> show some stale data that memberof hasn't updated yet. .3 seconds is
>>> an arbitrary choice.
>>>
>>
>> I don't know the DS plugin architecture good enough but there's no
>> callback or anything we can hook to? If the machine swaps or
>> something, we might get incorrect data with the sleep anyway..
>
> Unfortunately the way plugins are done, post-ops are pretty much
> impossible to catch from the outside.
>
> And I really don't like this either.
> I would definitely prefer for the reply to the modifying client to wait
> until the memberof plugin is done, even if this means the operations
> will be slow.
> But I don't know if this can be done easily with the current DS
> architecture ...
>
> The problem is that we cannot even enter a read loop to wait smaller
> amounts of time until we get back the right answer because a competing
> client may change the membership while we are waiting and causing us to
> loop forever ...
>
> Simo.
>

This is the same conclusion I came too and decided that a brief sleep is 
the lesser of evils.

rob




More information about the Freeipa-devel mailing list