Bug 51301 - ignore_errors ineffective when daemon_reload performed while relevant process is running
Summary: ignore_errors ineffective when daemon_reload performed while relevant process...
Status: NEW
Alias: None
Product: systemd
Classification: Unclassified
Component: general (show other bugs)
Version: unspecified
Hardware: x86-64 (AMD64) Linux (All)
: medium normal
Assignee: systemd-bugs
QA Contact: systemd-bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-06-21 08:05 UTC by ataraxia937
Modified: 2012-08-18 00:00 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
test case (255 bytes, application/x-gzip)
2012-06-21 08:05 UTC, ataraxia937
Details

Note You need to log in before you can comment on or make changes to this bug.
Description ataraxia937 2012-06-21 08:05:38 UTC
Created attachment 63309 [details]
test case

When using a leading '-' in ExecStart, if a daemon-reload is performed while the command in question is still running, and it then exits with an abnormal status, the unit will enter the failed state, just as if the '-' had not been present.

This is easily reproduced by a trivial service unit and an equally trivial shell script, which I will attach as a test case.

I'm running systemd 185 on Arch Linux.

Detailed steps to reproduce:
1. Download the attachment and unpack it under /. This will put a shell script in /tmp/tf and a unit in /etc/systemd/system/tf.service .
2. Start tf.service. Check its status after 10 seconds have gone by. Observe that it exited with code 1, and systemd correctly ignored this exit-code.
2. Start tf.service again. Do a daemon-reload within the next 10 seconds (before /tmp/tf exits). Again check its status after 10 seconds have gone by. Observe that it again exited with code 1, but this time, systemd didn't ignore the exit-code, and the job incorrectly entered the failed state.
Comment 1 ataraxia937 2012-08-18 00:00:07 UTC
This problem is still evident with systemd 188.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.