The debian/mariabd-plugin-columnstore.install should
not have been committed. It was removed on other branches,
just 10.6 was missed. This prevented packages being built
because the debain/control wasn't populated.
Commit introduces automatic detection which supported
Perl MariaDB DBI driver is available:
* DBD::mysql
* DBD::MariaDB
If nothing is then bail out and die
Current Detection prefers Perl DBD:MariaDB driver.
This is mainly for older Linux distros or Windows which does not
have Perl DBD:MariaDB packaged or does not want to use Perl cpan command.
Suspend
national-encoding
repeated-path-segment
package-contains-documentation-outside-usr-share-doc
Package mariadb-test-data has test files
in directory '/usr/share/mysql/mysql-test/' which are not UTF-8
encoded and they should not be as they are for testing.
package also have Lintian warnings for files that
are not in correct place in directory 'usr/share/mysql/mysql-test'
but as they are all are test results they are not in incorrect place
At last there is intentional use for some repeated directories so
they are false-positives and should be suspended
This commit fixes a documentation installation
issue (for debian packaging) and generally brings
the installation control files up to date (as for
the rest of the components).
- Authentication is done using the Hashicorp Vault's token
authentication method;
- If additional client authentication is required, then the
path to the CA authentication bundle file may be passed
as a plugin parameter;
- The creation of the keys and their management is carried
out using the Hashicorp Vault KMS and their tools;
- Key values stored as hexadecimal strings;
- Key values caching is supported.
- Implemented a time-invalidated cache for key values and
for key version numbers received from the Hashicorp Valult
server;
- The plugin uses libcurl (https) as an interface to
the HashiCorp Vault server;
- JSON parsing is performed through the JSON service
(through the include/mysql/service_json.h);
- HashiCorp Vault 1.2.4 was used for development and testing.
Per man dh_missing, not-installed will exand wildcards
since debhelper 11.1. Since Stretch is on 10.2.5, this won't happen.
As columnstore is still only x86_64 we can use that in the file.
Put man3 pages in libmariadb-dev.install
Ignore /usr/share/mysql/*.jar because CI
environment inconsistent in the availablity of
java to compile parts.
Make the Debian build fail if it detects that the build (CMake) created
files that are not used in any package nor accounted in the special
not-installed file.
Stop creating symbolic links in Debian packaging for files that the CMake
build already created.
Document known cases of files that are intentionally not installed.
Leave the rest in the not-installed list for visibility. The list can
later be trimmed down and having the --fail-missing will prevent any new
unaccounted files from being introduced.
Note that despite extensive refactoring in the Debian packaging files,
there was no changes in the packages produced as verified by package
files lists before and after.
In addition to the binary .deb packages, also remove the version
string from the Debian source package.
Also clean away excess use of __MARIADB_MAJOR_VER__ constant
and add inline note that the whole debian-XX.X.flag file thing
should be removed and replaced by using the new MariaDB server
mysql_upgrade_info file.
Fixes issues like e.g.:
The following packages have unmet dependencies:
mariadb-client : Breaks: mariadb-client-core-10.9
Breaks: mariadb-server-10.9
mariadb-server-core : Breaks: mariadb-client-10.9
Breaks: mariadb-server-10.9
and
[ERROR] Missing Breaks/Replaces found
[ERROR] libmariadb-dev-compat conflicts with libmariadbclient-dev
files: {'/usr/bin/mysql_config'}
Upgrades from Debian 10 "Buster" directly to Debian 12 "Bookworm",
skipping Debian 11 "Bullseye", fail with apt erroring on:
libcrypt.so.1: cannot open shared object file
This is an intentional OpenSSL transition as described in
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=993755
Hence, clean away such tests.
Also other minor cleanups in salsa-ci.yml.
Switch to using bullseye-backports where buster-backports was used or
remove steps that only worked on buster-backports. For example the
Percona XtraDB Cluster 5.7 was available up until Buster but no longer
in Bullseye, so remove it.
Sort and organize the Debian packaging files.
Also revert 4d03269425 that was done in vain.
For the sake of CI we do want to have working upgrades from previous 10.9
releases and it is doable with another kind of fix in a later commit.
Debian script debian-start upgrades database (which can be huge)
and prints lots of unnecessary information (not errors). Add
'--silent' to only sport possible errors
Problem:
==============
By testing `pgrep` with `--ns` option,
introduced with MDEV-21331, commit fb7c1b9415,
I noted that:
a) `--ns` cannot use more than single PID.
b) `--ns` is returning the processes of the namespace to which supplied PID belongs to.
So by that sense command `pgrep -x --ns $$ mysqld` will always return an error and skip
checking of the existing PID of the server.
Solution:
==============
Suggested solution is to add `--nslist pid`, since `--ns` needs to know in which namespace type it should look for.
See `pgrep --help` for different namespace types.
Note also that this works *only* if script is run as a `root` (we have that case here).
Current PR is a part of:
1. MDEV-21331: sync preinst and postrm script
2. MDEV-15718: check for exact mysqld process
This commit:
a) fixes fb7c1b9415
b) Closes PR #2068 (obsolete)
c) Closes PR #2069 (obsolete)
Thanks Faustin Lammler <faustin@mariadb.org> for testing and verifying
Reviewed by <>
Add chinese language to missing sql/share/CMakeLists.txt that
results in installed files.
Also add bulgarian=bgn which has existing for a long time.
Sort both lists properly.
Append both to debian/mariadb-server-core-10.4 too.
Remove version suffix from Debian packages (for example mariadb-server-10.9)
because installing suffixed package removes older version
of package even if it's suffixed (for example mariadb-server-10.7)
This make also Debian package management easier in future MariaDB
version iterations because there is no need for stacking
Conlicts/Breaks/Replaces-parameters in every new major release
Remove unndeeded paths from mariadb-server-10.6.postinst as
it's already in export PATH and it fires 'command-with-path-in-maintainer-script'
in lintian checks
Rather than Debian logs containing a barely decipherable mix
of build command and the output of some other command, we
use the make option --output-sync=target. This make the compile
line and the output stay together in the output stream.
This option exists even in the make version in debian;stretch
so should work everywhere.
Test on debian:stretch, ubuntu:18.04, the two lowest version that
use the debian/rules.
Add compression plugins:
* bzip2
* lz4
* lzma
* lzo
* snappy
To Autopkg's basic smoke-test dependencies.
Also make sure that MariaDB service is reloaded
when smoke-test is executed.
As MariaDB 10.5 has been removed from Debian Sid and MariaDB 10.6 has
entered it, the Salsa-CI testing needs to adapt.
To achieve this, essentially sync most the the salsa-ci.yml contents from
https://salsa.debian.org/mariadb-team/mariadb-server/-/tree/debian/latest
This includes removing Stretch builds, as Stretch does not support uring
nor pmem libraries, which MariaDB 10.6 depends on.
Also add a couple Lintian overrides to make Salsa-CI pass.
NOTE TO MERGERS: This commit is made on 10.6 branch and can be merged to
all later branches (10.7, 10.8, 10.9..) for now, but later somebody needs
to go in and update all the testing stages to do the upgrade testing
correctly for 10.6->10.7->10.8->10.9 etc.