[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to handle daemon-not-running bugs of debhelper compat level 11?



Am 29.04.19 um 21:53 schrieb Niels Thykier:
> wferi@niif.hu:
>> On Wed, 27 Mar 2019 20:12:00 +0000 Niels Thykier <niels@thykier.net> wrote:
>>
>>> Related note (with my RT hat on): Please defer debhelper compat bumps
>>> for anything targeting buster as it is not considered a "minimal change".
>>
>> Dear Release Team,
>>
>> I recently realised that #887904 (dh_installsystemd will unmask services
>> *after* an attempt to start them) affects pacemaker (and probably every
>> other debhelper compat level 11 daemons with a native systemd unit).
>> The symptom:
>>
>> apt install pacemeker => pacemaker is running, good;
>> apt remove  pacemaker => pacemaker is not running, good;
>> apt install pacemaker => pacemaker is still not running, NOT good;
>> service pacemaker start => pacemaker is running, good.
>>
>> I think this is a bug, although probably not a policy violation.  What
>> should one do for buster?
>> 1. Don't care,
>> 2. try to fix this somehow on compat level 11 (how?),


I wanted to see, how many packages are potentially affected.
The criteria I used was:
- the package needs to ship a systemd.service file and SysV init script
with a matching name
- debian/compat contains 11 or debian/control the string
"debhelper-compat (= 11)"

The resulting list shows 185 potentially affected source packages, which
is unfortunately quite a lot (attached as list.txt)


> Another package had a similar issue and here I recommended the use of
> DH_COMPAT (and override targets) to selectively bump the compat level of
> dh_installinit and dh_installsystemd to compat 12.
> 
> E.g.
> 
> override_dh_installinit:
> 	DH_COMPAT=12 dh_installinit ...
> 
> override_dh_installsystemd:
> 	DH_COMPAT=12 dh_installsystemd ...
> 
> Note the exact runes needed depend on your existing compat level and
> package; the above runes are geared towards compat 11 but are untested.
>  For compat 10 and earlier you want a similar but slightly different
> approach.
> 
> I believe that is the (general) route/path of "least evil/problematic"
> for buster (without having looked at the concrete packaging at all).

I picked a package from list.txt at random: uptimed
I verified that a "apt install uptimed; apt remove uptimed; apt install
uptimed" sequence results in a non-running uptimed.service.

I then followed the hints from Niels and tried the attached patch.
It seems to fix the issue at hand.


I'd be interested to know, how the release team would like to this issue
handled.  While I did spot a few false positives when glancing over the
list (e.g. packages which use --no-start, so are not affected), I would
expect the majority of packages to be affected.

I can offer to do a MBF if the release team thinks this issue is
important enough to be fixed for buster.

As the original bug reporter of #887904 I should have probably done that
much earlier. Apologies for raising this topic this late in the release
cycle.


Regards,
Michael


