Commit graph

123 commits

Author SHA1 Message Date
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
Sergei Golubchik
60ea09eae6 Merge branch '10.2' into 10.3 2021-02-01 13:49:33 +01: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
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
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
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
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
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
699a43704b debian: remove gcc check. don't package rocksdb on x86_32 2020-08-08 14:04:14 +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
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
Sergei Golubchik
c2b12c554e build deb packages for columnstore 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
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
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
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
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
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
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
Oleksandr Byelkin
fad47df995 Merge branch '10.4' into 10.5 2020-03-11 17:52:49 +01:00
Oleksandr Byelkin
b8c0e49670 Merge commit '10.3' into 10.4 2020-03-11 13:27:10 +01: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
Otto Kekäläinen
1f0e72f874 Deb: Remove unnecessary manual libzstd1 dependency from RocksDB plugin
The Debian build tools add all run-time dependencies automatically. For the
mariadb-rocksdb-plugin the "${misc:Depends}, ${shlibs:Depends}" will become
(based on the build dependencies at build time):

  Depends: mariadb-server-10.4 (= 1:10.4.12-1), rocksdb-tools,
  libc6 (>= 2.29), liblz4-1 (>= 0.0~r130), libsnappy1v5 (>= 1.1.8),
  libstdc++6 (>= 7), libzstd1 (>= 1.3.3), zlib1g (>= 1:1.1.4)

There is no need to manually add run-time build dependencies. Only external
dependencies need to be defined, for example rocksdb-tools could come in
question for mariadb-plugin-rocksdb, and it will be eventually added when
downstream official Debian packaging is merged upstream in a later commit.
2020-02-13 20:47:23 +02:00
Sergei Golubchik
85bef794f7 MDEV-19780 Remove the TokuDB storage engine
disable tokudb, because it's being deprecated by the vendor
2019-08-24 16:19:49 +02:00
Monty
2faa7dcd5c Updated debian packages to 10.5 2019-05-23 01:20:17 +03:00
Oleksandr Byelkin
8cbb14ef5d Merge branch '10.1' into 10.2 2019-05-04 17:04:55 +02:00
Sergei Golubchik
2f9cd06da4 MDEV-18362 EPOCH=1 needs to be set for Ubuntu 18.10 cosmic builds
Apply dbart's patch to set epoch for all ubuntu releases starting
from bionic. Not only for bionic.

This works for Debian too (VERNUM=unstable, etc).
2019-04-24 16:06:54 +02:00
Marko Mäkelä
2a791c53ad Merge 10.3 into 10.4 2019-03-06 09:00:52 +02:00
Marko Mäkelä
a2fc36989e Merge 10.2 into 10.3 2019-03-04 17:01:00 +02:00
Sergei Golubchik
20043cf650 remove aws kms plugin from debian builds too 2019-03-01 12:40:43 -05:00
Sergei Golubchik
000c6cfc61 debian: more robust control file hacking
when deleting a package, delete up to the next empty line,
instead of relying on a package description being of
some fixed number of lines long
2019-03-01 12:40:43 -05:00
Oleksandr Byelkin
93ac7ae70f Merge branch '10.3' into 10.4 2019-02-21 14:40:52 +01:00
Oleksandr Byelkin
c8f9b3f915 remove aws-key management plugin 2019-02-20 08:44:08 +01:00
Sergei Golubchik
9b76e2843b Merge branch '10.3' into 10.4 2019-01-26 01:13:41 +01:00
Sergei Golubchik
3b1b665fcb Merge branch '10.2' into 10.3 2019-01-25 20:35:40 +01:00
Sergei Golubchik
d4515d1305 Deb: don't edit control file from inside rules file
It's too late. Might work or not (and on buster it doesn't).
2019-01-25 19:57:37 +01:00
Marko Mäkelä
734510a44d Merge 10.3 into 10.4 2019-01-06 17:43:02 +02:00
Sergei Golubchik
812bb1303c (still) Packaging is broken for debian-based systems
fix the AWS SDK build eligibility checks.

followup for 779151db80
2018-12-24 11:06:19 +01:00