Opened 6 years ago
Closed 4 years ago
Last modified 4 years ago
#13304 closed Bug Report - General (fixed)
FTBFS with MySQL 8.0
Reported by: | ltangvald | Owned by: | David Hampton |
---|---|---|---|
Priority: | minor | Milestone: | 31.0 |
Component: | Plugin - MythZoneminder | Version: | Unspecified |
Severity: | medium | Keywords: | |
Cc: | Ticket locked: | no |
Description
Build fails because the my_bool type has been removed in MySQL, to be replaced with either int or bool (ref: https://dev.mysql.com/doc/refman/8.0/en/c-api-data-structures.html)
To reproduce: build mythtv source with libmysqlclient-dev 8.0+
Change History (8)
comment:1 Changed 6 years ago by
comment:2 Changed 6 years ago by
Yeah, they've been steadily diverging (generally we had more issues of this type for the transition from 5.6 to 5.7, but it varies what software is affected by each change). There's a reasonably simple way to support both by adding a precompile directive:
#if !defined(MARIADB_BASE_VERSION) && MYSQL_VERSION_ID >= 80000 typedef int reconnect_t #else typedef my_bool reconnect_t #endif reconnect_t reconnect = 1;
comment:3 Changed 4 years ago by
Milestone: | needs_triage → 31.0 |
---|---|
Owner: | set to David Hampton |
Status: | new → accepted |
comment:7 Changed 4 years ago by
Should this fix be backported to fixes/30 to support customers who choose to run a newer OS with MySQL 8.0 but continue with the released fixes branch?
Hopefully useful information for the MythZoneminder? wrangler....
Related to #13093 (where the use of the my_bool was added as that approach was the solution being done in other projects (now they get to change again too)).
It appears that mysql and mariadb are starting to diverge at the client API level.