diff options
author | Otto Kekäläinen <otto@kekalainen.net> | 2020-02-24 23:32:13 +0200 |
---|---|---|
committer | Otto Kekäläinen <otto@kekalainen.net> | 2020-03-05 09:11:49 +0200 |
commit | f2832a010a4ab0ba1cd47cc378338731bf659328 (patch) | |
tree | 048303ad0a3df8d5356d5ba596ae66315252d5ed | |
parent | b464b999c9435b45c6dd4337fe940027273b5b43 (diff) | |
download | mariadb-git-f2832a010a4ab0ba1cd47cc378338731bf659328.tar.gz |
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.
https://salsa.debian.org/mariadb-team/mariadb-10.3/-/commit/d50e2eaf1fad46c494bd0f090b0e75c19ac3f41a
-rwxr-xr-x | debian/autobake-deb.sh | 12 | ||||
-rw-r--r-- | debian/control | 1 | ||||
-rw-r--r-- | debian/mariadb-plugin-rocksdb.install | 1 | ||||
-rw-r--r-- | debian/not-installed | 1 |
4 files changed, 13 insertions, 2 deletions
diff --git a/debian/autobake-deb.sh b/debian/autobake-deb.sh index 8b70e784615..26a00c541c1 100755 --- a/debian/autobake-deb.sh +++ b/debian/autobake-deb.sh @@ -73,13 +73,23 @@ then fi # If libzstd-dev is not available (before Debian Stretch and Ubuntu Xenial) -# remove the dependency from server and rocksdb so it can build properly +# remove the dependency from server and RocksDB so it can build properly if ! apt-cache madison libzstd-dev | grep 'libzstd-dev' >/dev/null 2>&1 then sed '/libzstd-dev/d' -i debian/control sed '/libzstd1/d' -i debian/control fi +# If rocksdb-tools is not available (before Debian Buster and Ubuntu Disco) +# remove the dependency from the RocksDB plugin so it can install properly +# and instead ship the one built from MariaDB sources +if ! apt-cache madison rocksdb-tools | grep 'rocksdb-tools' >/dev/null 2>&1 +then + sed '/rocksdb-tools/d' -i debian/control + sed '/sst_dump/d' -i debian/not-installed + echo "usr/bin/sst_dump" >> debian/mariadb-plugin-rocksdb.install +fi + # The binaries should be fully hardened by default. However TokuDB compilation seems to fail on # Debian Jessie and older and on Ubuntu Xenial and older with the following error message: # /usr/bin/ld.bfd.real: /tmp/ccOIwjFo.ltrans0.ltrans.o: relocation R_X86_64_PC32 against symbol diff --git a/debian/control b/debian/control index 08c9a92210b..62476161363 100644 --- a/debian/control +++ b/debian/control @@ -584,6 +584,7 @@ Description: Connect storage engine for MariaDB Package: mariadb-plugin-rocksdb Architecture: amd64 arm64 mips64el ppc64el Depends: mariadb-server-10.5 (= ${binary:Version}), + rocksdb-tools, ${misc:Depends}, ${shlibs:Depends} Breaks: mariadb-rocksdb-engine-10.2, diff --git a/debian/mariadb-plugin-rocksdb.install b/debian/mariadb-plugin-rocksdb.install index 3e6e3d4b00e..1a15effa5ff 100644 --- a/debian/mariadb-plugin-rocksdb.install +++ b/debian/mariadb-plugin-rocksdb.install @@ -1,7 +1,6 @@ etc/mysql/conf.d/rocksdb.cnf etc/mysql/mariadb.conf.d usr/bin/myrocks_hotbackup usr/bin/mysql_ldb -usr/bin/sst_dump usr/lib/mysql/plugin/ha_rocksdb.so usr/share/man/man1/mariadb-ldb.1 usr/share/man/man1/mysql_ldb.1 diff --git a/debian/not-installed b/debian/not-installed index 7e42735b03c..c95954a90ef 100644 --- a/debian/not-installed +++ b/debian/not-installed @@ -3,6 +3,7 @@ lib/systemd/system/mariadb@.service # Installed by rules file usr/bin/mysql_config # We already have the MariaDB variant usr/bin/mysql_embedded # Huge 500 MB file. Not intended for distribution via any disto package. usr/bin/mytop # Mytop is distributed from a separate source package +usr/bin/sst_dump # Use the one from rocksdb-tools package usr/lib/sysusers.d/sysusers.conf usr/lib/tmpfiles.d/tmpfiles.conf usr/lib/mysql/plugin/JavaWrappers.jar # These are only built if JNI/libjawt.so is installed from e.g. openjdk-8-jre-headless |