Port away from libmysqld (embedded server)
Open, NormalPublic

Description

In addition to the need to port to KF5, there is another development in one of the dependencies that Amarok needs to take care of.

This is from mysqlserverteam blog in October 27, 2016:

MySQL-8.0 retiring support for libmysqld

Since libmysqld uses a comparable API to libmysqlclient, the upgrade path is relatively straight forward:

  • Bring up a standalone MySQL server (mysqld).
  • Modify application code to remove API calls that are specific to libmysqld.
  • Modify application code to connect to the standalone MySQL server.
  • Modify build scripts to use libmysqlclient rather than libmysqld. For example, if you use mysql_config, invoke it with the --libs option rather than --libmysqld-libs.

We will continue to support libmysqld for the lifetime of MySQL 5.7, but plan to mark it as deprecated so that our future intentions are made clear to users in our current GA release.

asturmlechner triaged this task as Normal priority.

I've already begun porting Amarok to SQLite3, since it is provided by the basic flatpak runtime. I'll post the finished patch when it works.

Thanks, that's very good news :)

markey added a subscriber: markey.Mar 7 2018, 7:09 PM

Just a note: Back in the day Amarok was actually using SQLite, but there were major performance issues for people with giant collections. E.g. I was just talking to a user on IRC with a 44k tracks collection.

While I personally by far prefer SQLite to MySQL because it's lean and much less hassle, we should check if SQLite these days can deliver sufficient performance.

pipo moved this task from Todo to Abandoned on the Amarok board.May 2 2020, 3:01 AM
pipo moved this task from Abandoned to Tests needed on the Amarok board.
pipo moved this task from Tests needed to Needs review on the Amarok board.
pipo moved this task from Needs review to Todo on the Amarok board.
mdn added a subscriber: mdn.May 2 2020, 2:39 PM