Bug 35004

Summary: Обманывает потребителя (клиента)
Product: Sisyphus Reporter: Anton Farygin <rider>
Component: libmariadb-develAssignee: Alexey Shabalin <shaba>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P3 CC: darktemplaralt, rider, shaba, zerg
Version: unstable   
Hardware: all   
OS: Linux   

Description Anton Farygin 2018-06-06 15:00:47 MSK
libmariadb-devel провайдит libmysqlclient-devel, но в реальности не является её заменой, т.к. использует специфичные для mariadb объявления в заголовках.
Смотреть в /usr/include/mysql/mariadb_version.h и в /usr/include/mysql/server/mysql_version.h

Или оно у нас как-то не так собрано.
Comment 1 Sergey V Turchin 2018-06-06 15:50:32 MSK
(В ответ на комментарий №0)
> т.к. использует специфичные для mariadb объявления в заголовках.
А чем они мешают?

> Смотреть в /usr/include/mysql/mariadb_version.h и в
> /usr/include/mysql/server/mysql_version.h
Там написано: не смотреть. ;-)
Comment 2 Anton Farygin 2018-06-06 15:54:58 MSK
Тем что нет специфичных для MYSQL ;)
т.е. - они разъехались по именам. 
Например, вместо MYSQL_UNIX_ADDR и MYSQL_PORT там MARIADB_PORT и MARIADB_UNIX_ADDR
Comment 3 Anton Farygin 2018-06-06 16:06:45 MSK
Вот так выглядит mysql_version из libmysqlclient20-devel:
#define PROTOCOL_VERSION            10
#define MYSQL_SERVER_VERSION       "5.7.21"
#define MYSQL_BASE_VERSION         "mysqld-5.7"
#define MYSQL_SERVER_SUFFIX_DEF    "-alt7.S1"
#define FRM_VER                     6
#define MYSQL_VERSION_ID            50721
#define MYSQL_PORT                  3306
#define MYSQL_PORT_DEFAULT          0
#define MYSQL_UNIX_ADDR            "/var/lib/mysql/mysql.sock"
#define MYSQL_CONFIG_NAME          "my"
#define MYSQL_COMPILATION_COMMENT  "(ALT)"
#define LIBMYSQL_VERSION           "5.7.21"
#define LIBMYSQL_VERSION_ID         50721
#define SYS_SCHEMA_VERSION         "1.5.1"

В mariadb_version.h многих этих MYSQL_ объявлений нет.
Comment 4 Aleksei Nikiforov 2018-06-06 16:58:06 MSK
Пересборка пакета zarafa-7.1.15-alt19.S1 тоже перестала проходить:

ECDatabaseMySQL.cpp: In member function 'ECRESULT ECDatabaseMySQL::InitEngine()':
ECDatabaseMySQL.cpp:109:12: error: 'MYSQL {aka struct st_mysql}' has no member named 'reconnect'
  m_lpMySQL.reconnect = 1;
Comment 5 Repository Robot 2018-06-08 17:06:04 MSK
MySQL-5.7.21-alt8.S1 -> sisyphus:

Fri Jun 08 2018 Aleksei Nikiforov <darktemplar@altlinux> 5.7.21-alt8.S1
- NMU: updated provides (Closes: #35004).