[Pkg-mailman-hackers] Bug#1055449: mailman3 systemd service is missing After+Wants for postgresql

Boud Roukema bouddebbug at cosmo.torun.pl
Mon Nov 6 13:50:59 GMT 2023


Package: mailman3
Version: 3.3.8-2~deb12u1
Severity: normal

Dear Maintainer,

    * What led up to the situation?

I upgraded from mailman2 to mailman3.

    * What exactly did you do (or not do) that was effective (or
      ineffective)?

I read /usr/share/doc/mailman3/README.Debian, which said nothing about
mariadb as a backend database. During the upgrade/install process, the
scripts said nothing about mariadb, and instead said that sqlite3 was
the default database and postgresql was the recommended database.

I chose postgresql during the upgrade/install.

    * What was the outcome of this action?

After fully installing mailman3 (and mailman3-web) and debugging the
installs, the mailman3 systemd service did not automatically start after a
reboot. This failure to start after a reboot happened on at least two
independent reboots.

    * What outcome did you expect instead?

I expected the mailman3 systemd service to start automatically after each
reboot.


    * Analysis:

The file /lib/systemd/system/mailman3.service includes the lines:

      7  ConditionPathExists=/etc/mailman3/mailman.cfg
      8  After=mariadb.service
      9  Wants=mariadb.service
     10

which appear to be the result of fixing bug #1030156:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1030156


Based on info systemd -> info systemd.directives -> info systemd.unit,
these lines look OK, but similar lines for postgresql are needed.


    * Suggestion:


Two possibilities to fix this in  /lib/systemd/system/mailman3.service ,
as discussed with Christopher Bock on #debian irc, are:

(1) change to

After=mariadb.service postgresql.service
Wants=mariadb.service postgresql.service

or

(2) change to

After=mariadb.service
After=postgresql.service
Wants=mariadb.service
After=postgresql.service

Since sqlite3 does not use systemd, it cannot and does not need to be
added to the systemd service file.

Cheers
Boud


-- System Information:
Debian Release: 12.2
   APT prefers stable-updates
   APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 'stable')
Architecture: amd64 (x86_64)

Kernel: Linux 6.1.0-13-amd64 (SMP w/2 CPU threads; PREEMPT)
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8), LANGUAGE=fr_FR:fr
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages mailman3 depends on:
ii  cron                                                          3.0pl1-162
pn  dbconfig-sqlite3 | dbconfig-pgsql | dbconfig-mysql | dbconfi  <none>
     g-no-thanks
ii  debconf [debconf-2.0]                                         1.5.82
ii  init-system-helpers                                           1.65.2
ii  logrotate                                                     3.21.0-1
ii  python3                                                       3.11.2-1+b1
ii  python3-aiosmtpd                                              1.4.3-1.1
ii  python3-alembic                                               1.8.1-2
ii  python3-authheaders                                           0.15.2-1
ii  python3-authres                                               1.2.0-3
ii  python3-click                                                 8.1.3-2
ii  python3-dateutil                                              2.8.2-2
ii  python3-dnspython                                             2.3.0-1
ii  python3-falcon                                                3.1.1-1+b1
ii  python3-flufl.bounce                                          4.0-3
ii  python3-flufl.i18n                                            3.0.1-3
ii  python3-flufl.lock                                            5.0.1-4
ii  python3-gunicorn                                              20.1.0-6
ii  python3-importlib-resources                                   5.1.2-2
ii  python3-lazr.config                                           2.2.3-3
ii  python3-passlib                                               1.7.4-3
ii  python3-psycopg2                                              2.9.5-1+b1
ii  python3-public                                                2.3-4
ii  python3-requests                                              2.28.1+dfsg-1
ii  python3-sqlalchemy                                            1.4.46+ds1-1
ii  python3-zope.component                                        5.1.0-1
ii  python3-zope.configuration                                    4.4.1-1
ii  python3-zope.event                                            4.4-3
ii  python3-zope.interface                                        5.5.2-1+b1
ii  ucf                                                           3.0043+nmu1

Versions of packages mailman3 recommends:
ii  postfix [mail-transport-agent]  3.7.6-0+deb12u2

Versions of packages mailman3 suggests:
pn  anacron                    <none>
ii  firefox-esr [www-browser]  115.4.0esr-1~deb12u1
ii  links [www-browser]        2.28-1+b2
ii  links2 [www-browser]       2.28-1+b2
ii  lynx [www-browser]         2.9.0dev.12-1
pn  mailman3-doc               <none>
ii  midori [www-browser]       7.0-2.1
ii  postgresql                 15+248

-- debconf information:
   mailman3/db/app-user: mailman3 at localhost
   mailman3/remote/newhost:
   mailman3/pgsql/authmethod-user: password
   mailman3/mysql/admin-user:
   mailman3/missing-db-package-error: abort
   mailman3/pgsql/admin-user: postgres
   mailman3/pgsql/no-empty-passwords:
   mailman3/internal/skip-preseed: false
   mailman3/dbconfig-reinstall: false
   mailman3/upgrade-backup: true
   mailman3/remote/port:
   mailman3/database-type: pgsql
   mailman3/pgsql/method: TCP/IP
   mailman3/internal/reconfiguring: false
   mailman3/passwords-do-not-match:
   mailman3/dbconfig-upgrade: true
   mailman3/config_hyperkitty:
   mailman3/mysql/authplugin: default
   mailman3/pgsql/authmethod-admin: ident
   mailman3/upgrade-error: abort
   mailman3/dbconfig-remove: true
   mailman3/mysql/method: Unix socket
   mailman3/db/basepath:
   mailman3/purge: false
   mailman3/db/dbname: mailman3
   mailman3/pgsql/changeconf: false
   mailman3/remote/host: localhost
   mailman3/init_service_failed:
* mailman3/dbconfig-install: false
   mailman3/pgsql/manualconf:
   mailman3/install-error: abort
   mailman3/remove-error: abort



More information about the Pkg-mailman-hackers mailing list