#3813 sssd startup issues since 1.16.2 (PID file related)
Closed: Fixed a year ago Opened 2 years ago by tgurr.

Version 1.16.1 is working fine, but with newer versions I run into a systemd service timeout (the usual 1min30sec).

‚óŹ sssd.service - System Security Services Daemon
   Loaded: loaded (/usr/x86_64-pc-linux-gnu/lib/systemd/system/sssd.service; enabled; vendor preset: enabled)
   Active: failed (Result: timeout) since Thu 2018-08-23 19:30:07 CEST; 2min 11s ago
  Process: 320 ExecStart=/usr/x86_64-pc-linux-gnu/bin/sssd -i ${DEBUG_LOGGER} (code=exited, status=0/SUCCESS)
 Main PID: 320 (code=exited, status=0/SUCCESS)

Aug 23 19:28:36 localhost sssd_be[321]: ldapdb_canonuser_plug_init() failed in sasl_canonuser_add_plugin(): invalid parameter supplied
Aug 23 19:28:36 localhost sssd_be[321]: _sasl_plugin_load failed on sasl_canonuser_init for plugin: ldapdb
Aug 23 19:28:36 localhost sssd[nss][322]: Starting up
Aug 23 19:28:36 localhost sssd[pam][323]: Starting up
Aug 23 19:30:07 localhost systemd[1]: sssd.service: Start operation timed out. Terminating.
Aug 23 19:30:07 localhost sssd[be[DOMAIN]][321]: Shutting down
Aug 23 19:30:07 localhost sssd[pam][323]: Shutting down
Aug 23 19:30:07 localhost sssd[nss][322]: Shutting down
Aug 23 19:30:07 localhost systemd[1]: sssd.service: Failed with result 'timeout'.
Aug 23 19:30:07 localhost systemd[1]: Failed to start System Security Services Daemon.

While this is true for 1.16.2 and 2.0.0 there is a small difference. Both fail at boot but when doing a manual systemctl start sssd version 1.16.2 works fine afterwards. 2.0.0 however won't work either way.

Once the timeout happens /var/log/sssd/sssd.log gives a hint:

(Thu Aug 23 19:27:48 2018) [sssd] [monitor_cleanup] (0x0010): Error removing pidfile! (2 [Datei oder Verzeichnis nicht gefunden])

So after having a look it seems like sssd is not creating its PID file and hence systemd thinks it's not running. During the 1min30sec service timeout systemd gives sssd it seems to work just fine, e.g. the files in /var/lib/sss are populated, logging in works and ps aux also shows that the sssd processes are running.

However once the timeout happens systemd terminates them.

So I have no idea how to figure out why sssd is not creating its PID file properly since version 1.16.2.

What platform is this at? I'm running 2.0 (well, git head, but close enough..) on Fedora 27 and 28 without any issues.

Can you attach sssd.log with a high debug_level from the [sssd] section? I also thought that with systemd, we no longer rely on PID as the man notification mechanism, I thought we call sd_notify() instead..

Metadata Update from @jhrozek:
- Issue set to the milestone: SSSD 2.1

a year ago

Metadata Update from @jhrozek:
- Issue priority set to: blocker (was: minor)

a year ago

Hi @tgurr,
I think this bug was closed either by this patchset:

or this one: 55d5b43

Either way, please reopen the issue if you can reproduce the bug with a later version.

Metadata Update from @jhrozek:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

a year ago

Login to comment on this ticket.