-- 
Why is it that all of the instruments seeking intelligent life in the
universe are pointed away from Earth?
acpid-2.0.31
alljoyn-core-1504-15.04b+dfsg.1
alljoyn-core-1509-15.09a+dfsg.1
alljoyn-core-1604-16.04a+dfsg.1
alsa-utils-1.1.8
anacron-2.3
anytun-0.3.7
apache-directory-server-2.0.0~M24
apcupsd-3.14.14
apertium-apy-0.11.4
apparmor-2.13.2
arno-iptables-firewall-2.0.3
arpon-3.0-ng+dfsg1
arpwatch-2.1a15
autolog-0.40+debian
bip-0.9.0~rc3
bitz-server-2.0.3
booth-1.0-162-g27f917f
bzflag-2.4.18
certmonger-0.79.6
clamav-0.101.2+dfsg
clamsmtp-1.10
cluster-glue-1.0.12
connman-1.36
conntrack-tools-1.4.5
coturn-4.5.1.1
courier-1.0.6
courier-authlib-0.69.0
cups-filters-1.21.6
curvedns-0.87
dbab-1.3.2
dbus-1.12.12
debomatic-0.24
dhcpcd5-7.1.0
diamond-4.0.515
dico-2.7
dkimpy-milter-1.0.1
dnssec-trigger-0.17+repack
docker.io-18.09.1+dfsg1
dovecot-2.3.4.1
downtimed-1.0
dphys-swapfile-20100506
earlyoom-1.2
ejabberd-18.12.1
etbemon-1.3.3
etcd-3.2.26+dfsg
fastnetmon-1.1.3+dfsg
fcgiwrap-1.1.0
fcoe-utils-1.0.31+git20160622.5dfd3e4
fio-3.12
firebird3.0-3.0.5.33100.ds4
firehol-3.1.6+ds
game-data-packager-63
gdnsd-2.4.2
gfarm-2.7.11+dfsg
glances-3.1.0
goiardi-0.11.9
greenbone-security-assistant-7.0.3+dfsg.1
groonga-9.0.0
h2o-2.2.5+dfsg2
heartbeat-3.0.6
htpdate-1.2.0
ifupdown-extra-0.28
inputlirc-30
ipmitool-1.8.18
iptables-persistent-1.0.11
isso-0.12.2
iwatch-0.2.2
jabberd2-2.7.0
jetty9-9.4.15
keepalived-2.0.10
kgb-bot-1.54
knot-2.7.6
laptop-mode-tools-1.72
lbcd-3.5.2
lemonldap-ng-2.0.2+ds
lirc-0.10.1
lizardfs-3.12.0+dfsg
lldpad-1.0.1+git20180808.4e642bd
lvm2-2.03.02
lxc-3.1.0+really3.0.3
lxcfs-3.0.3
mailavenger-0.8.5
mailgraph-1.14
mailman-suite-0+20180916
mailman3-3.2.1
mdadm-4.1
minetest-0.4.17.1+repack
monopd-0.10.2
mosquitto-1.5.7
munge-0.5.13
natlog-2.01.01
ndisc6-1.0.4
net-snmp-5.7.3+dfsg
netconsole-0.2
netdiag-1.2
nethack-3.6.1
nomad-0.8.7+dfsg1
nsd-4.1.26
ocfs2-tools-1.8.5
opa-fm-10.8.0.0.202+dfsg.1
open-vm-tools-10.3.10
openntpd-6.2p3
opensmtpd-6.0.3p1
openvas-manager-7.0.3
openvas-scanner-5.1.3
openvpn-2.4.7
osmo-ggsn-1.2.2
ovirt-guest-agent-1.0.15.dfsg
owfs-3.2p3+dfsg1
pacemaker-2.0.1
pagekite-0.5.9.3
pcs-0.10.1
pcsc-lite-1.8.24
pdns-recursor-4.1.11
policyd-rate-limit-1.0.0
ppp-2.4.7
prometheus-2.7.1+ds
prometheus-alertmanager-0.15.3+ds
prometheus-apache-exporter-0.5.0+ds
prometheus-bind-exporter-0.2~git20161221+dfsg
prometheus-blackbox-exporter-0.13.0+ds
prometheus-haproxy-exporter-0.9.0+git20180917+ds
prometheus-mongodb-exporter-1.0.0+git20180522.e755a44
prometheus-mysqld-exporter-0.11.0+ds
prometheus-node-exporter-0.17.0+ds
prometheus-postgres-exporter-0.4.7+ds
prometheus-pushgateway-0.7.0+ds
prosody-0.11.2
puppet-5.5.10
puppetdb-6.2.0
quota-4.04
radioclk-1.0.pristine
radsecproxy-1.7.2
rdma-core-22.1
redsocks-0.5
resource-agents-4.2.0
robustirc-bridge-1.8
rpcbind-1.2.5
rspamd-1.8.1
salt-2018.3.4~git20180207+dfsg1
samba-4.9.5+dfsg
sane-backends-1.0.27
sbd-1.4.0
scanbd-1.5.1
schleuder-3.4.0
sddm-0.18.0
setserial-2.17
shairport-sync-3.2.2
sks-1.1.6
slurm-llnl-18.08.5.2
smartmontools-6.6
sndio-1.5.0
softflowd-0.9.9
sogo-4.0.7
sopel-6.6.3
spampd-2.53
sshguard-2.3.1
supervisor-3.3.5
suricata-4.1.2
swapspace-1.14
sympa-6.2.40~dfsg
sysstat-12.0.3
tgt-1.0.74
tinyproxy-1.10.0
trafficserver-8.0.2+ds
tuptime-3.5.0
ulogd2-2.0.7
unicorn-5.4.1
uptimed-0.4.1
util-linux-2.33.1
vblade-24
vnstat-1.18
wdm-1.28
webdis-0.1.4+dfsg
weborf-0.15
wesnoth-1.14-1.14.5
wicd-1.7.4+tb2
wireless-tools-30~pre9
writeboost-1.20170616
x2goserver-4.1.0.3
xpra-2.4.3+dfsg1
xrdp-0.9.9
yadifa-2.3.8
zabbix-4.0.4+dfsg
diff -Nru uptimed-0.4.1/debian/control uptimed-0.4.1/debian/control
--- uptimed-0.4.1/debian/control	2019-02-19 22:00:49.000000000 +0100
+++ uptimed-0.4.1/debian/control	2019-04-30 16:07:36.000000000 +0200
@@ -3,7 +3,7 @@
 Priority: optional
 Maintainer: Axel Beckert <abe@debian.org>
 Build-Depends: automake,
-               debhelper (>= 11),
+               debhelper (>= 12),
                docbook-utils,
                dpkg-dev (>> 1.16.1~),
                libtool,
diff -Nru uptimed-0.4.1/debian/rules uptimed-0.4.1/debian/rules
--- uptimed-0.4.1/debian/rules	2019-02-19 22:04:07.000000000 +0100
+++ uptimed-0.4.1/debian/rules	2019-04-30 16:09:26.000000000 +0200
@@ -20,3 +20,9 @@
 override_dh_auto_build:
 	dh_auto_build
 	cd debian && LC_ALL=C onsgmls uptimed.conf.sgml | sgmlspl sgmlspl-specs/docbook2man-spec.pl
+
+override_dh_installsystemd:
+	DH_COMPAT=12 dh_installsystemd
+
+override_dh_installinit:
+	DH_COMPAT=12 dh_installinit

Attachment: signature.asc
Description: OpenPGP digital signature


Reply to: