Commit graph

1022 commits

Author SHA1 Message Date
Oleksandr Byelkin
35977e81f9 Merge branch 'bb-10.5-release' into 10.5 2021-05-07 12:13:17 +02:00
Vicențiu Ciorbaru
ca1dc0789b Follow-up for Deb: Stop depending on empty transitional package dh-systemd
058d93d47a introduced a switch in autobake
script to append dh-systemd package when it is necessary. However, the
change was not complete as it didn't actually remove the dh-systemd
dependency in debian/control.
2021-05-05 23:16:43 +03:00
Otto Kekäläinen
803fa4b3fc MCOL-4535: Clean up libreadline as ColumnStore no longer needs it
Keep the readline installation step in Salsa-CI stages that install
MariaDB.org packages in Debian Sid (or releases after is, such as
Debian 11 "Bullseye" or Ubuntu 21.04 "Hirsute") as those old packages
still depend on readline for the MariaDB Server itself.
2021-05-04 09:13:28 -07:00
Marko Mäkelä
4930f9c94b Merge 10.5 into 10.6 2021-04-21 11:45:00 +03:00
Daniel Black
3f138fa3a5 Deb: Use build flag to enforce default charset as utf8mb4 2021-04-16 18:29:20 +10:00
Daniel Black
f862f39f46 Merge branch '10.5' into 10.6 2021-04-16 18:23:18 +10:00
Daniel Black
fce3e4ee8f Revert "Deb: Use build flag to enforce default charset as utf8mb4"
This reverts commit f26e3259a1.
2021-04-16 18:21:52 +10:00
Otto Kekäläinen
62f5a4f065 Deb: Update Conflicts/Replaces/Replaces for all upgrade scenarios
Update the debian/control file so that upgrades from basically any previous
version of MariaDB, MySQL or even Percona will run smoothly.

Based on extensive testing with all Debian and Ubuntu repos from past 5 years
enabled, and also having MariaDB.org, MySQL.com and Percona.com repos enabled.

Used tool check_for_missing_breaks_replaces.py from Salsa-CI to verify.

