Simo Sorce wrote:
On Mon, 21 Feb 2011 11:56:39 +0100
Jakub Hrozek<jhro...@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

_______________________________________________
Freeipa-devel mailing list
Freeipa-devel@redhat.com
https://www.redhat.com/mailman/listinfo/freeipa-devel

Reply via email to