This PARTIALLY REVERTS commit 9f34c64543.
--
My assumption in the original commit was incorrect.
It's true we're creating the `/run/mariadb` directory at the RPM level.
However, the `/run` directory is tmpfs, which means it's non-persistent and gets cleaned after reboot.
The tmpfile.d configuration was making sure that after reboot, the `/run/mariadb` directory is recreated.
But after it has been dropped, at the time of reboot, the `/run/mariadb` dir is removed and not recreated, thus causing this issue.
--
Resolves: rhbz#2364619
The 'tmpfiles.d' functionality requires 'systemd'.
That is inappropriate for container use-cases, where
we can save 15-20 MB by removal for the systemd stack.
In the case of MariaDB, we
1) were NOT using the upstream tpmfiles.d config
2) we were used downstream tmpfiles.d config
2.a) which only contained creation of the PID file dir (/var/run/mariadb)
This can be easily replaced by RPM creating and owning the path.
By closer inspection I found that we do it already, so the current tmpfiles.d config
just do entirely redundant job. I assume this was an overlook when the tmpfiles.d config
was introduced.
This commit:
1) removes the donwstream tmpfiles.d config file
2) sets "INSTALL_SYSTEMD_TMPFILESDIR" CMake option to an empty string
to disable generating the upstream config file
3) Drops the "Requires" to 'systemd' to "Recommends"
so the systemd can be ommited in containers, but is still installed by default
4) Drops the '%{?systemd_requires}' macro, which makes sure the systemd is present
for it's %post, %preun and %postun scriptlets.
This can only happen when someone calls the installation or removal on a system that does not
have systemd, which is highly, highly unlikely nowadays.
And in the cases where it is expected - e.g. containers - the %systemd-{post,preun,postun} marcos
contains a condition that makes sure it's content is only run when the systemd is present,
so the effective functionality remains unchanged.
Removal of the galera patch, it has been upstreamed
Build TokuDB with jemalloc; jemalloc 5 support introduced by upstream; #1583853
Allow very few tests to fail the testsuite; this won't block builds on unstable tests