URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN Action: opened
PR body: """ Socket file name changes from sbus-dp_DOMAIN_PID to sbus-dp_DOMAIN to avoid leaving orphaned socket files when sssd crashes. As there is only one socket opened per domain it makes no sense to include PID number in the file name.
Besides, remove socket's symlink creation.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1875981 """
To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/5378/head:pr5378 git checkout pr5378
URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: WIP: sbus: change socket file name to sbus-dp_DOMAIN Action: edited
Changed field: title Original value: """ sbus: change socket file name to sbus-dp_DOMAIN """
URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: WIP: sbus: change socket file name to sbus-dp_DOMAIN Action: synchronized
To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/5378/head:pr5378 git checkout pr5378
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: WIP: sbus: change socket file name to sbus-dp_DOMAIN
alexey-tikhonov commented: """
Socket file name changes from sbus-dp_DOMAIN_PID to sbus-dp_DOMAIN to avoid leaving orphaned socket files when sssd crashes. As there is only one socket opened per domain it makes no sense to include PID number in the file name.
Would it be different if single `sssd_be` would have few `sbus-dp` sockets? I mean, `pid` would be the same and wouldn't help anyway. So I guess the reasoning to add it was different (if there was any). """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-718700999
URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: WIP: sbus: change socket file name to sbus-dp_DOMAIN Action: edited
Changed field: body Original value: """ Socket file name changes from sbus-dp_DOMAIN_PID to sbus-dp_DOMAIN to avoid leaving orphaned socket files when sssd crashes. As there is only one socket opened per domain it makes no sense to include PID number in the file name.
Besides, remove socket's symlink creation.
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1875981 """
URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN Action: edited
Changed field: title Original value: """ WIP: sbus: change socket file name to sbus-dp_DOMAIN """
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
ikerexxe commented: """ I was also wondering for the historical reasons of adding the PID as a suffix to the socket file. Unfortunately, @pbrezina wasn't able to give any reason.
Nowadays, each data provider has only one socket and even though it would be feasible to keep the PID suffix, in case of sssd crash the socket file would remain until a clean process is executed. This is what's happening right now and the customer reports more than 1000 orphaned socket files.
Thus, I think it's more sensible to remove the PID from the suffix and use only the domain part. So that in case of failure there'll be only one file left and when sssd recovers it'll reuse it. """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-718815941
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
ikerexxe commented: """ By the way, the tests that are failing in fedora-rawhide are in the multihost-pytest test suite. More specifically, in the setup phase of them. These same tests are working correctly in other fedora versions, so I suspect the problem isn't directly related with my changes. """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-718819866
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
Label: +Waiting for review
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
pbrezina commented: """ Apparently, this was the reason: https://github.com/SSSD/sssd/issues/2076
Can you check if you can reproduce it with and without your patches? """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721074750
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
ikerexxe commented: """ Reproduction steps seem easy: 1. start sssd 2. killall -STOP sssd_be 3. wait until monitor sends TERM to sssd_be and spawns a new one 4. killall -CONT sssd_be 5. getent passwd foobar
But I've been unable so far to succeed in step 2 using a vanilla sssd, 2.4.0 more precisely. I send the signal to stop but sssd_be never stops. I've tried waiting some time (~2 minutes) and also checking if it's still alive by checking PID and executing step 5. Any ideas? """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721238722
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
ikerexxe commented: """ I forgot to mention that SIGTERM and SIGKILL are correctly handled. """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721239711
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
alexey-tikhonov commented: """
Reproduction steps seem easy:
1. start sssd 2. killall -STOP sssd_be 3. wait until monitor sends TERM to sssd_be and spawns a new one
Monitor doesn't do this (keepalive pings and SIGTERM) for a long time already. Currently every process implements internal watchdog.
4. killall -CONT sssd_be 5. getent passwd foobar
But I've been unable so far to succeed in step 2 using a vanilla sssd, 2.4.0 more precisely. I send the signal to stop but sssd_be never stops. I've tried waiting some time (~2 minutes) and also checking if it's still alive by checking PID and executing step 5. Any ideas?
It stops (see STAT = T in `ps aux` output). The thing is, it seems to trick internal watchdog as well :-/
"""
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721246570
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
alexey-tikhonov commented: """ This patch is a risk to regress https://bugzilla.redhat.com/show_bug.cgi?id=743841
And it doesn't resolve https://bugzilla.redhat.com/show_bug.cgi?id=1875981 either. @ikerexxe, as you figured out in the BZ, orphaned sockets are merely a consequence. The real issues is `sssd_be` is terminated ungracefully (see my guess for the reason in the BZ comment).
Frankly, I'm not sure solving this consequence is worth the trouble...
"""
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721268180
URL: https://github.com/SSSD/sssd/pull/5378 Author: ikerexxe Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN Action: closed
To pull the PR as Git branch: git remote add ghsssd https://github.com/SSSD/sssd git fetch ghsssd pull/5378/head:pr5378 git checkout pr5378
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
ikerexxe commented: """ As commented out by @alexey-tikhonov there's a great risk of a regress in https://bugzilla.redhat.com/show_bug.cgi?id=743841 with this change so I'll close the PR. """
See the full comment at https://github.com/SSSD/sssd/pull/5378#issuecomment-721617790
URL: https://github.com/SSSD/sssd/pull/5378 Title: #5378: sbus: change socket file name to sbus-dp_DOMAIN
Label: -Waiting for review
sssd-devel@lists.fedorahosted.org