[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