Users of Akonadi (
databases/akonadi) on FreeBSD are advised of an incompatibility
between .. something .. and the current version of MySQL client 5.7. The Akonadi
server crashes on startup, and no KDE PIM applications that need Akonadi will work.
Users are advised to downgrade the MySQL client libraries for the time being.
The problem can be seen by starting the Akonadi server in a terminal, like so:
$ akonadictl start
and then you get lots of crashes. Close DrKonqi a few times quickly to stop the cycle of crash-and-restart. You can run the server directly, and by hand, to see the underlying problem:
$ akonadiserver ... org.kde.pim.akonadiserver: DB initializer done Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString) Assertion failed: (param->buffer_length != 0), function setup_one_fetch_function, file /wrkdirs/usr/ports/databases/mysql57-client/work/mysql-5.7.34/libmysql/libmysql.c, line 4112. QSocketNotifier: Invalid socket 6 and type 'Read', disabling...
There is lots of other output, but that assert is the important bit.
Fetch an older ports tree and build 5.7.32 (which I know works and which
I’m running now,
3e67f95cb91b7c399fbbd56304f6f98aabf4636c) or 5.7.33 (which didn’t
cooperate when I tried it, but also did not crash; YMMV
databases/mysql57-server will need a rebuild, but nothing else.
On a regular desktop system you can
pkg upgrade -f to force a downgrade and not touch other packages.
Since chasing this requires lots and lots of rebuilding of the client libraries, QtSql and its plugins, and Akonadi
(all at least once to get sufficient debugging information) this is not something
that will be resolved quickly in ports (unless someone steps up to do the builds).
Since swapping out the client library is enough, I suspect it’s QtSql that is
passing in a weird param buffer for an integer or
IS NOT NULL condition,
but that’s code I have not looked into before.