[SSSD] [PATCHES] services startup and identification
Stephen Gallagher
sgallagh at redhat.com
Tue Aug 11 12:41:45 UTC 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 08/11/2009 06:52 AM, Simo Sorce wrote:
> The following 3 patches changes the way services are started up and
> identify themselves to the monitor.
>
> The first patch is just minor or cosmetic fixes.
>
> The second patch changes the identification from monitor initiated to
> service initiated and acked by the monitor. This allows the service to
> perform the identification after it has completely set up all the dbus
> channel and is ready to receive a reply avoiding nasty race conditions.
>
> The third patch changes the way services are started at startup. The
> Data Provider service is given a 1 second advantage so that it should
> normally be all set up by the time other service start and try to
> connect to it. This way services normally avoid racing against dp and
> can fully initialize on the first attempt and not rely on reconnection.
>
> Initial testing seem to work pretty well and startup does not show ugly
> errors anymore.
>
> I may send an additional separate patch to make services identify
> against dp the same way they do against the monitor (ie service
> initiated instead of server initiated). A patch will follow if I can
> pull it off in a short time frame.
>
> Simo.
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> sssd-devel mailing list
> sssd-devel at lists.fedorahosted.org
> https://fedorahosted.org/mailman/listinfo/sssd-devel
Patch 0001: Ack
Patch 0002:
Minor typo in client_registration: regeistration should be registration
Coding standard for dbus methods suggest the more readable:
ret = dbus_message_append_args(reply,
DBUS_TYPE_STRING, &version,
DBUS_TYPE_INVALID);
Introduces a segmentation fault when an LDAP server is very slow. The
ping timeout is hit and frees the connection, but it subsequently
segfaults on a double-free.
I'd rather that we moved the monitor versions to integers. We never
actually used the dbus_get_monitor_version() call previously, so there's
no ABI break if we simply move the version to 1 now.
600000 seconds is way too long a timeout for monitor_common_send_id.
Prefer -1 (which libdbus defines as "a reasonable timeout") if you don't
know what to set.
Patch 0003: Ack.
- --
Stephen Gallagher
RHCE 804006346421761
Looking to carve out IT costs?
www.redhat.com/carveoutcosts/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Fedora - http://enigmail.mozdev.org/
iEYEARECAAYFAkqBZwQACgkQeiVVYja6o6OxSgCdENxAgzKu7hQbGwodqHMa7sr1
nrAAnjAD2N77pgCMEUHPisV/m8+ABy9U
=CWlq
-----END PGP SIGNATURE-----
More information about the sssd-devel
mailing list