Fixes the following errors:
[ERROR] libmariadb-dev conflicts with libmariadb-client-lgpl-dev files: {'/usr/include/mariadb/mysql_version.h', '/usr/include/mariadb/errmsg.h', '/usr/share/man/man1/mariadb_config.1.gz', '/usr/include/mariadb/my_sys.h', '/usr/include/mariadb/mysqld_error.h', '/usr/include/mariadb/my_config.h', '/usr/lib/x86_64-linux-gnu/libmariadb.so', '/usr/lib/x86_64-linux-gnu/libmariadb.a', '/usr/include/mariadb/mysql.h', '/usr/include/mariadb/my_global.h', '/usr/include/mariadb/mysql/plugin_auth_common.h', '/usr/include/mariadb/mysql/plugin_auth.h', '/usr/include/mariadb/mysql_com.h', '/usr/bin/mariadb_config', '/usr/include/mariadb/mysql/client_plugin.h'}
[ERROR] libmariadb-dev conflicts with libmariadb-dev-compat files: {'/usr/share/man/man1/mysql_config.1.gz'}
[ERROR] mariadb-backup conflicts with mariadb-client-10.1 files: {'/usr/bin/mariabackup', '/usr/bin/mbstream'}
[ERROR] mariadb-client-10.6 conflicts with percona-server-server-5.6 files: {'/usr/share/man/man1/mysqlbinlog.1.gz', '/usr/bin/perror', '/usr/share/man/man1/mysqlhotcopy.1.gz', '/usr/share/man/man1/mysql_setpermission.1.gz', '/usr/share/man/man1/mysql_tzinfo_to_sql.1.gz', '/usr/share/man/man1/replace.1.gz', '/usr/share/man/man1/mysql_convert_table_format.1.gz', '/usr/bin/replace', '/usr/share/man/man1/resolve_stack_dump.1.gz', '/usr/share/man/man1/perror.1.gz', '/usr/bin/msql2mysql', '/usr/share/man/man1/mysql_secure_installation.1.gz', '/usr/share/man/man1/msql2mysql.1.gz', '/usr/bin/resolve_stack_dump'}
[ERROR] mariadb-client-10.6 conflicts with percona-xtradb-cluster-server-5.6 files: {'/usr/share/man/man1/mysqlbinlog.1.gz', '/usr/bin/perror', '/usr/share/man/man1/mysqlhotcopy.1.gz', '/usr/share/man/man1/mysql_setpermission.1.gz', '/usr/share/man/man1/mysql_tzinfo_to_sql.1.gz', '/usr/share/man/man1/replace.1.gz', '/usr/share/man/man1/mysql_convert_table_format.1.gz', '/usr/bin/replace', '/usr/share/man/man1/resolve_stack_dump.1.gz', '/usr/share/man/man1/perror.1.gz', '/usr/bin/msql2mysql', '/usr/share/man/man1/mysql_secure_installation.1.gz', '/usr/share/man/man1/msql2mysql.1.gz', '/usr/bin/resolve_stack_dump'}
[ERROR] mariadb-client-10.6 conflicts with percona-xtradb-cluster-server-5.7 files: {'/usr/share/man/man1/mysqlbinlog.1.gz', '/usr/bin/perror', '/usr/share/man/man1/replace.1.gz', '/usr/share/man/man1/mysql_tzinfo_to_sql.1.gz', '/usr/share/man/man1/mysql_plugin.1.gz', '/usr/bin/replace', '/usr/share/man/man1/resolve_stack_dump.1.gz', '/usr/share/man/man1/perror.1.gz', '/usr/share/man/man1/mysql_secure_installation.1.gz', '/usr/bin/resolve_stack_dump'}
[ERROR] mariadb-client-core-10.6 conflicts with mariadb-server-10.1 files: {'/usr/bin/my_print_defaults', '/usr/share/man/man1/my_print_defaults.1.gz'}
[ERROR] mariadb-client-core-10.6 conflicts with percona-server-server-5.6 files: {'/usr/bin/my_print_defaults', '/usr/share/man/man1/my_print_defaults.1.gz'}
[ERROR] mariadb-client-core-10.6 conflicts with percona-xtradb-cluster-server-5.6 files: {'/usr/bin/my_print_defaults', '/usr/share/man/man1/my_print_defaults.1.gz'}
[ERROR] mariadb-client-core-10.6 conflicts with percona-xtradb-cluster-server-5.7 files: {'/usr/bin/my_print_defaults', '/usr/share/man/man1/my_print_defaults.1.gz'}
[ERROR] mariadb-plugin-connect conflicts with mariadb-connect-engine-10.0 files: {'/usr/lib/mysql/plugin/ha_connect.so'}
[ERROR] mariadb-plugin-oqgraph conflicts with mariadb-oqgraph-engine-10.0 files: {'/usr/lib/mysql/plugin/ha_oqgraph.so'}
[ERROR] mariadb-server-10.6 conflicts with handlersocket-mysql-5.5 files: {'/usr/lib/mysql/plugin/handlersocket.so'}
[ERROR] mariadb-server-10.6 conflicts with percona-server-server-5.6 files: {'/usr/bin/myisampack', '/usr/lib/mysql/plugin/handlersocket.so', '/usr/share/mysql/errmsg-utf8.txt', '/usr/share/man/man1/myisamlog.1.gz', '/usr/share/man/man1/mysqld_multi.1.gz', '/usr/share/mysql/debian-start.inc.sh', '/usr/share/man/man1/myisamchk.1.gz', '/usr/bin/mysqlbinlog', '/usr/bin/mysql_convert_table_format', '/usr/lib/mysql/plugin/query_response_time.so', '/usr/bin/mysql_tzinfo_to_sql', '/usr/bin/mysql_setpermission', '/usr/bin/myisamchk', '/usr/share/man/man1/myisampack.1.gz', '/usr/lib/mysql/plugin/auth_pam.so', '/usr/bin/mysql_secure_installation', '/usr/bin/mysqld_multi', '/usr/share/man/man1/mysqld_safe.1.gz', '/usr/bin/mysqld_safe', '/usr/bin/myisamlog', '/usr/bin/mysqlhotcopy'}
[ERROR] mariadb-server-10.6 conflicts with percona-xtradb-cluster-server-5.6 files: {'/usr/bin/wsrep_sst_mysqldump', '/usr/bin/myisampack', '/usr/lib/mysql/plugin/handlersocket.so', '/usr/share/mysql/errmsg-utf8.txt', '/usr/share/man/man1/myisamlog.1.gz', '/usr/share/man/man1/mysqld_multi.1.gz', '/usr/share/mysql/debian-start.inc.sh', '/usr/share/man/man1/myisamchk.1.gz', '/usr/bin/mysqlbinlog', '/usr/bin/wsrep_sst_common', '/usr/bin/mysql_convert_table_format', '/usr/lib/mysql/plugin/query_response_time.so', '/usr/share/mysql/wsrep_notify', '/usr/bin/mysql_tzinfo_to_sql', '/usr/bin/mysql_setpermission', '/usr/bin/myisamchk', '/usr/share/man/man1/myisampack.1.gz', '/usr/lib/mysql/plugin/auth_pam.so', '/usr/bin/mysql_secure_installation', '/usr/bin/mysqld_multi', '/usr/share/man/man1/mysqld_safe.1.gz', '/usr/bin/wsrep_sst_rsync', '/usr/bin/mysqld_safe', '/usr/bin/myisamlog', '/usr/bin/mysqlhotcopy'}
[ERROR] mariadb-server-10.6 conflicts with percona-xtradb-cluster-server-5.7 files: {'/usr/bin/wsrep_sst_mysqldump', '/usr/bin/myisampack', '/usr/share/mysql/errmsg-utf8.txt', '/usr/share/man/man1/myisamlog.1.gz', '/usr/share/man/man1/mysqld_multi.1.gz', '/usr/share/man/man1/myisamchk.1.gz', '/usr/bin/mysql_plugin', '/usr/bin/mysqlbinlog', '/usr/bin/wsrep_sst_common', '/usr/lib/mysql/plugin/query_response_time.so', '/usr/share/mysql/wsrep_notify', '/usr/bin/mysql_tzinfo_to_sql', '/lib/systemd/system/mysql.service', '/usr/bin/myisamchk', '/usr/share/man/man1/myisampack.1.gz', '/usr/lib/mysql/plugin/auth_pam.so', '/usr/bin/mysql_secure_installation', '/usr/bin/mysqld_multi', '/usr/share/man/man1/mysqld_safe.1.gz', '/usr/bin/wsrep_sst_rsync', '/usr/bin/mysqld_safe', '/usr/bin/myisamlog'}
[ERROR] mariadb-server-core-10.6 conflicts with mariadb-server-10.0 files: {'/usr/share/mysql/mysql_system_tables.sql', '/usr/bin/resolveip', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/mysql_performance_tables.sql', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/man/man1/mysql_upgrade.1.gz', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/man/man1/resolveip.1.gz', '/usr/share/man/man1/mysql_install_db.1.gz', '/usr/bin/mysql_install_db', '/usr/bin/mysql_upgrade'}
[ERROR] mariadb-server-core-10.6 conflicts with mariadb-server-10.1 files: {'/usr/share/mysql/mysql_system_tables.sql', '/usr/bin/resolveip', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/mysql_performance_tables.sql', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/maria_add_gis_sp_bootstrap.sql', '/usr/share/man/man1/resolveip.1.gz'}
[ERROR] mariadb-server-core-10.6 conflicts with mariadb-server-10.1 files: {'/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/mysql_performance_tables.sql', '/usr/share/mysql/mysql_system_tables.sql', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/maria_add_gis_sp_bootstrap.sql', '/usr/bin/resolveip'}
[ERROR] mariadb-server-core-10.6 conflicts with mysql-client-5.5 files: {'/usr/bin/innochecksum'}
[ERROR] mariadb-server-core-10.6 conflicts with mysql-server-5.5 files: {'/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/man/man1/innochecksum.1.gz', '/usr/bin/resolveip'}
[ERROR] mariadb-server-core-10.6 conflicts with percona-server-server-5.6 files: {'/usr/share/mysql/russian/errmsg.sys', '/usr/share/mysql/charsets/armscii8.xml', '/usr/share/mysql/charsets/latin5.xml', '/usr/share/mysql/mysql_system_tables.sql', '/usr/share/man/man1/innochecksum.1.gz', '/usr/share/mysql/slovak/errmsg.sys', '/usr/share/mysql/swedish/errmsg.sys', '/usr/share/mysql/charsets/cp1251.xml', '/usr/share/mysql/japanese/errmsg.sys', '/usr/share/mysql/charsets/keybcs2.xml', '/usr/share/mysql/charsets/latin1.xml', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/charsets/hp8.xml', '/usr/share/mysql/spanish/errmsg.sys', '/usr/share/mysql/greek/errmsg.sys', '/usr/share/mysql/charsets/hebrew.xml', '/usr/share/mysql/charsets/cp850.xml', '/usr/bin/innochecksum', '/usr/share/mysql/charsets/cp866.xml', '/usr/share/mysql/english/errmsg.sys', '/usr/bin/mysql_upgrade', '/usr/share/mysql/charsets/macroman.xml', '/usr/bin/resolveip', '/usr/share/mysql/charsets/dec8.xml', '/usr/share/mysql/charsets/koi8r.xml', '/usr/share/mysql/charsets/ascii.xml', '/usr/share/mysql/german/errmsg.sys', '/usr/share/mysql/charsets/koi8u.xml', '/usr/share/mysql/charsets/latin2.xml', '/usr/share/mysql/norwegian-ny/errmsg.sys', '/usr/share/mysql/french/errmsg.sys', '/usr/share/man/man1/mysql_install_db.1.gz', '/usr/share/mysql/charsets/cp1250.xml', '/usr/bin/mysql_install_db', '/usr/share/mysql/serbian/errmsg.sys', '/usr/share/mysql/charsets/greek.xml', '/usr/share/mysql/czech/errmsg.sys', '/usr/share/mysql/portuguese/errmsg.sys', '/usr/share/mysql/ukrainian/errmsg.sys', '/usr/share/mysql/charsets/README', '/usr/share/man/man1/mysql_upgrade.1.gz', '/usr/share/mysql/charsets/cp1256.xml', '/usr/share/mysql/charsets/Index.xml', '/usr/share/mysql/danish/errmsg.sys', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/dutch/errmsg.sys', '/usr/share/mysql/charsets/geostd8.xml', '/usr/share/mysql/estonian/errmsg.sys', '/usr/share/mysql/norwegian/errmsg.sys', '/usr/share/mysql/charsets/cp852.xml', '/usr/share/mysql/romanian/errmsg.sys', '/usr/share/mysql/hungarian/errmsg.sys', '/usr/share/mysql/charsets/cp1257.xml', '/usr/share/mysql/italian/errmsg.sys', '/usr/sbin/mysqld', '/usr/share/mysql/charsets/swe7.xml', '/usr/share/mysql/korean/errmsg.sys', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/charsets/macce.xml', '/usr/share/mysql/polish/errmsg.sys', '/usr/share/man/man8/mysqld.8.gz', '/usr/share/mysql/charsets/latin7.xml'}
[ERROR] mariadb-server-core-10.6 conflicts with percona-xtradb-cluster-server-5.6 files: {'/usr/share/mysql/russian/errmsg.sys', '/usr/share/mysql/charsets/armscii8.xml', '/usr/share/mysql/charsets/latin5.xml', '/usr/share/mysql/mysql_system_tables.sql', '/usr/share/man/man1/innochecksum.1.gz', '/usr/share/mysql/slovak/errmsg.sys', '/usr/share/mysql/swedish/errmsg.sys', '/usr/share/mysql/charsets/cp1251.xml', '/usr/share/mysql/japanese/errmsg.sys', '/usr/share/mysql/charsets/keybcs2.xml', '/usr/share/mysql/charsets/latin1.xml', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/charsets/hp8.xml', '/usr/share/mysql/spanish/errmsg.sys', '/usr/share/mysql/greek/errmsg.sys', '/usr/share/mysql/charsets/hebrew.xml', '/usr/share/mysql/charsets/cp850.xml', '/usr/bin/innochecksum', '/usr/share/mysql/charsets/cp866.xml', '/usr/share/mysql/english/errmsg.sys', '/usr/bin/mysql_upgrade', '/usr/share/mysql/charsets/macroman.xml', '/usr/bin/resolveip', '/usr/share/mysql/charsets/dec8.xml', '/usr/share/mysql/charsets/koi8r.xml', '/usr/share/mysql/charsets/ascii.xml', '/usr/share/mysql/german/errmsg.sys', '/usr/share/mysql/charsets/koi8u.xml', '/usr/share/mysql/charsets/latin2.xml', '/usr/share/mysql/norwegian-ny/errmsg.sys', '/usr/share/mysql/french/errmsg.sys', '/usr/share/man/man1/mysql_install_db.1.gz', '/usr/share/mysql/charsets/cp1250.xml', '/usr/bin/mysql_install_db', '/usr/share/mysql/serbian/errmsg.sys', '/usr/share/mysql/charsets/greek.xml', '/usr/share/mysql/czech/errmsg.sys', '/usr/share/mysql/portuguese/errmsg.sys', '/usr/share/mysql/ukrainian/errmsg.sys', '/usr/share/mysql/charsets/README', '/usr/share/man/man1/mysql_upgrade.1.gz', '/usr/share/mysql/charsets/cp1256.xml', '/usr/share/mysql/charsets/Index.xml', '/usr/share/mysql/danish/errmsg.sys', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/dutch/errmsg.sys', '/usr/share/mysql/charsets/geostd8.xml', '/usr/share/mysql/estonian/errmsg.sys', '/usr/share/mysql/norwegian/errmsg.sys', '/usr/share/mysql/charsets/cp852.xml', '/usr/share/mysql/romanian/errmsg.sys', '/usr/share/mysql/hungarian/errmsg.sys', '/usr/share/mysql/charsets/cp1257.xml', '/usr/share/mysql/italian/errmsg.sys', '/usr/sbin/mysqld', '/usr/share/mysql/charsets/swe7.xml', '/usr/share/mysql/korean/errmsg.sys', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/charsets/macce.xml', '/usr/share/mysql/polish/errmsg.sys', '/usr/share/man/man8/mysqld.8.gz', '/usr/share/mysql/charsets/latin7.xml'}
[ERROR] mariadb-server-core-10.6 conflicts with percona-xtradb-cluster-server-5.7 files: {'/usr/share/mysql/russian/errmsg.sys', '/usr/share/mysql/charsets/armscii8.xml', '/usr/share/mysql/charsets/latin5.xml', '/usr/share/mysql/mysql_system_tables.sql', '/usr/share/man/man1/innochecksum.1.gz', '/usr/share/mysql/slovak/errmsg.sys', '/usr/share/mysql/swedish/errmsg.sys', '/usr/share/mysql/charsets/cp1251.xml', '/usr/share/mysql/japanese/errmsg.sys', '/usr/share/mysql/charsets/keybcs2.xml', '/usr/share/mysql/charsets/latin1.xml', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/charsets/hp8.xml', '/usr/share/mysql/spanish/errmsg.sys', '/usr/share/mysql/greek/errmsg.sys', '/usr/share/mysql/charsets/hebrew.xml', '/usr/share/mysql/charsets/cp850.xml', '/usr/bin/innochecksum', '/usr/share/mysql/charsets/cp866.xml', '/usr/share/mysql/english/errmsg.sys', '/usr/bin/mysql_upgrade', '/usr/share/mysql/charsets/macroman.xml', '/usr/bin/resolveip', '/usr/share/mysql/charsets/dec8.xml', '/usr/share/mysql/charsets/koi8r.xml', '/usr/share/mysql/charsets/ascii.xml', '/usr/share/mysql/german/errmsg.sys', '/usr/share/mysql/charsets/koi8u.xml', '/usr/share/mysql/charsets/latin2.xml', '/usr/share/mysql/norwegian-ny/errmsg.sys', '/usr/share/mysql/french/errmsg.sys', '/usr/share/man/man1/mysql_install_db.1.gz', '/usr/share/mysql/charsets/cp1250.xml', '/usr/bin/mysql_install_db', '/usr/share/mysql/serbian/errmsg.sys', '/usr/share/mysql/charsets/greek.xml', '/usr/share/mysql/czech/errmsg.sys', '/usr/share/mysql/portuguese/errmsg.sys', '/usr/share/mysql/mysql_sys_schema.sql', '/usr/share/mysql/ukrainian/errmsg.sys', '/usr/share/mysql/charsets/README', '/usr/share/man/man1/mysql_upgrade.1.gz', '/usr/share/mysql/charsets/cp1256.xml', '/usr/share/mysql/charsets/Index.xml', '/usr/share/mysql/danish/errmsg.sys', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/dutch/errmsg.sys', '/usr/share/mysql/charsets/geostd8.xml', '/usr/share/mysql/estonian/errmsg.sys', '/usr/share/mysql/norwegian/errmsg.sys', '/usr/share/mysql/charsets/cp852.xml', '/usr/share/mysql/romanian/errmsg.sys', '/usr/share/mysql/hungarian/errmsg.sys', '/usr/share/mysql/charsets/cp1257.xml', '/usr/share/mysql/italian/errmsg.sys', '/usr/sbin/mysqld', '/usr/share/mysql/charsets/swe7.xml', '/usr/share/mysql/korean/errmsg.sys', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/charsets/macce.xml', '/usr/share/mysql/polish/errmsg.sys', '/usr/share/man/man8/mysqld.8.gz', '/usr/share/mysql/charsets/latin7.xml'}
[ERROR] mariadb-test conflicts with mysql-client-5.5 files: {'/usr/bin/mysql_client_test'}
[ERROR] mariadb-test conflicts with mysql-server-5.5 files: {'/usr/bin/mysqltest', '/usr/lib/mysql/plugin/ha_example.so', '/usr/share/man/man1/mysqltest.1.gz', '/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/auth_test_plugin.so', '/usr/lib/mysql/plugin/libdaemon_example.so', '/usr/lib/mysql/plugin/qa_auth_server.so', '/usr/lib/mysql/plugin/qa_auth_interface.so', '/usr/lib/mysql/plugin/mypluglib.so'}
[ERROR] mariadb-test conflicts with percona-server-server-5.6 files: {'/usr/bin/mysqltest', '/usr/share/man/man1/mysqltest.1.gz', '/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/auth_test_plugin.so', '/usr/lib/mysql/plugin/daemon_example.ini', '/usr/lib/mysql/plugin/libdaemon_example.so', '/usr/lib/mysql/plugin/qa_auth_server.so', '/usr/lib/mysql/plugin/qa_auth_interface.so', '/usr/lib/mysql/plugin/mypluglib.so'}
[ERROR] mariadb-test conflicts with percona-xtradb-cluster-server-5.6 files: {'/usr/bin/mysqltest', '/usr/share/man/man1/mysqltest.1.gz', '/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/auth_test_plugin.so', '/usr/lib/mysql/plugin/libdaemon_example.so', '/usr/lib/mysql/plugin/qa_auth_server.so', '/usr/lib/mysql/plugin/qa_auth_interface.so', '/usr/lib/mysql/plugin/mypluglib.so'}
[ERROR] mariadb-test conflicts with percona-xtradb-cluster-server-5.7 files: {'/usr/bin/mysqltest', '/usr/lib/mysql/plugin/ha_example.so', '/usr/share/man/man1/mysqltest.1.gz', '/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/auth_test_plugin.so', '/usr/lib/mysql/plugin/libdaemon_example.so', '/usr/lib/mysql/plugin/qa_auth_server.so', '/usr/lib/mysql/plugin/qa_auth_interface.so', '/usr/lib/mysql/plugin/mypluglib.so'}
[ERROR] mariadb-server-core-10.6 conflicts with mariadb-server-10.1 files: {'/usr/share/man/man1/resolveip.1.gz', '/usr/share/mysql/fill_help_tables.sql', '/usr/share/mysql/mysql_system_tables_data.sql', '/usr/share/mysql/mysql_performance_tables.sql', '/usr/share/mysql/mysql_system_tables.sql', '/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/share/mysql/maria_add_gis_sp_bootstrap.sql', '/usr/bin/resolveip'}

This was not fixed:
[ERROR] libmariadb-dev-compat conflicts with libmariadbclient-dev files: {'/usr/bin/mysql_config'}
The reason is that as long as libmariadbclient-dev is also provided by libmariadb-dev
as a kind of virtual package. If there is a breaks/replaces against it, it would
prevent libmariadb-dev-compat to be co-installed with libmariadb-dev. If the breaks/replaces
was versioned, then Lintian would complain about external versioned replace.

See also https://github.com/mariadb-corporation/mariadb-columnstore-engine/pull/1846 that
fixes one more conflict.
2021-04-16 17:19:06 +10:00
Otto Kekäläinen
fc65417e7b Deb: Move my_print_defaults to MariaDB client core package
The my_print_default is required by mytop which is also in the MariaDB
client package, which in turn requires the client core package.
This way it is ensured my_print_default is always available when mytop
is installed.

The my_print_defaults is also requires by the server logrotate files
and mysqld_safe script etc, but this change is fine, since the server
core package always depends on the MariaDB client core package anyway
and they are both installed on server installations.

Closes: #1566, #1581
2021-04-16 17:19:06 +10:00
Daniel Black
f55d53e26d Deb: Move client programs to client package from MariaDB server package
There are many programs that actually belong to the client or even client
core package, as they should be fully usable without a locally installed
server.
2021-04-16 17:19:06 +10:00
Marko Mäkelä
5c76e1e693 Merge 10.5 into 10.6 2021-04-15 20:21:11 +03:00
Otto Kekäläinen
f26e3259a1 Deb: Use build flag to enforce default charset as utf8mb4
Possible now since
29720950ee

Upstreamed from ca5e93c754

Closes: #1722
2021-04-15 11:34:20 +10:00
Otto Kekäläinen
a3e3225cd3 MCOL-4535: Clean up libreadline as ColumnStore no longer needs it 2021-04-15 11:31:31 +10:00
Marko Mäkelä
d2e2d32933 Merge 10.5 into 10.6 2021-04-14 12:32:27 +03:00
Marko Mäkelä
6c3e860cbf Merge 10.4 into 10.5 2021-04-14 11:35:39 +03:00
Marko Mäkelä
5008171b05 Merge 10.3 into 10.4 2021-04-14 10:33:59 +03:00
Marko Mäkelä
6e6318b29b Merge 10.2 into 10.3 2021-04-13 10:26:01 +03:00
Otto Kekäläinen
058d93d47a Deb: Stop depending on empty transitional package dh-systemd
MariaDB Server still supports Ubuntu 16.04 "Xenial" until it goes EOL
in April 30, 2021. Thus we need to include a customization for backwards
compatibility.

This change is intended to be applied for all MariaDB versions still
supported, i.e. 10.2 to 10.6.
2021-04-12 17:19:54 +10:00
Marko Mäkelä
450c017c2d Merge 10.2 into 10.3 2021-04-09 14:32:06 +03:00
Arnaud Rebillout
82a2ea64b4 Fix postinst trigger when systemd is not running (Closes: #983563)
Checking for the existence of the systemctl command only tells us that
systemd is installed, however it does not tell us if systemd is running.
What we really want to do here is reload systemd if it's installed AND
if it's running. The usual way to check if systemd is running is to
check for the existence of '/run/systemd/system'.

Why would systemd be installed but not running? This is something that
happens when one sets up or upgrade a system in a chroot or container.

For more details refer to the bug report:
<https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=983563>

Closes PR #1787
2021-04-06 17:20:43 +02:00
Daniel Black
6ca07c2109 Merge 10.5 into 10.6 2021-03-30 14:43:25 +11:00
Otto Kekäläinen
0df74a0197 Deb: Fix failing Salsa-CI by syncing fixes from downstream to upstream
Fixes jobs:
- mysql-8.0 Sid to mariadb-10.5 upgrade
- mariadb.org-10.5 to mariadb-10.5 upgrade

Downstream source:
8db0e53087
2021-03-29 07:29:03 -07:00
Otto Kekäläinen
5a4daa9099 Deb: Add Breaks/Replaces
Fix the following Breaks/Replaces errors detected by Salsa-CI:

  [ERROR] mariadb-server-10.5 conflicts with mysql-client-core-8.0 files:
    {'/usr/bin/myisam_ftdump', '/usr/share/man/man1/myisam_ftdump.1.gz'}
  [ERROR] mariadb-server-10.5 conflicts with mysql-server-core-8.0 files:
    {'/usr/share/man/man1/mysqlbinlog.1.gz',
     '/usr/share/man/man1/myisamlog.1.gz',
     '/usr/share/man/man1/mysql_tzinfo_to_sql.1.gz',
     '/usr/share/man/man1/perror.1.gz',
     '/usr/share/man/man1/myisampack.1.gz',
     '/usr/bin/mysqld_safe', '/usr/share/man/man1/myisamchk.1.gz',
     '/usr/bin/myisamchk', '/usr/bin/mysql_secure_installation',
     '/usr/bin/mysqld_multi', '/usr/bin/mysql_tzinfo_to_sql',
     '/usr/bin/perror', '/usr/share/man/man1/mysqld_multi.1.gz',
     '/usr/bin/myisampack', '/usr/share/man/man1/mysqld_safe.1.gz',
     '/usr/bin/myisamlog',
     '/usr/share/man/man1/mysql_secure_installation.1.gz',
     '/usr/bin/mysqlbinlog'}
  [ERROR] mariadb-test conflicts with mysql-server-core-8.0 files:
    {'/usr/lib/mysql/plugin/adt_null.so',
     '/usr/lib/mysql/plugin/mypluglib.so'}

Upstreamed from Debian packaging commits:
9b6a67b53c
f6d5545a02

Also:
- remove excess '<< ${source:Version}' on mysql-client-* and mysql-server-*
- move more packages to Conflicts as it is semantically more correct than
  having those packages in Replaces
2021-03-29 07:29:04 -07:00
Otto Kekäläinen
ab3777a3bf Revert "MDEV-23342 MariaDB cannot be installed over MySQL 5.7.30 on Bionic anymore"
This reverts commit 44885273f2.

Reverting this commit is necessary to fix missing-breaks errors in the
Debian packaging. The original fix was also not entirely necessary as a
fix to the original problem.

Partially also reverts commit e7c7f5c1bb where this
unsorted debian/control file was sorted.
2021-03-29 07:29:03 -07:00
Daniel Black
cba6bbbfef MDEV-5536: Deb - socket activation - service enable
Enable mariadb.service but install mariadb.socket
without enabling them.
2021-03-28 13:53:55 +11:00
Daniel Black
99f85eec88 MDEV-5536: Debian systemd socket activation
Attempt to follow the rules using dh_system_enable
to install the sockets.

Enable the sockets as opposed to the services by default.
2021-03-28 13:53:55 +11:00
Daniel Black
460d480c74 MDEV-5536: add systemd socket activation
Systemd has a socket activation feature where a mariadb.socket
definition defines the sockets to listen to, and passes those
file descriptors directly to mariadbd to use when a connection
occurs.

The new functionality is utilized when starting as follows:

  systemctl start mariadb.socket

The mariadb.socket definition only needs to contain the network
information, ListenStream= directives, the mariadb.service
definition is still used for service instigation.

When mariadbd is started in this way, the socket, port, bind-address
backlog are all assumed to be self contained in the mariadb.socket
definition and as such the mariadb settings and command line
arguments of these network settings are ignored.
See man systemd.socket for how to limit this to specific ports.

Extra ports, those specified with extra_port in socket activation
mode, are those with a FileDescriptorName=extra. These need
to be in a separate service name like mariadb-extra.socket and
these require a Service={mariadb.service} directive to map to the
original service. Extra ports need systemd v227 or greater
(not RHEL/Centos7 - v219) when FileDescriptorName= was added,
otherwise the extra ports are treated like ordinary ports.

The number of sockets isn't limited when using systemd socket activation
(except by operating system limits on file descriptors and a minimal
amount of memory used per file descriptor). The systemd sockets passed
can include any ownership or permissions, including those the
mariadbd process wouldn't normally have the permission to create.

This implementation is compatible with mariadb.service definitions.
Those services started with:

  systemctl start mariadb.service

does actually start the mariadb.service and used all the my.cnf
settings of sockets and ports like it previously did.
2021-03-28 13:53:55 +11:00
Marko Mäkelä
ccfbeafc45 Merge 10.5 into 10.6 2021-03-18 15:46:28 +02:00
Vladislav Vaintroub
aa2ff62082 MDEV-9077 Use sys schema in bootstrapping, incl. mtr 2021-03-18 08:02:48 +01:00
Otto Kekäläinen
7e3806ce24 Deb: Sync updates to debconf templates and translations from downstream 2021-03-17 15:06:28 +02:00
Otto Kekäläinen
bac931303d Deb: Add Finnish and Vietnamese debconf translations
Upstreamed from https://salsa.debian.org/mariadb-team/mariadb-10.5/-/tree/master/debian/po
2021-03-17 15:06:28 +02:00
Otto Kekäläinen
418381bf99 MDEV-25090: Deb: Use libpmem-dev when available
Updating the debian/control file will automatically update the dependencies
in all CI environments that directly read the debian/control file, such
as Salsa-CI and buildbot.mariadb.org to some degree.
(https://github.com/MariaDB/mariadb.org-tools/issues/43)

On Debian/Ubuntu releases that don't have libpmem-dev available,
automatically omit it.

Debian/Ubuntu availability visible at:
- https://packages.debian.org/search?searchon=names&keywords=libpmem-dev
- https://packages.ubuntu.com/search?searchon=names&keywords=libpmem-dev

Also modify debian/rules to activate the use of PMEM, as it does not seem
to activate automatically.

The scope of this change is also Debian/Ubuntu only. No RPM or Windows or
Mac changes are included in this commit.

This commit does not update the external libmariadb or ColumnStore
CI pipelines, as those are maintained in different repositories.
2021-03-17 13:23:18 +02:00
Otto Kekäläinen
211e9b3e0a MDEV-24927: Deb: Use liburing-dev instead of libaio-dev
Updating the debian/control file will automatically update the dependencies
in all CI environments that directly read the debian/control file, such
as Salsa-CI and buildbot.mariadb.org to some degree.
(https://github.com/MariaDB/mariadb.org-tools/issues/43)

On Debian/Ubuntu releases that don't have liburing-dev available,
automatically downgrade to libaio-dev (just like libcurl4->3 is done).
This ensures the debian/control file is always up-to-date and works for
latest Debian and Ubuntu releases, while the backwards compatibility mods
are maintained in autobake-deb.sh separately, and can be dropped from there
once support for certain platforms end.

Debian/Ubuntu availability visible at:
- https://packages.debian.org/search?searchon=names&keywords=liburing-dev
- https://packages.ubuntu.com/search?searchon=names&keywords=liburing-dev

Also modify debian/rules to force a build without libaio. Use YES instead
of ON to make the flag more logical (=turning libaio check "off").

Stop running Salsa-CI for Debian Stretch-backports, as it does not have
liburing-dev available nor is the old-old Debian stable a relevant platform
for MariaDB 10.6 to test against anymore. Since the Stretch-backports build
can no longer be made, neither can the MySQL 5.7 on Bionic upgrade test be
run, as it depended on the Stretch binary.

This commit does not modify the .travis.yml file, as Travis-CI does not
have new enough Ubuntu releases available yet. Also Travis-CI.org is
practically dead now as build times have been shrunk to near zero.

The scope of this change is also Debian/Ubuntu only. No RPM or Windows or
Mac changes are included in this commit.

This commit does not update the external libmariadb or ColumnStore
CI pipelines, as those are maintained in different repositories.
2021-03-15 11:34:02 +02:00
Marko Mäkelä
a43ff483fa Merge 10.5 into 10.6 2021-03-11 20:20:07 +02:00
Otto Kekäläinen
0da6d67a3a Deb: Rename mariadb.init 10.5->10.6 on 10.6 branch
Also fix a few other occurences of 10.5 -> 10.6.

This commit complements commit 4501c7e875
that seem to have missed these changes.
2021-03-11 10:21:52 +02:00
Otto Kekäläinen
bba6c38630 Deb: Sync downstream changes upstream
- Reduce Build-Depends
  150bf990c6

  Dependencies chrpath, dh-apparmor and libarchive-dev are not needed.
  Fixes buildbot sid failures that error on:
    Unmet build dependencies: chrpath dh-apparmor libarchive-dev

- Salsa-CI: Remove mysql-5.7 upgrade in Sid test as package was removed
  6f55ac620c

  Also clean away extra Salsa-CI markup not needed anymore.

- Autopkgtest: Simplify autopkgtest 'smoke' to be easier to debug
  836907989a

- Autopkgtest: Skip main.failed_auth_unixsocket on armhf and i386
  74601f8b31
2021-03-10 08:50:12 +02:00
Daniel Black
36810342d5 Merge branch '10.3' into 10.4 2021-02-25 13:16:10 +11:00
Daniel Black
3e2afcb3f4 Merge remote-tracking branch 'origin/10.2' into 10.3 2021-02-25 12:16:13 +11:00
Daniel Black
577c970c52 MDEV-24728: Debian include client caching_sha2_password plugin
Backport of 4bc31a904f

Include client libraries for auth caching_sha2_password and
sha256_password in the libmariadb3 client library package.
2021-02-25 12:12:04 +11:00
Marko Mäkelä
94b4578704 Merge 10.5 into 10.6 2021-02-17 19:39:05 +02:00
Marko Mäkelä
16388f393c Merge mariadb-10.5.9 2021-02-17 16:19:49 +02:00
Sergei Golubchik
25d9d2e37f Merge branch 'bb-10.4-release' into bb-10.5-release 2021-02-15 16:43:15 +01:00
Sergei Golubchik
00a313ecf3 Merge branch 'bb-10.3-release' into bb-10.4-release
Note, the fix for "MDEV-23328 Server hang due to Galera lock conflict resolution"
was null-merged. 10.4 version of the fix is coming up separately
2021-02-12 17:44:22 +01:00
Otto Kekäläinen
7fb528d722 Deb: Remove build depencency libreadline-gplv2-dev no longer available
The Readline library is no longer available in Debian Sid.
See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=980504

Add the dependency on-the-fly in autobake-deb.sh for older distro versions
and keep the native build in a state that works on Debian Sid as-is.
2021-02-11 17:59:09 +02:00
Otto Kekäläinen
2405752855 Salsa-CI: Install readline from Buster as it was removed from Sid
The older MariaDB.org packages were built against libreadline5 and depend
on it to install. As it was removed from Sid (and Bullseye), fetch and
install it from Buster.

This can eventually be removed once we stop backwards compat testing for
older MariaDB versions (new ones don't depend on it).

Upstreamed from Debian packaging repository commit
4b729db7f8
2021-02-11 17:59:09 +02:00
Sergei Golubchik
60ea09eae6 Merge branch '10.2' into 10.3 2021-02-01 13:49:33 +01:00
Vicențiu Ciorbaru
0921656734 Skip TokuDB within autobake-deb.sh
Skipping the package within debian/rules won't work because starting
with Debian 10, the helper scripts read the control file before the
recipe.
2021-01-29 21:11:16 +02:00
Vicențiu Ciorbaru
4a41712866 Skip TokuDB within autobake-deb.sh
Skipping the package within debian/rules won't work because starting
with Debian 10, the helper scripts read the control file before the
recipe.
2021-01-29 21:06:08 +02:00
Marko Mäkelä
6d05a95c65 Merge 10.5 into 10.6 2021-01-14 16:13:31 +02:00
Sergei Golubchik
2c845e0bd6 deb: relax server version dependencies for non-storage-engine plugins 2021-01-12 16:48:33 +01:00
Sergei Golubchik
0d2623d030 deb: remove i386 from Build-Depends of ColumnStore 2021-01-12 16:48:31 +01:00
Sergei Golubchik
5c53576c7b deb: use ${server:Version} for the version of the server package
and not ${binary:Version}, which is the version of the current
package, whatever it is.
2021-01-12 16:47:23 +01:00
Marko Mäkelä
92abdcca5a Merge 10.5 into 10.6 2021-01-07 09:08:09 +02:00
Marko Mäkelä
6268bdadf7 Merge 10.5 into 10.6 2021-01-04 10:52:32 +02:00
Otto Kekäläinen
2072738743 Deb: Ignore Lintian error on ColumnStore libjemalloc.so inclusion
Related: MDEV-24124

Partial upstreaming of Debian packaging commit
93a02bbe84
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
ae185f393c Salsa-CI: Use aptitude to resolve build dependencies
Adopt the same install-build-deps.sh the upstream Salsa-CI has started
using. Since we have our own custom build step (to support autobake-deb.sh)
we need to maintain in like this and adopt to upstream changes.

This change will make the stretch-backports build pass and use the
backported libzstd-dev 1.3.8 library (to satisfy the > 1.3.3 requirement).

Also clean away excess autopkgtest stanza and allow missing-breaks to
fail so that in total Salsa-CI would now pass.
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
fa9bd07305 Deb: Revert emptying /etc/mysql/debian.cnf on upgrades
Keep the user and password definitions as e.g. dbconfig-common expects to
find them there. Extend the file to document (in context) why it is about
to be obsoleted to facilitate users migrating away from it.

Upstreamed from a6583c1522
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
af8fa245a1 Deb: Sync misc changes from downstream Debian
- Add cracklib-runtime and libarchive-dev as build dependencies
- Update Debian policy standards version to 4.5.0
- Add libssl-dev to libmariadb-dev run-time dependency
- Add "Multi-Arch: same" to packages that have it in Debian
- Sync README.Debian
- Sync debian/rules formatting
- Sync autopkgtests
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
a3448b2395 Deb: Fix upgrade from Percona.com by ensuring server uses mariadb.cnf
Upstreamed from 13e3a7903e
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
ea56841997 Deb: Make dependencies and debian/rules cross-compile compatible
Also clean away impossible/unnecessary "Multi-Arch: same" stanzas.
Mostly upstreamed from f0ba31e156

Omitted 'libzstd-dev (>= 1.3.3)' as the version requirement would need
stretch-backports to be available on buildbot.askmonty.org builders and
they are not yet.
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
ff36394ccc Deb: Correct documentation about systemd using debian-start
The mariadb.service systemd file indeed does contain:
  ExecStartPost=/etc/mysql/debian-start

So don't claim it does not use debian-start.

Upstreamed from af869e7030
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
16876e47d8 Deb: Unify config file syntax style
- no space after comment
- align equal signs in groups

Upstreamed from: a8c67e15c9
2021-01-03 21:14:32 +02:00
Otto Kekäläinen
7a60bc22fc Deb: Remove PLUGIN_COLUMNSTORE=YES, it will build by default anyway
If PLUGIN_COLUMNSTORE is not defined, ColumnStore will build automatically
by default on supported architectures as defined in its CMakeFile.txt.

Thus there should not be any need to inject this build flag at any point
and it can be removed to keep thing lean and clean.
2020-12-23 15:17:49 +02:00
Otto Kekäläinen
deecc75a02 Fix commit 113f18686d and d180909796: PLUGIN_COLUMNSTORE=NO by default
ColumnStore seems to build by default, so it must be explicitly disabled
with a build flag, so that it does not build at all and thus build machine
disk space and CPU will be spared.

This reverts commit 113f18686d.
2020-12-23 15:17:49 +02:00
Otto Kekäläinen
113f18686d Fix previous commit: PLUGIN_COLUMNSTORE=YES can only be active on amd64
Refactor previous commit to fix mistake revealed by Buildbot. We can't
have a structure where PLUGIN_COLUMNSTORE would ever be 'YES' on an arch
that does not support it, as the flag overrides any potential platform
detection code and builds on non-amd64 would all fail.
2020-12-21 23:20:56 +02:00
Otto Kekäläinen
ecb1b8721b Salsa-CI: Copy most of Salsa-CI from Debian 10.5
- Use new Salsa-CI templates just like downstream does
- Also apply adaptations needed for native MariaDB to
  build correctly on Salsa-CI
- Adapt for mysql-8.0 now in Debian Sid, keep also mysql-5.7 test
- Test TLSv1.3 to ensure it does not regress
- Remove Snappy compression from autopkgtest as it not longer works
2020-12-21 19:03:29 +02:00
Otto Kekäläinen
d180909796 Deb: Don't build ColumnStore in native builds, only in autobake-deb.sh
ColumnStore files and debian/control stanza was removed in 1edd2243, and
thus will not be included in a native build. Also adapt the debian/rules
to follow this same policy and only build ColumnStore in builds triggered
from autobake-deb.sh. Avoiding building ColumnStore in vain saves a lot of
build time and disk space.
2020-12-21 19:03:29 +02:00
Otto Kekäläinen
e7c7f5c1bb Deb: Run 'wrap-and-sort -av' to debian/ contents is easier to compare
Maintaining the same deterministic file order in both upstream (this) and
downstream (Debian) repositories makes it easier to compare the delta.
2020-12-21 19:03:29 +02:00
Marko Mäkelä
a62a675fd2 Merge 10.5 into 10.6 2020-11-23 17:57:58 +02:00
Roman Nozdrin
a16e3c326d Update MCS to resolve libmarias3 compulation for centos74-amd64-debug
pipeline in community BB

Fix for rebuild from source step

Disable MCS on i386|i686 platforms

This patch puts MCS debian packaging files and part of debian/control
into the engine directory
2020-11-19 13:52:33 +00:00
Roman Nozdrin
1edd224372 This patch puts MCS debian packaging files and part of debian/control
into the engine directory
2020-11-14 19:09:34 +00:00
Roman Nozdrin
6083c5a054 This patch puts MCS debian packaging files and part of debian/control
into the engine directory
2020-11-14 15:49:36 +00:00
Marko Mäkelä
09a1f0075a Merge 10.5 into 10.6 2020-11-02 12:49:19 +02:00
Daniel Black
571bcf9aaa deb: logrotate - fix my_print_defaults arg
Corrects: 7803601dcb
2020-10-30 15:09:25 +11:00
Vicențiu Ciorbaru
f3c5a92490 Add type_mysql_json.so to debian packages 2020-10-29 15:01:33 +02:00
Roman Nozdrin
edfeb12919 MCS engine ref update 2020-10-20 13:11:47 +00:00
Alexey Botchkov
e3fc9c1db0 MDEV-19275 Provide SQL service to plugins.
Duplicating lines removed from the debian script.
2020-10-20 11:55:52 +04:00
Alexey Botchkov
5ca14dafbe MDEV-19275 Provide SQL service to plugins.
Debian scripts fixed.
2020-10-19 16:51:52 +04:00
Daniel Black
b3a9fbdbab travis: 10.2 only - make faster
Remove from debian build:
* tokudb
* mroonga
* spider
* ograph
* embedded server

Add ccache to debian build.

Backport 10.3 changes to autobake-deb
that make travis faster.

Merge instructions:
Drop this commit on merge to 10.3
2020-10-06 22:22:03 +11:00
Daniel Black
216ed17934 MDEV-22678: Debian Upgrade from MySQL-5.7 CE fails with "Plugin 'auth_socket' is not loaded
MySQL.com and Percona packages can be root auth_socket only. MariaDB uses unix_socket.
As the root user, as the default Debian maintaince user, needs to
be accessible to run mariadb-upgrade for a start, we make it accessible
again.
2020-09-30 17:51:29 +10:00
Sujatha
25ede13611 Merge branch '10.4' into 10.5 2020-09-29 16:59:36 +05:30
Sujatha
ce845b7a2f Merge branch '10.3' into 10.4 2020-09-28 17:55:39 +05:30
Sujatha
6cbbd6bd96 Merge branch '10.2' into 10.3 2020-09-28 17:27:42 +05:30
Sujatha
3a5e719e00 Merge branch '10.1' into 10.2 2020-09-28 14:03:46 +05:30
Daniel Black
3d28d1f3aa MDEV-23697: /usr/bin/perl for debian scripts 2020-09-24 08:16:30 +10:00
Daniel Black
4ddaa571fa MDEV-23697: perl -w -> perl
Leave debian/additions/mysqlreport as #!/usr/bin/perl

Acknowledge that `env perl` is a hack, a complete fix
needs to consider which path perl is at and insert into
these scripts.

The usefulness of these scripts is questionable.
2020-09-24 08:09:56 +10:00
Marko Mäkelä
0e34bb3e97 Merge 10.5 into 10.6 2020-08-12 14:39:53 +03:00
Marko Mäkelä
17be2b47ba Merge mariadb-10.5.5 2020-08-10 21:11:54 +03:00
Daniel Black
2b6dd87b2c debian: 99-enable-encryption.cnf.preset file, not symlink
Prevents errors on Windows Linux subsystem.

Fix to pr #1600
2020-08-08 14:06:33 +10:00
Daniel Black
699a43704b debian: remove gcc check. don't package rocksdb on x86_32 2020-08-08 14:04:14 +10:00
Daniel Black
cca55a9ca9 debian: disable rocksdb on 32bit with valid cmake directive 2020-08-08 14:04:13 +10:00
Sergei Golubchik
2b856ecd98 MCOL-4229 ColumnStore fails to build on Ubuntu 20.10 due to missing readline
partially revert 2c5831b2c5 - ColumnStore still needs readline to build
2020-08-07 13:36:11 +02:00
Sergei Golubchik
44885273f2 MDEV-23342 MariaDB cannot be installed over MySQL 5.7.30 on Bionic anymore
Deb: fix Conflicts/Replaces/Breaks
2020-08-07 13:36:11 +02:00
Marko Mäkelä
2f4bcc2494 Post-merge fix: Change one more 10.6
This was missed in the merge 272828a171.
2020-08-04 08:00:55 +03:00
Marko Mäkelä
9a7948e3f6 Merge 10.5 into 10.6 2020-08-04 07:55:16 +03:00
Otto Kekäläinen
842da858b6 Unify config syntax in default files
- Include a link to the relevant KB article for more info
- Use spaced around the equal sign for better readability and so that
  the examples are more aligned with the general style in the KB
- Load plugins with just the base name, the .so is optional and excess
2020-08-01 10:31:41 +10:00
Otto Kekäläinen
f99de8915e Deb: Make RocksDB plugin depend on python3 as myrocks_hotbackup needs it
This fixes the Lintian error and thus the Lintian override can also be
removed.
2020-07-30 10:36:39 +10:00
Otto Kekäläinen
a10f72aa5e Deb: Proper DH_ and DEB_ flag use in debian/rules
- DEB_BUILD_HARDENING is only used with hardening-wrapper which is
  deprecated in Debian, so remove it
- The word 'terse' should be checked in DEB_BUILD_OPTIONS and verbosity
  controlled by it
2020-07-30 10:36:39 +10:00
Otto Kekäläinen
497e7eda8c Deb: Stop suggesting tinyca, upstream project does not exist anymore
TinyCA has not been updated since 2016 and was removed from Debian in 2019
and the dev site https://tinyca.alioth.debian.org/ is offline.

See https://tracker.debian.org/pkg/tinyca
2020-07-30 10:36:39 +10:00
Otto Kekäläinen
bdf8268307 Deb: Simplify and unify autobake-deb.sh
- Remove excess build flag from debian/rules that does nothing, introduced
  wrongly in commit 7cbde2d0a2. Instead
  implement the embedded server build skipping on Travis-CI correctly.
- Simplify structure by doing all Travis-CI slimdown in one step.
- Remove unnecessary -e from sed, as it does nothing. When regex is needed,
  use -r. Move -i to last so it is close to the file name it has an
  argument.
- Remove backwards compat checks that are no longer relevant as neither
  Debian Jessie (was before Stretch) nor Ubuntu Trusty (before Xenial)
  are supported nor built for anymore. For example the GCC 4.8 check
  if not relevant anymore, since Debian Jessie already has 4.9 and
  Ubuntu Xenial has 5.3 and there is no GCC < 4.8 around anymore.
- Skip building ColumnStore on both Travis-CI and Gitlab-CI as it is
  way too slow (time) and big (disk space) to pass.
2020-07-30 10:36:39 +10:00
Otto Kekäläinen
7a0fa9da03 Deb: Cleanup and document
- Remove unnecessary unused files
- Remove duplicate encryption configuration sample from sources and
  re-use the identical file in RPM directory instead
- Clean away harmful "default-character-set = utf8mb4" from client config
  as it is unnecassary (server enforces utf8mb4 anyway by default) and
  could cause issues with mysqlbinlog and other tools (MDEV-22981).
- Update S3 plugin description to be long enough
- Remove trailing whitespace from support-files and Debian packaging.
- Clean away fixed Lintian issues
- Clean away temporary Salsa-CI fixes now that 10.5.4 is out and is fixed
- Apply wrap-and-sort -a -v
2020-07-30 10:36:39 +10:00
Otto Kekäläinen
7c1807a0ad Deb: On upgrades, stop both mysqld and mariadbd for backwards compat 2020-07-30 10:36:39 +10:00
Otto Kekäläinen
b8031e362a Use mktemp instead of deprecated tempfile
This fixes the warning emitted during `/etc/init.d/mariadb restart`:
  WARNING: tempfile is deprecated; consider using mktemp instead.
2020-07-30 10:36:39 +10:00
Roman Nozdrin
2c5831b2c5 MCOL-4166 The solution to the minor upgrade issue
DEB package doesn't need expect and libreadline as dependencies

RPM packages now depends on jemalloc again
2020-07-28 09:48:17 +00:00
Marko Mäkelä
d61c800308 MDEV-23024 Remove Cassandra Storage Engine
Cassandra has long been non-functional, doesn't compile, etc.,
and development on it has halted. Since MariaDB Server 10.5,
the build is disabled by default.

It makes sense to remove it as it's just taking up space.
2020-07-14 16:24:50 +03:00
Roman Nozdrin
2726203994 Remove obsolete file from the packaging list. 2020-07-11 14:04:53 +00:00
Otto Kekäläinen
439377927b Deb: Misc ColumnStore Debian packaging improvements
- Add 'libboost-all-dev' and 'libreadline-gplv2-dev' as they were was found
  to be a compulsory build dependency for columnstore plugin.
- Add 'expect' as run-time dependencey for columnstore plugin as scripts
  use it:
    usr/bin/mcs_module_installer.sh: #!/usr/bin/expect
    usr/bin/remote_command.sh: #!/usr/bin/expect
    usr/bin/remote_command_verify.sh: #!/usr/bin/expect
    usr/bin/remote_scp_get.sh: #!/usr/bin/expect
    usr/bin/remote_scp_put.sh: #!/usr/bin/expect
    usr/bin/rsync.sh: #!/usr/bin/expect
- Properly define depends on Python. No Python 2 support needs to be
  considered, Python 3 has been around long enough. Fixes Lintian errors
    E: mariadb-plugin-columnstore: python-script-but-no-python-dep
    usr/bin/mcs-loadbrm.py #!python
    E: mariadb-plugin-columnstore: python-script-but-no-python-dep
    usr/bin/mcs-start-storagemanager.py #!python
- Partially revert undocumented and thus unjustified changes in commits
  d69a79da63287089efdc5f90a11ecd66ce55b471 and
  c0565666cfe6528b76bc53ce50d3690d13c92cf6.
- Trigger ldconfig, otherwise Lintian complains:
    E: mariadb-plugin-columnstore: package-must-activate-ldconfig-trigger
    usr/lib/x86_64-linux-gnu/libwriteengineredistribute.so
- Update postinst to be compatible with new server binary mariadbd name.
- Properly detect systemd or fallback to sysv init in postrm script.
- Only attempt to build ColumnStore on amd64 and i386. Test builds on
  Launchpad.net showed the CMake plugin configure step will prevent even
  attempts to build on other platforms.
- Clean up and unify cmake build command in debian/rules.
- Explicitly list files not installed.
- Run 'wrap-and-sort -a -v'.
- Truncate build logs on Salsa-CI to keep under 4 MB. This is now needed
  as the ColumnStore build is so verbose.
  See https://jira.mariadb.org/browse/MCOL-4111.
- Update Travis-CI dependencies to match new debian/control.
2020-07-10 21:56:14 +03:00
Otto Kekäläinen
55c7536a02 Add man page for new command aria_s3_copy
Based on output of 'aria_s3_copy --help'.

Also fix a typo in command help.
2020-07-08 12:24:55 +03:00
Vladislav Vaintroub
272828a171 Merge branch '10.5' into 10.6 2020-07-04 11:53:26 +02:00
Marko Mäkelä
1813d92d0c Merge 10.4 into 10.5 2020-07-02 09:41:44 +03:00
Marko Mäkelä
f347b3e0e6 Merge 10.3 into 10.4 2020-07-02 07:39:33 +03:00
Marko Mäkelä
1df1a63924 Merge 10.2 into 10.3 2020-07-02 06:17:51 +03:00
Marko Mäkelä
ea2bc974dc Merge 10.1 into 10.2 2020-07-01 12:03:55 +03:00
Patrick LeBlanc
04df0bdae7 A few important fixes for columnstore.
- fix columnstore's python dependencies (MCOL-4114)
 - reduce compiler warning count from 14k to ~100 (MCOL-4030)
 - disable bintar builds
2020-07-01 08:48:05 +02:00
Oleksandr Byelkin
039cb6f6bf MDEV-22981: Bad "default-character-set" option in [client] option group 50-client.cnf on Debian/Ubuntu
Remove unsuported parameter by some clients.
2020-06-23 15:49:25 +02:00
Daniel Black
37c88445e3 mtr: use env for perl
On FreeBSD, perl isn't in /usr/bin, its in /usr/local/bin or
elsewhere in the path.

Like storage/{maria/unittest/,}ma_test_* , we use /usr/bin/env to
find perl and run it.
2020-06-23 03:24:46 +02:00
Sergei Golubchik
8ad9ef642a MDEV-22972 After upgrading server/client to 10.5 clients identified via non-builtin plugins cannot be authenticated
in 10.5.4 libmariadb3 plugins were moved to a new location
2020-06-21 23:49:45 +02:00
Roman Nozdrin
aa9a42d639 Change the method to run SQL statements installing MCS to fix major update scenario.
Added binutils dependency.
2020-06-19 21:04:18 +02:00
Roman Nozdrin
1e7a68f84a Both RPM and DEB now restart MDB uninstalling the plugin.
Both RPM and DEB now conflicts on previous versions of MCS.

    Trim .deb packaging.

    MCS now depends on python. Python version varies in distributions.
2020-06-19 21:04:18 +02:00
Sergei Golubchik
070413fab3 columnstore: delete .rpmsave, install tests 2020-06-19 21:04:18 +02:00
Roman Nozdrin
976d4570cd Change installed files list to align with the recent changes in the server.
Updated MCS
2020-06-19 21:04:18 +02:00
Roman Nozdrin
2e6acebedd MDEV-22197 Change .deb cleanup on uninstall and add extra install files.
Update MCS ref.
2020-06-19 21:04:18 +02:00
Sergei Golubchik
71bf5085e4 MCS on i386 deb 2020-06-19 21:04:17 +02:00
Sergei Golubchik
c2b12c554e build deb packages for columnstore 2020-06-19 21:04:17 +02:00
Roman Nozdrin
09e8c77cad Clean up for debian packaging and updates for systemd service units. 2020-06-19 21:04:17 +02:00
Roman Nozdrin
0f88fd84e6 MCOL-3991 MCS is now shiped in a single package. 2020-06-19 21:04:17 +02:00
Andrew Hutchings
793dcc7368 Add stub for building ColumnStore 2020-06-19 21:04:17 +02:00
Sergei Golubchik
35034d819c S3 is pluggable now 2020-06-19 19:43:07 +02:00
Otto Kekäläinen
7803601dcb MDEV-22569: Run bin/mariadbd instead of bin/mysqld
Replace all references to /usr/sbin/mysqld (and bin and libexec) with
mariadbd, so that the binary server will always be 'mariadbd'.

Also update all places that reference the server binary in other ways,
such as AppArmor profiles and scripts that previously expected to find
a 'mysqld' in process lists.
2020-06-16 12:59:30 +03:00
Sergei Golubchik
07d1c8567c post-fix for #1504 2020-06-12 01:17:57 +02:00
Otto Kekäläinen
ba4148698f MDEV-19917: Install Spider with a simple spider.cnf
To install Spider one can simply drop a /etc/mysql/conf.d/spider.cnf like

  [mariadb]
  plugin-load-add=ha_spider.so

This is automatically generated and installed when plugin is correctly
registered to plugin.cmake with its own component name. Many other plugins
such as Connect and RocksDB install in the same way.

This solved MDEV-19917 as the mere adding and removing of spider.cnf
automatically installs and uninstalls it.

Remove the overly complex and uncecessary install.sql from Spider,
if should not be needed in modern times anymore.

With this change there is no need for a uninstall.sql either.
2020-06-10 13:24:21 +03:00
Otto Kekäläinen
bb8477778b Deb: Clean up default configs for 10.5 era
- Recommend max_allowed_packet=1G which is the same as the default client
  value.
- Remove thread_concurrency removed in 10.5.
- Remove query cache, not recommended practice anymore.
- Remove binlog_*, should not recommend those too easily but rather require
  the database administrator to read up on those themselves.
- Remove chroot setting, not relevant in modern container era.
- Show explicitly innodb_buffer_pool_size example as the most likely thing
  a database administrator should change.
- Don't recommend rate limiting in slow log, logging once in a 1000
  would not be optimal for the basic case, hence bad example.
- Install the example configs in /usr/share/mysql.
- Use correct path /run/ instead of /var/run/.
2020-06-10 13:24:19 +03:00
Otto Kekäläinen
7c2079f600 MDEV-19933: Sync mariadb-common and update-alternatives based /etc/mysql/
Split the big my.cnf into multiple smaller files with the same filenames
and contents as official Debian/Ubuntu packaging has.

The config contents stays the same apart from following additions
which the original MariaDB upstream configs had and probably needs
to be kept:
- lc-messages=en_US and skip-external-locking in server config

Configs the original MariaDB upstream had that are seemingly
unnecessary and thus removed:
- port=3306 removed from the client config
- log_warnings=2 removed from server config

Also adopt update-alternatives system using
mysql-common/configure-symlinks. This way it is aligned with
downstream Debian/Ubuntu packaging.
2020-06-10 13:24:18 +03:00
Otto Kekäläinen
8d056affd8 Travis-CI: Shorten deb build log to keep it under 4 MB
There is a 4 MB hard limit on Travis-CI and build output needs to be less
than that. Silencing the 'make install' step gets rid of a lot of
"Installing.." and "Missing.." and removing all mysql-test files will
make the dh_missing warnings much shorter.

Cherry-picked from 41952c85f1.
2020-05-17 15:46:34 +03:00
Otto Kekäläinen
57e654f59b Bugfix: Typo in 4501c7e875 that made mariadb-client-core conflict itself
This fixes the apt error:
  The following packages have unmet dependencies:
  mariadb-client-core-10.6 : Conflicts: mariadb-client-10.6 but
  1:10.6.0+maria~sid is to be installed
2020-05-16 13:00:22 +03:00
Otto Kekäläinen
91446c822f Deb: Create empty migrated-from-my.cnf-settings.conf for Buildbot tests
The buildbot.askmonty.org has explicit tests that check that this file
exists, thus to get tests pass, an empty placeholder must be created.
Remove this once CI has been updated not to expect this file.
2020-05-16 10:42:35 +03:00
Otto Kekäläinen
dab5698b3c Deb: Stop using mariadb-service-convert
We can't expect that users want to always convert their mysqld_safe
settings on an upgrade. In its current form it will always run, and that
seems unnecessary on every single installation.

Also the script is buggy, leaks mysqld_safe output into the written file
and since it gets syntax errors the whole mariadb.service will fail to
work.
2020-05-16 10:42:35 +03:00
Otto Kekäläinen
69964c4425 Deb: Add manually dh_systemd_start snippets
These do now show up automatically due to init and systemd customizations,
so the handiest fix is to add them manually. This has been the praxis
in downstream MariaDB packaging for a couple years now, and works fine.

- Ensure service is loaded and started after installation,
  (fixes service start issues in Debian/Ubuntu upgrades where
  otherwise service mysql status stayed stopped)

- Ensure service stopped before removal/purge
  (fixes unstopped processes detected by piuparts)

- Ensure systemd daemon is reloaded after removal/purge when service
  has been removed
2020-05-16 10:42:35 +03:00
Otto Kekäläinen
764dd39ca7 Deb: Add support for legacy init systems again
Partially reverts commit a4cc6fb91f.

While all current versions of Linux have systemd, support for traditional
init.d is still needed e.g. on Linux subsystem on Windows, kFreeBSD and
special variants of Debian/Ubuntu that for other reasons don't have
systemd.

Thus, re-introduce the init file that was remove, but this time with
then name 'mariadb'.

Supporting traditional sysv init in paraller with systemd is easy, since
Debian has facilities for it.

Also simplify and update salsa-ci.yml install/upgrade testing works
for all previous MariaDB and MySQL releases without any excess quirks.

Note that in fresh installs the salsa-ci.yml needs to run command
'service mariadb status' to control the service, while on upgrades
it is enough to run 'service mysql status', since the init.d/mysql
file is left behind from previous install, along with some other
config files such as /etc/default/mysql and /etc/mysql/* stuff.
2020-05-16 10:42:35 +03:00
Otto Kekäläinen
4501c7e875 Deb: Rename relevant occurrences of 10.5 to 10.6 now in 10.6 series 2020-05-14 19:43:26 +03:00
Marko Mäkelä
7924158496 MDEV-19780 Remove the TokuDB storage engine
The TokuDB storage engine has been deprecated by upstream
Percona Server 8.0 in favor of MyRocks and will not be available
in subsequent major upstream releases.

Let us remove it from MariaDB Server as well.
MyRocks is actively maintained, and it can be used instead.
2020-05-14 10:11:47 +03:00
Marko Mäkelä
496d0372ef Merge 10.4 into 10.5 2020-04-29 15:40:51 +03:00
Marko Mäkelä
0632b8034b Merge 10.3 into 10.4 2020-04-29 09:05:15 +03:00
Marko Mäkelä
1fbdcada73 Merge 10.2 into 10.3 2020-04-28 22:29:13 +03:00
Sergei Golubchik
fb7c1b9415 MDEV-21331 installation fails on a server with containers
when detecting running mysqld processes to stop,
ignore processes in different namespaces.
2020-04-28 17:51:38 +02:00
Otto Kekäläinen
2655984ed4 Deb: Use mysql[d].service symlinks as created by CMake
Stop making new symlinks and use the existing ones directly as they have
been available since d2f5e82f00.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
77bf7a9176 Remove excess mysql-* provides (the virtual-mysql-* are enough)
Originally added in cc08c134f7 in 2015
for backwards compatibility with old packages.

It no longer makes much sense in providing mysql-* packages since the
virtual-mysql-* packages paradign has been in effect since 2016 and
all current MySQL installs should already follow the virtual-mysql-*
paradigm controlled by https://tracker.debian.org/pkg/mysql-defaults.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
7cbde2d0a2 Deb: Misc small fixes and cleanups
- Include binary wsrep_sst_rsync_wan previously omitted.
- Don't build the embedded server. This saves a lot of time and
  around 500 MB of disk space.
- Clean away unused override_dh_installcron. The package does not
  have any *.cron files, so this section is not needed.
- Make mariadb-server run time depend on procps so pgrep works.
  The command pgrep is used in the maintainer scripts of mariadb-server,
  thus we should ensure it is found on the system.
- Include build plugin func_test.so in test package. Don't include yet
  type_test.so since it fails (MDEV-22243).
- Clean away obsolete Lintian overrides.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
13ec2ecc99 Deb: Rename mysqlreport to mariadb-report, fix regression in 9e1b3af4a
This was partially already done in 9e1b3af4a4
as the symlink mysqlreport pointed to mariadb-report. There just was no
script with that name, so this rename complements it and now both
mariadb-report and mysqlreport work again.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
7fe2dddb0f Clean up logcheck.ignore.* configs and unify MariaDB.org links with https 2020-04-23 10:07:07 +03:00
Otto Kekäläinen
b8092a3c9d Deb: Remove unmaintained AWS key plugin packaging
Likewise to TokuDB and Cassandra, if this plugin is maintained it should
be either fully enabled or not present at all. Packaging can be recovered
from MariaDB 10.2 if needed, or if build outside of this packaging, then
also the packaging scripts and snippets should be injected from the
outside.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
da64ec1ede MDEV-19110: Remove Cassandra from Debian packaging
Cassandra has deprecated their Thrift interface years ago (a few months
after Cassandra SE was released). The new way to access Cassandra is to
use the CQL Connector, which does not use Thrift.

There have been talks to make a CassandraSE V2 but no usable code have
been produced. The motivation to keep CassandraSE in the MariaDB source
code is to have it as an example for such future attempts.

It can stay in the source code but it should be removed from packaging
to avoid Debian packaging maintenance work around trying to compile it
and have tests pass on new platform.

If somebody wants Cassandra, they can use the 10.4 branch.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
9cc1c74ca3 MDEV-21944: Remove TokuDB from Debian packaging
It was already disabled in 1589cf1cb3 but
turns out that as long as the packaging is there, is requires maintenance,
ensuring it still builds, debugging failing tests etc and that takes its
toll and is not worth all the extra work. Having it "only disabled" does
not help, since either we have it and keep it tested and working, or we
don't have it and don't spend time on keeping it working and tested.

In MDEV-19780 there was already a decision to drop TokuDB from MariaDB.

If somebody wants TokuDB, they can use the 10.4 branch.
2020-04-23 10:07:07 +03:00
Otto Kekäläinen
86f59e8615 Deb: Use 'eatmydata' when available to build faster with less disk I/O 2020-04-23 10:07:07 +03:00
Otto Kekäläinen
03119c5890 Deb: Add a customized salsa-ci.yml for easy extra testing
As initially most tests fail, they have allow_failures defined so that
testing anyway proceeds all the way to the final 'upgrade extras' stage.

All of these tests work for downstream Debian packaging of MariaDB 10.4
and should eventually pass on upstream MariaDB 10.5 as well.

Also upstream the Debian autopkgtests from MariaDB 10.4 in Debian so that
pipeline includes running mtr.
2020-04-23 10:07:07 +03:00
Vicențiu Ciorbaru
478ec7750a Cleanup whitespace 2020-04-19 17:17:59 +03:00
Otto Kekäläinen
8c41a1df86 MDEV-21869: Add temporary Lintian overrides
With these in place Lintian will pass without errors (only warnings) and
the CI systems will at least be able to stop anybody from introducing
new Lintian errors.
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
29c5d96da3 MDEV-21869: Make Debian packaging Lintian clean
Fix Lintian complaints on:
 P: maintainer-script-without-set-e
 W: mariadb-server-10.5: script-not-executable usr/share/mysql/mysql.init
 W: mariadb-client-10.5: incorrect-path-for-interpreter usr/bin/innotop
    (#!/usr/bin/env perl != /usr/bin/perl)
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
a4c5480525 MDEV-6284: Sync correct Debian handling of auth_pam_tool
Manages the security risk in way that also fixes Lintian warning:
  W: mariadb-server-10.5: setuid-binary
  usr/lib/mysql/plugin/auth_pam_tool_dir/auth_pam_tool 4755 root/root

Applied downstream in
9605a48a99
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
4e946b0f0c MDEV-6284: Sync mariadb-server maintainer scripts as much as possible
There are still some differences in due to systemd and service triggers,
but these differences make sense and are likely to be synced the other
way later so that downstream Debian official packaging adopts them.

The synced changes include among others:
- 9f49e4b494
- 6440c0d6e7
- 6e5ee72d64
- e62e67ae4b
- df2415a53d
- 643558da74
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
9ed7e967b3 MDEV-6284: Sync breaks/replaces relationships and file locations
These changes are in line with what has been changes in downstream Debian
and they fix the following errors:

 $ check_for_missing_breaks_replaces.py -o ${WORKING_DIR}/missing_breaks.xml --changes-file ${WORKING_DIR}/*.changes
 [ERROR] mariadb-client-10.5 conflicts with mytop files: {'/usr/bin/mytop'}
 [ERROR] mariadb-client-10.5 conflicts with mariadb-client-core-10.3 files: {'/usr/bin/mysqlcheck'}
 [ERROR] mariadb-server-10.5 conflicts with mariadb-server-core-10.3 files: {'/usr/share/man/man1/resolveip.1.gz', '/usr/bin/resolveip', '/usr/share/mysql/mysql_test_data_timezone.sql'}
 [ERROR] mariadb-client-10.5 conflicts with mysql-client-core-5.7 files: {'/usr/bin/mysqlcheck'} [ERROR] mariadb-server-10.5 conflicts with mariadb-server-core-10.3 files: {'/usr/share/man/man1/resolveip.1.gz', '/usr/bin/resolveip', '/usr/share/mysql/mysql_test_data_timezone.sql'}
 [ERROR] mariadb-server-10.5 conflicts with mysql-client-5.7 files: {'/usr/bin/myisam_ftdump', '/usr/share/man/man1/myisam_ftdump.1.gz'}
 [ERROR] mariadb-server-core-10.5 conflicts with mysql-server-5.7 files: {'/usr/share/mysql/mysql_test_data_timezone.sql', '/usr/bin/resolveip', '/usr/share/man/man1/resolveip.1.gz'}
 [ERROR] mariadb-test conflicts with mysql-server-5.7 files: {'/usr/lib/mysql/plugin/adt_null.so', '/usr/lib/mysql/plugin/mypluglib.so'}
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
7a0eeaaf66 MDEV-6284: Sync deb build rules etc with downstream
- Ensure cmake builds also apply CPPFLAGS flags for hardening to fully work
  fc4f33cf40
- Install Ubuntu Apport files in the same way with same filename.
- MDEV-21705: Build flags to keep WolfSSL from crashing
- Clean away sql-bench from packaging immediately after build step.
- Delete private files from libraries so they don't get shipped in the -dev
  packages.
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
bc11f392f8 MDEV-6284: Correctly place files in libmariadb-dev, libmariadbd-dev etc packages
- Make full contents, also header files, explicit in -dev packages
  fb77df0c75
- Don't ship private header files at all.
- Ship both libmariadb.pc and maridb.pc.
- Ship mysql_config only as a symlink.
- Keep 'mariadbcheck' as symlink as somebody could have used it already
  d0466f74d5
- The mariadb.pc is the server pkg-config, ship in libmariadbd-dev.
- The client pkg-config is called libmariadb.pc. Ship only it in the client
  library packages.

Use versioned breaks/replaces for mysql* packages we also provide and fix:

  [ERROR] libmariadb-dev conflicts with libmysqlclient-dev files:
    {'/usr/share/man/man1/mysql_config.1.gz', '/usr/share/aclocal/mysql.m4'}
  [ERROR] libmariadb-dev conflicts with libmysqld-dev files:
    {'/usr/lib/x86_64-linux-gnu/libmysqlservices.a'}
2020-04-19 17:15:40 +03:00
Otto Kekäläinen
5cdf245d7e MDEV-6284: Sync deb build dependencies and control file with downstream
- Remove versioned depends that are far outdated and not relevant anymore
  in 2020.
- Link with libedit instead of unmaintained readline5
  d8796a0e3b
- Add [linux-any] for Linux specific depends and other smaller control
  file tweaks.
- Update .travis-ci.yml to match.
- Also fixes the Debian autopkgtest detected error:
    ERROR 1231 (42000) at line 1: Variable 'innodb_compression_algorithm'
    can't be set to the value of 'lz4'
2020-04-19 17:15:40 +03:00
Faustin Lammler
6af0bd6907 MDEV-15526 systemd unit files naming and installation
Drop Aliases from the service file directive. Aliases in the service
file only take effect when the service is enabled. This is the case
because Aliases in service files do not have to be unique across various
services.

Shipping symlinks guarantees that one can always enable mariadb service
using `systemctl enable mysql` or `systemctl enable mysqld` and makes
the commands indempotent.
2020-04-18 16:06:16 +03:00
Otto Kekäläinen
87a7968c23 MDEV-22150: Symlink and move test client plugins to client plugin path
Without this, the mtr will fail to load client plugins and the following
tests would fail:

- main.plugin_auth_qa_2
- main.plugin_auth_qa_3
- main.plugin_auth
- plugins.multiauth
- plugins.auth_ed25519
2020-04-14 12:08:30 +03:00
Otto Kekäläinen
4bc31a904f MDEV-22053: Pass INSTALL_LAYOUT "DEB" correctly to CONC (libmariadb)
As this was missing, the libmariadb/install.cmake section for Debian
builds was not triggered at all, and existing fixes to make the
Debian paths correct did not apply.

Update libmariadb3 paths in Debian packaging after MariaDB Connector C
3.1.8 upgrade

Also now include caching_sha2_password.so which was previously omitted.

Keep old libmariadbclient.a as symbolic link for backwards compatibility.

Closes: CONC-304
Related: CONC-456, MDEV-22150
2020-04-13 14:33:50 +03:00
Otto Kekäläinen
b6eabce139 Travis-CI: Shorten deb build log to keep it under 4 MB
There is a 4 MB hard limit on Travis-CI and build output needs to be less
than that. Silencing the 'make install' step gets rid of a lot of
"Installing.." and "Missing.." and removing all mysql-test files will
make the dh_missing warnings much shorter.
2020-04-06 09:07:02 +03:00
Otto Kekäläinen
811e4409ce Travis-CI: Shorten deb build log to keep it under 4 MB
There is a 4 MB hard limit on Travis-CI and build output needs to be less
than that. Silencing the 'make install' step gets rid of a lot of
"Installing.." and "Missing.." and removing all mysql-test files will
make the dh_missing warnings much shorter.
2020-04-05 23:55:45 +03:00
Otto Kekäläinen
b541defea0 Deb: Build depend on libcurl4-openssl-dev as primary option
The package libcurl4-dev is a virtual package, and no package with that
name actually exists. Depend on libcurl4-openssl-dev as the primary
option in case no libcurl4-dev providing package has been installed, and
if some of them (libcurl4-gnutls-dev, libcurl4-nss-dev,
libcurl4-openssl-dev ) are installed, they also satisfy the dependency
via the virtual package.

The Travis-CI still runs on libcurl3-dev as Travis-CI also runs Ubuntu
Xenial which does not yet have libcurl4 available.

This complements commit 2e0a40bdf0.
2020-04-05 00:24:24 +03:00
Otto Kekäläinen
6959c0922a MDEV-20298 Make mariadb-client-10.5 perl dep backwards compatible
The package libdbd-mariadb-perl has been available in Debian September
2018, so it is already included since Debian Buster and Ubuntu Disco.

Use it as the primary Recommends for MariaDB client binaries, but keep
the MySQL variant as a fall-back in case this package gets backported to
older releases that did not yet have it.

This change was done in downstream Debian packaging in
bb4ad78bc1
2020-04-05 00:24:24 +03:00
Otto Kekäläinen
333e1d82fc Deb: Update control file Depends to include only variables that are set
Don't include variables that are empty and unused.
2020-04-05 00:24:24 +03:00
Otto Kekäläinen
2cedf3eca4 MDEV-21303: Fix man page packaging for new mariadb-* named binaries
This fixes Lintian errors and warnings:

E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-analyze.1
E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-optimize.1
E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mariadb-repair.1
E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqlanalyze.1
E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqloptimize.1
E: mariadb-client-10.5: manpage-not-compressed usr/share/man/man1/mysqlrepair.1
W: mariadb-client-10.5: binary-without-manpage usr/bin/mariadb-conv
W: libmariadb-dev: binary-without-manpage usr/bin/mariadb_config

If the binary name is mariadb_config, the manpage needs to be mariadb_config.1.

Also run 'wrap-and-sort -a -v' to get lists in correct order.

In addition, sort .gitignore and remove duplicate lines.
2020-04-05 00:24:24 +03:00
Otto Kekäläinen
80abfa0eda Don't force to use all processors in autobake-deb.sh
The dpkg-buildpackage has by default sensible values for --jobs and
--try-jobs, and it also inherits whatever 'parallel' is set in
DEB_BUILD_OPTIONS. Overriding it here should not be needed and removing
it is better, since it allows build systems to control the level or
parallel builds via DEB_BUILD_OPTIONS if they want, which they often do
(e.g. to avoid CPU congestion or overheating laptops).
2020-04-04 20:42:00 +03:00
Otto Kekäläinen
1589cf1cb3 Deb: Remove TokuDB from Debian packages while keeping it easy to revert
Related:
- https://jira.mariadb.org/browse/MDEV-19780
- https://jira.mariadb.org/browse/MDEV-21944
2020-04-04 20:42:00 +03:00
Otto Kekäläinen
91994b6be4 Deb: Extend control dependencies for MySQL 8.0 and clean up
Make package have sensible control file relations to mysql-8.0.

Also some cleanup:
- Remove obsolete versioned control relationships. When the package
  name already has a version older than current package, the extra
  version is obsolete.
- Remove obsolete postinst script that was empty
- Remove priority "extra" which is deprecated, use "optional" that
  applies for the whole source package instead.
2020-04-04 20:42:00 +03:00
Otto Kekäläinen
400d7709ce Deb: Clean away deprecated autobake modifications
The current debian/control file and other packaging of 10.5 targets the
latest Debian unstable. In autobake-deb.sh there are automatic build
adaptations for older Debian/Ubuntu releases.

Some adaptations were for Debian versions prior to Jessie and Ubuntu
versions prior to Trusty. Those distro releases are no longer supported
anyway, so these should be cleaned away now in the 10.5 release cycle.

Summary:
- Debian Jessie has libcrack2 release 2.9.2-1, no need to have adaptations
  for any older environments
- Debian Jessie has libpcre3-dev release 2:8.35-3.3, no need to consider
  older versions
- Systemd has been available since Debian Jessie, no need to consider
  that a Debian/Ubuntu environment would not have it available
  adaptations for environments for anything older
2020-04-04 20:42:00 +03:00
Daniel Black
2e0a40bdf0 Deb: libcurl4 in bionic+/buster+
Otherwise fall back to libcurl3
2020-03-26 17:02:38 +02:00
Sergei Golubchik
fbfd4fafd4 autobake-deb.sh: include symlinks in the final listing 2020-03-24 02:39:32 +01:00
Sergei Golubchik
e4afd3c337 MDEV-22003 mysql_config disappeared from 10.5 (e.g. binary tarball or source build)
* generate and install mysql_config
* symlink mariadb_config (from C/C) to mariadb-config

also:
* .gitignore generated mariadb-config.1
* remove obsolete compiler flag from C/C
2020-03-24 02:39:32 +01:00
Sergei Golubchik
73edb6ffd4 Revert "MDEV-21303 Make executables MariaDB named"
This reverts commit 5d1b8f4152.

because since 306e439c6d manpages use troff aliases
instead of symlinks, so they should not be symlinked.
2020-03-24 02:39:32 +01:00
Sergei Golubchik
5d1b8f4152 MDEV-21303 Make executables MariaDB named
fix manpages in Debian
2020-03-21 20:20:29 +01:00
Rasmus Johansson
9e1b3af4a4 MDEV-21303 Make executables MariaDB named
To change all executables to have a mariadb name I had to:
- Do name changes in every CMakeLists.txt that produces executables
- CREATE_MARIADB_SYMLINK was removed and GET_SYMLINK added by Wlad to reuse the function in other places also
- The scripts/CMakeLists.txt could make use of GET_SYMLINK instead of introducing redundant code, but I thought I'll leave that for next release
- A lot of changes to debian/.install and debian/.links files due to swapping of real executable and symlink. I did not however change the name of the manpages, so the real name is still mysql there and mariadb are symlinks.
- The Windows part needed a change now when we made the executables mariadb -named. MSI (and ZIP) do not support symlinks and to not break backward compatibility we had to include mysql named binaries also. Done by Wlad
2020-03-21 20:20:29 +01:00
Otto Kekäläinen
41952c85f1 Travis-CI: Shorten deb build log to keep it under 4 MB
There is a 4 MB hard limit on Travis-CI and build output needs to be less
than that. Silencing the 'make install' step gets rid of a lot of
"Installing.." and "Missing.." and removing all mysql-test files will
make the dh_missing warnings much shorter.
2020-03-18 22:49:55 +02:00
Otto Kekäläinen
30b44aaec7 Deb: Fix executable bit so dh-exec works (regression in fd2dc9c3fd)
Package contents before this fix:

libmariadb-dev-compat
drwxr-xr-x root/root ./
drwxr-xr-x root/root ./usr/
drwxr-xr-x root/root ./usr/bin/
lrwxrwxrwx root/root ./usr/bin/mysql_config
drwxr-xr-x root/root ./usr/include/
lrwxrwxrwx root/root ./usr/include/mysql
drwxr-xr-x root/root ./usr/lib/
drwxr-xr-x root/root ./usr/lib/${DEB_HOST_MULTIARCH}/
drwxr-xr-x root/root ./usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/
lrwxrwxrwx root/root ./usr/lib/${DEB_HOST_MULTIARCH}/pkgconfig/mysqlclient.pc
drwxr-xr-x root/root ./usr/lib/x86_64-linux-gnu/
lrwxrwxrwx root/root ./usr/lib/x86_64-linux-gnu/libmysqlclient.a
lrwxrwxrwx root/root ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.a
lrwxrwxrwx root/root ./usr/lib/x86_64-linux-gnu/libmysqlclient_r.so
lrwxrwxrwx root/root ./usr/lib/x86_64-linux-gnu/libmysqlclient.so
drwxr-xr-x root/root ./usr/share/
drwxr-xr-x root/root ./usr/share/doc/
drwxr-xr-x root/root ./usr/share/doc/libmariadb-dev-compat/
-rw-r--r-- root/root ./usr/share/doc/libmariadb-dev-compat/changelog.gz
-rw-r--r-- root/root ./usr/share/doc/libmariadb-dev-compat/copyright

With this fix the '/usr/lib/${DEB_HOST_MULTIARCH}/' becomes correctly
populated with the actual architecture dependent path.

Also add dh-exec to Travis-CI testing so that CI passes.

As an extra small thing, clean away excess executable bit from Mroonga
plugin maintainer script that does not need it.
2020-03-18 22:49:55 +02:00
Otto Kekäläinen
0f8d6e3bd8 MDEV-21942: Correctly use newer libpcre2 version (regression in b6b6980)
If libpcre2 (10.x) is not defined and only the older libpcre3 (8.x)
would be available, the build would attempt to download it from the
Internet, violating many build environment restrictions.

Commit b6b6980686 attempted to fix
MDEV-21942 but was incomplete, and after in CI systems started
failing since the .travis.yml update was missing.
2020-03-18 22:49:55 +02:00
Vicențiu Ciorbaru
c235691d67 Merge branch '10.4' into 10.5 2020-03-18 22:44:41 +02:00
Vicențiu Ciorbaru
6a63457639 Merge branch '10.3' into 10.4 2020-03-18 22:15:21 +02:00
Vicențiu Ciorbaru
dd68db0c17 Change exec bit to allow dh-exec to work 2020-03-18 22:14:38 +02:00
Sergei Golubchik
b6b6980686 MDEV-21942 Building 10.5 requires Internet access
fix build requirements for debian
2020-03-16 01:13:01 +01:00
Oleksandr Byelkin
fad47df995 Merge branch '10.4' into 10.5 2020-03-11 17:52:49 +01:00
Oleksandr Byelkin
b7362d5fbc Merge branch '10.3' into 10.4 2020-03-11 14:28:24 +01:00
Oleksandr Byelkin
b8c0e49670 Merge commit '10.3' into 10.4 2020-03-11 13:27:10 +01:00
Otto Kekäläinen
e0e5d8c594 Deb: Update Debian packaging to include mytop and all new man pages
Related to MDEV-21769.
2020-03-10 07:53:33 +01:00
Vicențiu Ciorbaru
fd2dc9c3fd Correctly link mysqlclient.pc to mariadb.pc under multi-arch support 2020-03-08 16:19:43 +02:00
Vicențiu Ciorbaru
1d99e4d674 Merge branch '10.2' into 10.3 2020-03-08 11:02:55 +02:00
Daniel Black
6610532170 Update install layout to account for multi-arch setup
Cleanup install_layout to account for multi-arch setup and remove
redundant defines in debian rules.

Signed-off-by: Vicențiu Ciorbaru <vicentiu@mariadb.org>
2020-03-08 09:25:22 +02:00
Oleksandr Byelkin
440452628d Merge branch '10.2' into 10.3 2020-03-06 23:28:26 +01:00
Vicențiu Ciorbaru
c5c1027c6e MDEV-19208 mariadb.pc: install into libdir
The .pc file installed by mariadb mentions archful directories and
therefore must be archful itself.

This fixes MDEV-14340.
2020-03-05 10:53:16 +02:00
Otto Kekäläinen
f2832a010a MDEV-14918: Use sst_dump from package rocksdb-tools, don't build it
Since this tool is already shipped in the system, don't provide it from
MariaDB from 10.5 series onwards. It will potentially just create an
installation failure due to conflict if users install rocksdb-tools.

Package rocksdb-tools in Debian since Buster (10):
https://packages.debian.org/search?suite=buster&arch=any&mode=path&searchon=contents&keywords=sst_dump

Package rocksdb-tools in Ubuntu since Disco (19.04):
https://packages.ubuntu.com/search?suite=disco&arch=any&mode=exactfilename&searchon=contents&keywords=sst_dump

This change is adopted from Debian the change has been since Dec 18, 2018.
d50e2eaf1f
2020-03-05 09:11:49 +02:00