Earlier quoted context omitted.
As I pointed out at https://news.ycombinator.com/item?id=14169188 , there's a discussion of MySQL on the systemd-devel mailing list right now. Clearly some people in that discussion are not familiar with MySQL. Clearly some of the people in this discussion are not familiar with MySQL either. To help combat this ignorance, here are some actual systemd units: * https://github.com/MariaDB/server/blob/10.1/support-files/…
Yeah, legacy code is hard, sometimes, and sometimes complexity can't be hidden entirely. The initscripts for MySQL/MariaDB are still orders of magnitude larger than these (unusually large) systemd unit files. Managing complexity is hard. SystemD helps. More modern service design, and simpler services, helps (compare/contrast Apache startup vs nginx or caddy, or MySQL vs MongoDB; sure, the newer options do less, but t…
* https://github.com/MariaDB/server/blob/10.1/support-files/my...
I recommend actually learning about the reality of MongoDB. For starters, the systemd service units supplied in the likes of Ubuntu and Debian do not set any of the settings recommended for MongoDB by its authors, so here (as in so many cases with systemd service units in the wild, alas) shortness actually equates to not doing things properly.
* http://bazaar.launchpad.net/~ubuntu-branches/ubuntu/vivid/mo...
* https://sources.debian.net/src/mongodb/1:3.2.11-2/debian/mon...
* https://docs.mongodb.com/manual/reference/ulimit/#linux-dist...
Another example of such is WSO2 Carbon, with a 14-line system service unit from one source that gets things grossly wrong.
* http://jdebp.eu./FGA/systemd-house-of-horror/wso2.html
I recommend actually learning about Caddy, too. Ironically, the subject of its service unit came up here on Hacker News only a day ago. It is 43 lines long, some 6 times the length of the supposed 7-line systemd service unit being bandied about here, and not as far different from those for MySQL and Percona as you imply; and it does not attempt to be "more modern" as you claim, as it entirely lacks the socket unit that would make it more in line with the systemd way of doing things.
* https://news.ycombinator.com/item?id=14167704
The idea that this is "modern service design" is borne of not knowing the subject, too. The sort of design changes recommended by the systemd people are in fact pretty much the same sort of design changes recommended by IBM in 1992 for services managed by the System Resource Controller and recommended by quite a lot of other people since, including Apple and ... well ... me for many years. Whilst this is good service design, it is not "modern", and not in any way unique or original to systemd. To further alleviate the ignorance of MySQL as well as demonstrate how this is far from "modern" and not something that one gets to claim for systemd service units, I point out that people were running mysqld without mysql_safe, in the very way that the systemd people are by all appearances just learning about in their mailing list discussion, under daemontools in 2002. I strongly suspect that that wasn't even the earliest occasion of that.
* http://jdebp.eu./Softwares/nosh/mariadb-and-mysql.html#Promp...