Rebase to 10.1.24

Build dependecies Bison and Libarchive added, others corrected
Disabling Mroonga engine for i686 architecture, as it is not supported by MariaDB
Removed patches: (fixed by upstream)
   Patch5:  %{pkgnamepatch}-file-contents.patch
   Patch14: %{pkgnamepatch}-example-config-files.patch
   Patch31: %{pkgnamepatch}-string-overflow.patch
   Patch32: %{pkgnamepatch}-basedir.patch
   Patch41: %{pkgnamepatch}-galera-new-cluster-help.patch

Skipped tests list updated
Bigger READMEs update (made by upstream)

Resolves: rhbz#1414387
  CVE-2017-3313
Resolves partly: rhbz#1443408
  CVE-2017-3308 CVE-2017-3309 CVE-2017-3453 CVE-2017-3456 CVE-2017-3464
This commit is contained in:
Michal Schorm 2017-05-24 11:25:52 +02:00
parent 7998c8ef3a
commit 789b0094ed
11 changed files with 154 additions and 239 deletions

View File

@ -1,16 +0,0 @@
Don't guess basedir in mysql_config; we place it under _libdir because
of multilib conflicts, so use rather configured @prefix@ path directly.
diff -up mariadb-10.0.13/scripts/mysql_config.sh.patch32 mariadb-10.0.13/scripts/mysql_config.sh
--- mariadb-10.0.13/scripts/mysql_config.sh.patch32 2014-08-13 17:28:51.174776518 +0200
+++ mariadb-10.0.13/scripts/mysql_config.sh 2014-08-13 17:32:18.205275028 +0200
@@ -76,8 +76,7 @@ get_full_path ()
me=`get_full_path $0`
-# Script might have been renamed but assume mysql_<something>config<something>
-basedir=`echo $me | sed -e 's;/bin/mysql_.*config.*;;'`
+basedir='@prefix@'
ldata='@localstatedir@'
execdir='@libexecdir@'

View File

@ -1,56 +0,0 @@
diff -Naurp mariadb-10.1.19/support-files/my-huge.cnf.sh mariadb-10.1.19-patched/support-files/my-huge.cnf.sh
--- mariadb-10.1.19/support-files/my-huge.cnf.sh 2016-11-04 12:15:54.000000000 +0100
+++ mariadb-10.1.19-patched/support-files/my-huge.cnf.sh 2016-12-02 10:29:41.111798361 +0100
@@ -25,6 +25,7 @@ socket = @MYSQL_UNIX_ADDR@
# The MySQL server
[mysqld]
+log-error = @LOG_LOCATION@
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
skip-external-locking
diff -Naurp mariadb-10.1.19/support-files/my-innodb-heavy-4G.cnf.sh mariadb-10.1.19-patched/support-files/my-innodb-heavy-4G.cnf.sh
--- mariadb-10.1.19/support-files/my-innodb-heavy-4G.cnf.sh 2016-11-04 12:15:54.000000000 +0100
+++ mariadb-10.1.19-patched/support-files/my-innodb-heavy-4G.cnf.sh 2016-12-02 10:30:07.647805999 +0100
@@ -42,7 +42,7 @@ socket = @MYSQL_UNIX_ADDR@
# The MariaDB server
#
[mysqld]
-
+log-error = @LOG_LOCATION@
# generic configuration options
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
diff -Naurp mariadb-10.1.19/support-files/my-large.cnf.sh mariadb-10.1.19-patched/support-files/my-large.cnf.sh
--- mariadb-10.1.19/support-files/my-large.cnf.sh 2016-11-04 12:15:54.000000000 +0100
+++ mariadb-10.1.19-patched/support-files/my-large.cnf.sh 2016-12-02 10:30:14.744806845 +0100
@@ -25,6 +25,7 @@ socket = @MYSQL_UNIX_ADDR@
# The MariaDB server
[mysqld]
+log-error = @LOG_LOCATION@
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
skip-external-locking
diff -Naurp mariadb-10.1.19/support-files/my-medium.cnf.sh mariadb-10.1.19-patched/support-files/my-medium.cnf.sh
--- mariadb-10.1.19/support-files/my-medium.cnf.sh 2016-11-04 12:15:54.000000000 +0100
+++ mariadb-10.1.19-patched/support-files/my-medium.cnf.sh 2016-12-02 10:30:21.726807677 +0100
@@ -26,6 +26,7 @@ socket = @MYSQL_UNIX_ADDR@
# The MariaDB server
[mysqld]
+log-error = @LOG_LOCATION@
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
skip-external-locking
diff -Naurp mariadb-10.1.19/support-files/my-small.cnf.sh mariadb-10.1.19-patched/support-files/my-small.cnf.sh
--- mariadb-10.1.19/support-files/my-small.cnf.sh 2016-11-04 12:15:54.000000000 +0100
+++ mariadb-10.1.19-patched/support-files/my-small.cnf.sh 2016-12-02 10:30:27.988808423 +0100
@@ -24,6 +24,7 @@ socket = @MYSQL_UNIX_ADDR@
# The MySQL server
[mysqld]
+log-error = @LOG_LOCATION@
port = @MYSQL_TCP_PORT@
socket = @MYSQL_UNIX_ADDR@
skip-external-locking

View File

@ -1,45 +0,0 @@
Upstream chooses to install INFO_SRC and INFO_BIN into the docs dir, which
breaks at least two packaging commandments, so we put them into $libdir
instead. That means we have to hack the file_contents regression test
to know about this.
Recommendation they change is at http://bugs.mysql.com/bug.php?id=61425
diff -rup mariadb-10.1.8.orig/mysql-test/t/file_contents.test mariadb-10.1.8/mysql-test/t/file_contents.test
--- mariadb-10.1.8.orig/mysql-test/t/file_contents.test 2015-10-15 17:43:44.000000000 +0200
+++ mariadb-10.1.8/mysql-test/t/file_contents.test 2015-10-19 13:54:53.505550439 +0200
@@ -11,7 +11,7 @@
--perl
print "\nChecking 'INFO_SRC' and 'INFO_BIN'\n";
$dir_bin = $ENV{'MYSQL_BINDIR'};
-if ($dir_bin eq '/usr/') {
+if ($dir_bin =~ '.*/usr/$') {
# RPM package
$dir_docs = $dir_bin;
$dir_docs =~ s|/lib|/share/doc|;
@@ -22,7 +22,7 @@ if ($dir_bin eq '/usr/') {
# RedHat: version number in directory name
$dir_docs = glob "$dir_docs/MariaDB-server*";
}
-} elsif ($dir_bin eq '/usr') {
+} elsif ($dir_bin =~ '.*/usr$') {
# RPM build during development
$dir_docs = "$dir_bin/share/doc";
if(-d "$dir_docs/packages") {
@@ -32,6 +32,15 @@ if ($dir_bin eq '/usr/') {
# RedHat/Debian: version number in directory name
$dir_docs = glob "$dir_docs/mariadb-server-*";
$dir_docs = glob "$dir_docs/MariaDB-server*" unless -d $dir_docs;
+
+ # All the above is entirely wacko, because these files are not docs;
+ # they should be kept in libdir instead. mtr does not provide a nice
+ # way to find libdir though, so we have to kluge it like this:
+ if (-d "$dir_bin/lib64/mysql") {
+ $dir_docs = "$dir_bin/lib64/mysql";
+ } else {
+ $dir_docs = "$dir_bin/lib/mysql";
+ }
}
# Slackware
$dir_docs = glob "$dir_bin/doc/mariadb-[0-9]*" unless -d $dir_docs;

View File

@ -1,25 +0,0 @@
--- mariadb-10.1.14/scripts/galera_new_cluster.sh.orig 2016-05-11 18:51:13.797926130 +0200
+++ mariadb-10.1.14/scripts/galera_new_cluster.sh 2016-05-11 19:19:41.195591769 +0200
@@ -5,6 +5,22 @@
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
+if [ "${1}" == "-h" -o "${1}" == "--help" ]; then
+ cat <<EOF
+
+Usage: ${0}
+
+ The script galera_new_cluster is used to bootstrap new Galera Cluster,
+ when all the nodes are down. Run galera_new_cluster on the first node only.
+ On the remaing nodes simply run 'service @DAEMON_NAME@ start'.
+
+ For more information on Galera Cluster configuration and usage see:
+ https://mariadb.com/kb/en/mariadb/getting-started-with-mariadb-galera-cluster/
+
+EOF
+ exit 0
+fi
+
VERSION="@VERSION@@MYSQL_SERVER_SUFFIX@"
COMPILATION_COMMENT="@COMPILATION_COMMENT@"

View File

@ -21,10 +21,8 @@ Update 3/2017
during flushing, the operation is not atomic. during flushing, the operation is not atomic.
We should not ship it in that state We should not ship it in that state
--- mariadb-10.1.23/support-files/mysql-log-rotate.sh 2017-05-18 08:33:01.000000000 +0200
diff -up mariadb-10.0.10/support-files/mysql-log-rotate.sh.p5 mariadb-10.0.10/support-files/mysql-log-rotate.sh +++ mariadb-10.1.23/support-files/mysql-log-rotate.sh.patched 2017-05-24 11:54:33.686860390 +0200
--- mariadb-10.0.10/support-files/mysql-log-rotate.sh.p5 2014-03-30 19:56:53.000000000 +0200
+++ mariadb-10.0.10/support-files/mysql-log-rotate.sh 2014-04-07 16:30:11.264618655 +0200
@@ -1,9 +1,9 @@ @@ -1,9 +1,9 @@
# This logname can be set in /etc/my.cnf # This logname can be set in /etc/my.cnf
-# by setting the variable "err-log" -# by setting the variable "err-log"
@ -39,7 +37,7 @@ diff -up mariadb-10.0.10/support-files/mysql-log-rotate.sh.p5 mariadb-10.0.10/su
# #
# If the root user has a password you have to create a # If the root user has a password you have to create a
# /root/.my.cnf configuration file with the following # /root/.my.cnf configuration file with the following
@@ -18,19 +18,21 @@ @@ -18,20 +18,22 @@
# ATTENTION: This /root/.my.cnf should be readable ONLY # ATTENTION: This /root/.my.cnf should be readable ONLY
# for root ! # for root !
@ -55,25 +53,27 @@ diff -up mariadb-10.0.10/support-files/mysql-log-rotate.sh.p5 mariadb-10.0.10/su
- if test -x @bindir@/mysqladmin && \ - if test -x @bindir@/mysqladmin && \
- @bindir@/mysqladmin ping &>/dev/null - @bindir@/mysqladmin ping &>/dev/null
- then - then
- @bindir@/mysqladmin flush-logs - @bindir@/mysqladmin --local flush-error-log \
- flush-engine-log flush-general-log flush-slow-log
- fi - fi
- endscript - endscript
-} -}
+# Then, un-comment the following lines to enable rotation of mysql's log file: +# Then, un-comment the following lines to enable rotation of mysql's log file:
+ +#@LOG_LOCATION@/mysqld.log {
+#@LOG_LOCATION@ { +# create 600 mysql mysql
+# create 640 mysql mysql
+# notifempty +# notifempty
+# daily +# daily
+# rotate 3 +# rotate 3
+# missingok +# missingok
+# compress +# compress
+# postrotate +# postrotate
+# # just if mysqld is really running +# # just if mysqld is really running
+# if test -x @bindir@/mysqladmin && \ +# if test -x @bindir@/mysqladmin && \
+# @bindir@/mysqladmin ping &>/dev/null +# @bindir@/mysqladmin ping &>/dev/null
+# then +# then
+# @bindir@/mysqladmin flush-logs +# @bindir@/mysqladmin --local flush-error-log \
+# fi +# flush-engine-log flush-general-log flush-slow-log
+# fi
+# endscript +# endscript
+#} +#}
+

View File

@ -35,4 +35,5 @@
+ ENDFOREACH() + ENDFOREACH()
ENDIF() ENDIF()
# Configure two scripts from one 'in' file. # Install libgcc as mylibgcc.a

View File

@ -1,22 +0,0 @@
These issues were found by Coverity static analysis tool, for more info
see messages by particular fixes (messages belong to 5.1.61).
Filed upstream at http://bugs.mysql.com/bug.php?id=64631
Error: BUFFER_SIZE_WARNING:
/builddir/build/BUILD/mysql-5.1.61/sql/sql_prepare.cc:2749: buffer_size_warning: Calling strncpy with a maximum size argument of 512 bytes on destination array "this->stmt->last_error" of size 512 bytes might leave the destination string unterminated.
diff -up mariadb-10.0.10/sql/sql_prepare.cc.p8 mariadb-10.0.10/sql/sql_prepare.cc
--- mariadb-10.0.10/sql/sql_prepare.cc.p8 2014-03-30 19:56:42.000000000 +0200
+++ mariadb-10.0.10/sql/sql_prepare.cc 2014-04-07 18:43:33.901074770 +0200
@@ -3021,7 +3021,7 @@ void mysql_stmt_get_longdata(THD *thd, c
{
stmt->state= Query_arena::STMT_ERROR;
stmt->last_errno= thd->get_stmt_da()->sql_errno();
- strncpy(stmt->last_error, thd->get_stmt_da()->message(), MYSQL_ERRMSG_SIZE);
+ strncpy(stmt->last_error, thd->get_stmt_da()->message(), sizeof(stmt->last_error)-1);
}
thd->set_stmt_da(save_stmt_da);

View File

@ -3,9 +3,6 @@
%global pkgnamepatch mariadb %global pkgnamepatch mariadb
# Regression tests may take a long time (many cores recommended), skip them by # Regression tests may take a long time (many cores recommended), skip them by
# passing --nocheck to rpmbuild or by setting runselftest to 0 if defining
# --nocheck is not possible (e.g. in koji build)
#TODO: enable
%{!?runselftest:%global runselftest 1} %{!?runselftest:%global runselftest 1}
# Set this to 1 to see which tests fail, but 0 on production ready build # Set this to 1 to see which tests fail, but 0 on production ready build
@ -22,17 +19,20 @@
# Turn that off to ensure such files don't get included in RPMs (cf bz#884755). # Turn that off to ensure such files don't get included in RPMs (cf bz#884755).
%global _default_patch_flags --no-backup-if-mismatch %global _default_patch_flags --no-backup-if-mismatch
# TokuDB engine is now part of MariaDB, but it is available only for x86_64; # TokuDB engine
# variable tokudb allows to build with TokuDB storage engine # https://mariadb.com/kb/en/mariadb/tokudb/
# TokuDB engine is available only for x86_64
%ifarch x86_64 %ifarch x86_64
%bcond_without tokudb %bcond_without tokudb
%else %else
%bcond_with tokudb %bcond_with tokudb
%endif %endif
# Mroonga engine is now part of MariaDB, but it only builds for x86_64; # Mroonga engine
# variable mroonga allows to build with Mroonga storage engine # https://mariadb.com/kb/en/mariadb/about-mroonga/
%ifarch x86_64 i686 # Actual version in MariaDB, 5.04, only supports the x86_64
# Mroonga upstream warns about using 32-bit package: http://mroonga.org/docs/install.html
%ifarch x86_64
%bcond_without mroonga %bcond_without mroonga
%else %else
%bcond_with mroonga %bcond_with mroonga
@ -80,7 +80,7 @@
# MariaDB 10.0 and later requires pcre >= 8.35, otherwise we need to use # MariaDB 10.0 and later requires pcre >= 8.35, otherwise we need to use
# the bundled library, since the package cannot be build with older version # the bundled library, since the package cannot be build with older version
%global pcre_version 8.39 %global pcre_version 8.40
%if 0%{?fedora} >= 21 %if 0%{?fedora} >= 21
%bcond_without pcre %bcond_without pcre
%else %else
@ -118,11 +118,11 @@
# Make long macros shorter # Make long macros shorter
%global sameevr %{epoch}:%{version}-%{release} %global sameevr %{epoch}:%{version}-%{release}
%global compatver 10.1 %global compatver 10.1
%global bugfixver 21 %global bugfixver 24
Name: mariadb Name: mariadb
Version: %{compatver}.%{bugfixver} Version: %{compatver}.%{bugfixver}
Release: 5%{?with_debug:.debug}%{?dist} Release: 1%{?with_debug:.debug}%{?dist}
Epoch: 3 Epoch: 3
Summary: A community developed branch of MySQL Summary: A community developed branch of MySQL
@ -154,6 +154,8 @@ Source52: rh-skipped-tests-ppc-s390.list
# General upstream response was slightly positive # General upstream response was slightly positive
Source70: clustercheck.sh Source70: clustercheck.sh
Source71: LICENSE.clustercheck Source71: LICENSE.clustercheck
# Upstream said: "Generally MariaDB has more allows to allow for xtradb sst mechanism".
# https://jira.mariadb.org/browse/MDEV-12646
Source72: mariadb-server-galera.te Source72: mariadb-server-galera.te
# Patch2: testsuite README update, introducing skipped-tests.list # Patch2: testsuite README update, introducing skipped-tests.list
@ -162,7 +164,6 @@ Patch2: %{pkgnamepatch}-install-test.patch
# Patch4: Red Hat distributions specific logrotate fix # Patch4: Red Hat distributions specific logrotate fix
# it would be big unexpected change, if we start shipping it now. Better wait for MariaDB 10.2 # it would be big unexpected change, if we start shipping it now. Better wait for MariaDB 10.2
Patch4: %{pkgnamepatch}-logrotate.patch Patch4: %{pkgnamepatch}-logrotate.patch
Patch5: %{pkgnamepatch}-file-contents.patch
# Patch7: add to the CMake file all files where we want macros to be expanded # Patch7: add to the CMake file all files where we want macros to be expanded
Patch7: %{pkgnamepatch}-scripts.patch Patch7: %{pkgnamepatch}-scripts.patch
# Patch8: resolve conflict, when we combine MariaDB and MySQL packages # Patch8: resolve conflict, when we combine MariaDB and MySQL packages
@ -171,13 +172,8 @@ Patch8: %{pkgnamepatch}-install-db-sharedir.patch
Patch9: %{pkgnamepatch}-ownsetup.patch Patch9: %{pkgnamepatch}-ownsetup.patch
# Patch13: patch of test of ssl cypher unsupported in Fedora # Patch13: patch of test of ssl cypher unsupported in Fedora
Patch13: %{pkgnamepatch}-ssl-cypher.patch Patch13: %{pkgnamepatch}-ssl-cypher.patch
Patch14: %{pkgnamepatch}-example-config-files.patch
# Patches specific for this mysql package # Patches specific for this mysql package
# Patch31:
# TODO: I should run covscan again
Patch31: %{pkgnamepatch}-string-overflow.patch
Patch32: %{pkgnamepatch}-basedir.patch
# Patch34: # Patch34:
# TODO: I should run covscan again # TODO: I should run covscan again
Patch34: %{pkgnamepatch}-covscan-stroverflow.patch Patch34: %{pkgnamepatch}-covscan-stroverflow.patch
@ -186,9 +182,8 @@ Patch37: %{pkgnamepatch}-notestdb.patch
# Patches for galera # Patches for galera
Patch40: %{pkgnamepatch}-galera.cnf.patch Patch40: %{pkgnamepatch}-galera.cnf.patch
Patch41: %{pkgnamepatch}-galera-new-cluster-help.patch
BuildRequires: cmake BuildRequires: cmake gcc-c++
BuildRequires: libaio-devel BuildRequires: libaio-devel
BuildRequires: libedit-devel BuildRequires: libedit-devel
BuildRequires: ncurses-devel BuildRequires: ncurses-devel
@ -197,11 +192,17 @@ BuildRequires: zlib-devel
BuildRequires: multilib-rpm-config BuildRequires: multilib-rpm-config
BuildRequires: krb5-devel BuildRequires: krb5-devel
BuildRequires: selinux-policy-devel BuildRequires: selinux-policy-devel
BuildRequires: jemalloc-devel
%{?with_init_systemd:BuildRequires: systemd systemd-devel} %{?with_init_systemd:BuildRequires: systemd systemd-devel}
# Sphinx storage engine
BuildRequires: sphinx libsphinxclient libsphinxclient-devel
# Bison SQL parser
BuildRequires: bison bison-devel
# Jemalloc
BuildRequires: jemalloc-devel
# Cracklib plugin # Cracklib plugin
BuildRequires: cracklib-dicts cracklib-devel BuildRequires: cracklib-dicts cracklib-devel
BuildRequires: cracklib-dicts # Mariabackup
BuildRequires: libarchive libarchive-devel
# auth_pam.so plugin will be build if pam-devel is installed # auth_pam.so plugin will be build if pam-devel is installed
BuildRequires: pam-devel BuildRequires: pam-devel
# use either new enough version of pcre or provide bundles(pcre) # use either new enough version of pcre or provide bundles(pcre)
@ -229,6 +230,7 @@ BuildRequires: perl(Test::More)
BuildRequires: perl(Time::HiRes) BuildRequires: perl(Time::HiRes)
BuildRequires: perl(Symbol) BuildRequires: perl(Symbol)
# Temporary workaound to build with OpenSSL 1.0 on Fedora >=26 (wich requires OpenSSL 1.1) # Temporary workaound to build with OpenSSL 1.0 on Fedora >=26 (wich requires OpenSSL 1.1)
# https://jira.mariadb.org/browse/MDEV-10332
%if 0%{?fedora} >= 26 %if 0%{?fedora} >= 26
BuildRequires: compat-openssl10-devel BuildRequires: compat-openssl10-devel
Requires: compat-openssl10 Requires: compat-openssl10
@ -239,7 +241,6 @@ Requires: openssl
%endif %endif
Requires: bash coreutils grep Requires: bash coreutils grep
Requires: jemalloc
Requires: %{name}-common%{?_isa} = %{sameevr} Requires: %{name}-common%{?_isa} = %{sameevr}
# Explicit EVR requirement for -libs is needed for RHBZ#1406320 # Explicit EVR requirement for -libs is needed for RHBZ#1406320
@ -396,6 +397,16 @@ Requires: %{_sysconfdir}/my.cnf
Requires: %{_sysconfdir}/my.cnf.d Requires: %{_sysconfdir}/my.cnf.d
Requires: coreutils Requires: coreutils
Requires(pre): /usr/sbin/useradd Requires(pre): /usr/sbin/useradd
# Sphinx storage engine
Recommends: sphinx libsphinxclient
# Bison SQL parser
Requires: bison
# Cracklib plugin:
Recommends: cracklib-dicts
# Mariabackup tool
Recommends: libarchive
# Jemalloc
Requires: jemalloc
%if %{with init_systemd} %if %{with init_systemd}
# We require this to be present for %%{_tmpfilesdir} # We require this to be present for %%{_tmpfilesdir}
Requires: systemd Requires: systemd
@ -599,18 +610,13 @@ MariaDB is a community developed branch of MySQL.
%patch2 -p1 %patch2 -p1
%patch4 -p1 %patch4 -p1
%patch5 -p1
%patch7 -p1 %patch7 -p1
%patch8 -p1 %patch8 -p1
%patch9 -p1 %patch9 -p1
%patch13 -p1 %patch13 -p1
%patch14 -p1
%patch31 -p1
%patch32 -p1
%patch34 -p1 %patch34 -p1
%patch37 -p1 %patch37 -p1
%patch40 -p1 %patch40 -p1
%patch41 -p1
# workaround for upstream bug #56342 # workaround for upstream bug #56342
rm mysql-test/t/ssl_8k_key-master.opt rm mysql-test/t/ssl_8k_key-master.opt
@ -650,11 +656,7 @@ then
fi fi
} }
# Fix for RHBZ #1395127 - part "The -Werror option in Percona directory prevents MariaDB to be compiled on x86_64 arch" from comment 4
# Upstream: https://jira.mariadb.org/browse/MDEV-11965
%ifarch x86_64
sed -i s/-Werror//g storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake
%endif
%build %build
@ -680,11 +682,6 @@ CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O1|g" `
%ifarch ppc64 %ifarch ppc64
CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O3|g" ` CFLAGS=`echo $CFLAGS| sed -e "s|-O2|-O3|g" `
%endif %endif
# -Werror break rawhide(F26) build on x86_64
%ifarch x86_64
CFLAGS=`echo $CFLAGS| sed -e "s|-Werror=format-security||g" `
CFLAGS=`echo $CFLAGS| sed -e "s|-Wall||g" `
%endif
CXXFLAGS="$CFLAGS" CXXFLAGS="$CFLAGS"
export CFLAGS CXXFLAGS export CFLAGS CXXFLAGS
@ -740,6 +737,8 @@ export LDFLAGS
make %{?_smp_mflags} VERBOSE=1 make %{?_smp_mflags} VERBOSE=1
# debuginfo extraction scripts fail to find source files in their real # debuginfo extraction scripts fail to find source files in their real
# location -- satisfy them by copying these files into location, which # location -- satisfy them by copying these files into location, which
# is expected by scripts # is expected by scripts
@ -790,7 +789,6 @@ mv %{buildroot}/%{_datadir}/pkgconfig/*.pc %{buildroot}/%{_libdir}/pkgconfig
# but that's pretty wacko --- see also %%{name}-file-contents.patch) # but that's pretty wacko --- see also %%{name}-file-contents.patch)
install -p -m 644 Docs/INFO_SRC %{buildroot}%{_libdir}/mysql/ install -p -m 644 Docs/INFO_SRC %{buildroot}%{_libdir}/mysql/
install -p -m 644 Docs/INFO_BIN %{buildroot}%{_libdir}/mysql/ install -p -m 644 Docs/INFO_BIN %{buildroot}%{_libdir}/mysql/
rm -r %{buildroot}%{_datadir}/doc/%{_pkgdocdirname}/MariaDB-server-%{version}/
mkdir -p %{buildroot}%{logfiledir} mkdir -p %{buildroot}%{logfiledir}
chmod 0750 %{buildroot}%{logfiledir} chmod 0750 %{buildroot}%{logfiledir}
@ -946,10 +944,13 @@ rm %{buildroot}%{_sysconfdir}/my.cnf.d/oqgraph.cnf
%if %{without tokudb} %if %{without tokudb}
%ifarch x86_64 %ifarch x86_64
rm %{buildroot}%{_bindir}/tokuftdump
rm %{buildroot}%{_bindir}/tokuft_logprint
%endif
# because upstream ships manpages for tokudb even on architectures that tokudb doesn't support
rm %{buildroot}%{_mandir}/man1/tokuftdump.1* rm %{buildroot}%{_mandir}/man1/tokuftdump.1*
rm %{buildroot}%{_mandir}/man1/tokuft_logdump.1* rm %{buildroot}%{_mandir}/man1/tokuft_logdump.1*
%endif %endif
%endif
%if %{without config} %if %{without config}
rm %{buildroot}%{_sysconfdir}/my.cnf rm %{buildroot}%{_sysconfdir}/my.cnf
@ -998,6 +999,7 @@ export MTR_BUILD_THREAD=%{__isa_bits}
# Failing test debug 02/14/17 # Failing test debug 02/14/17
# --do-test=mysql_client_test_nonblock \ # --do-test=mysql_client_test_nonblock \
# --skip-rpl
( (
set -e set -e
@ -1012,6 +1014,7 @@ export MTR_BUILD_THREAD=%{__isa_bits}
--skip-test-list=unstable-tests --skip-test-list=unstable-tests
%endif %endif
# cmake build scripts will install the var cruft if left alone :-( # cmake build scripts will install the var cruft if left alone :-(
# TODO: test again
rm -r var rm -r var
) )
%endif %endif
@ -1134,9 +1137,9 @@ fi
%if %{with common} %if %{with common}
%files common %files common
%license COPYING COPYING.LESSER
%license storage/innobase/COPYING.Percona storage/innobase/COPYING.Google
%doc README README.mysql-license README.mysql-docs %doc README README.mysql-license README.mysql-docs
%doc %{_datadir}/doc/%{_pkgdocdirname}
%dir %{_libdir}/mysql %dir %{_libdir}/mysql
%dir %{_libdir}/mysql/plugin %dir %{_libdir}/mysql/plugin
%dir %{_datadir}/%{pkg_name} %dir %{_datadir}/%{pkg_name}
@ -1196,7 +1199,9 @@ fi
%{_bindir}/aria_ftdump %{_bindir}/aria_ftdump
%{_bindir}/aria_pack %{_bindir}/aria_pack
%{_bindir}/aria_read_log %{_bindir}/aria_read_log
%{_bindir}/mariabackup
%{_bindir}/mariadb-service-convert %{_bindir}/mariadb-service-convert
%{_bindir}/mbstream
%{_bindir}/myisamchk %{_bindir}/myisamchk
%{_bindir}/myisam_ftdump %{_bindir}/myisam_ftdump
%{_bindir}/myisamlog %{_bindir}/myisamlog
@ -1211,6 +1216,7 @@ fi
%{_bindir}/resolve_stack_dump %{_bindir}/resolve_stack_dump
%{_bindir}/resolveip %{_bindir}/resolveip
%{_bindir}/wsrep_sst_common %{_bindir}/wsrep_sst_common
%{_bindir}/wsrep_sst_mariabackup
%{_bindir}/wsrep_sst_mysqldump %{_bindir}/wsrep_sst_mysqldump
%{_bindir}/wsrep_sst_rsync %{_bindir}/wsrep_sst_rsync
%{_bindir}/wsrep_sst_xtrabackup %{_bindir}/wsrep_sst_xtrabackup
@ -1221,9 +1227,8 @@ fi
%config(noreplace) %{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf %config(noreplace) %{_sysconfdir}/my.cnf.d/%{pkg_name}-server.cnf
%config(noreplace) %{_sysconfdir}/my.cnf.d/auth_gssapi.cnf %config(noreplace) %{_sysconfdir}/my.cnf.d/auth_gssapi.cnf
%{?with_tokudb:%config(noreplace) %{_sysconfdir}/my.cnf.d/tokudb.cnf} %{?with_tokudb:%config(noreplace) %{_sysconfdir}/my.cnf.d/tokudb.cnf}
# Cracklib plugin # Cracklib plugin
%{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf %config(noreplace) %{_sysconfdir}/my.cnf.d/cracklib_password_check.cnf
%{_libexecdir}/mysqld %{_libexecdir}/mysqld
@ -1244,21 +1249,33 @@ fi
%{_mandir}/man1/aria_ftdump.1* %{_mandir}/man1/aria_ftdump.1*
%{_mandir}/man1/aria_pack.1* %{_mandir}/man1/aria_pack.1*
%{_mandir}/man1/aria_read_log.1* %{_mandir}/man1/aria_read_log.1*
%{_mandir}/man1/galera_new_cluster.1*
%{_mandir}/man1/galera_recovery.1*
%{_mandir}/man1/mariadb-service-convert.1*
%{_mandir}/man1/myisamchk.1* %{_mandir}/man1/myisamchk.1*
%{_mandir}/man1/myisamlog.1* %{_mandir}/man1/myisamlog.1*
%{_mandir}/man1/myisampack.1* %{_mandir}/man1/myisampack.1*
%{_mandir}/man1/myisam_ftdump.1* %{_mandir}/man1/myisam_ftdump.1*
%{_mandir}/man1/mysqlbug.1*
%{_mandir}/man1/mysql.server.1* %{_mandir}/man1/mysql.server.1*
%{_mandir}/man1/mysql_install_db.1* %{_mandir}/man1/mysql_install_db.1*
%{_mandir}/man1/mysql_secure_installation.1* %{_mandir}/man1/mysql_secure_installation.1*
%{_mandir}/man1/mysqlbug.1* %{_mandir}/man1/mysql_tzinfo_to_sql.1*
%{_mandir}/man1/mysqld_safe.1* %{_mandir}/man1/mysqld_safe.1*
%{_mandir}/man1/mysqld_safe_helper.1*
%{_mandir}/man1/my_safe_process.1*
%{_mandir}/man1/innochecksum.1* %{_mandir}/man1/innochecksum.1*
%{_mandir}/man1/replace.1* %{_mandir}/man1/replace.1*
%{_mandir}/man1/resolve_stack_dump.1*
%{_mandir}/man1/resolveip.1* %{_mandir}/man1/resolveip.1*
%{_mandir}/man1/mysql_tzinfo_to_sql.1* %{_mandir}/man1/resolve_stack_dump.1*
%{_mandir}/man8/mysqld.8* %{_mandir}/man8/mysqld.8*
%{?with_tokudb:%{_mandir}/man1/tokuftdump.1*}
%{?with_tokudb:%{_mandir}/man1/tokuft_logdump.1*}
%{_mandir}/man1/wsrep_sst_common.1*
%{_mandir}/man1/wsrep_sst_mysqldump.1*
%{_mandir}/man1/wsrep_sst_rsync.1*
%{_mandir}/man1/wsrep_sst_xtrabackup.1*
%{_mandir}/man1/wsrep_sst_xtrabackup-v2.1*
%{_datadir}/%{pkg_name}/fill_help_tables.sql %{_datadir}/%{pkg_name}/fill_help_tables.sql
%{_datadir}/%{pkg_name}/install_spider.sql %{_datadir}/%{pkg_name}/install_spider.sql
@ -1316,7 +1333,7 @@ fi
%endif %endif
%files server-utils %files server-utils
#Perl utilities # Perl utilities
%{_bindir}/mysql_convert_table_format %{_bindir}/mysql_convert_table_format
%{_bindir}/mysql_fix_extensions %{_bindir}/mysql_fix_extensions
%{_bindir}/mysql_setpermission %{_bindir}/mysql_setpermission
@ -1331,14 +1348,14 @@ fi
%{_mandir}/man1/mysqld_multi.1* %{_mandir}/man1/mysqld_multi.1*
%{_mandir}/man1/mysqlhotcopy.1* %{_mandir}/man1/mysqlhotcopy.1*
%{_mandir}/man1/mysql_setpermission.1* %{_mandir}/man1/mysql_setpermission.1*
#Utilities that can be used remotely # Utilities that can be used remotely
%{_bindir}/mysql_upgrade %{_bindir}/mysql_upgrade
%{_bindir}/mysqltest %{_bindir}/mysqltest
%{_bindir}/perror %{_bindir}/perror
%{_mandir}/man1/mysql_upgrade.1* %{_mandir}/man1/mysql_upgrade.1*
%{_mandir}/man1/mysqltest.1* %{_mandir}/man1/mysqltest.1*
%{_mandir}/man1/perror.1* %{_mandir}/man1/perror.1*
#Other utilities # Other utilities
%{_bindir}/mysqld_safe_helper %{_bindir}/mysqld_safe_helper
%if %{with devel} %if %{with devel}
@ -1369,6 +1386,8 @@ fi
%if %{with bench} %if %{with bench}
%files bench %files bench
%{_datadir}/sql-bench %{_datadir}/sql-bench
#TODO: do a sanity check
%exclude %{_datadir}/sql-bench/README
# RPMLINT W: # RPMLINT W:
# mariadb-bench.x86_64: W: no-documentation # mariadb-bench.x86_64: W: no-documentation
%doc %{_datadir}/sql-bench/README %doc %{_datadir}/sql-bench/README
@ -1383,6 +1402,21 @@ fi
%endif %endif
%changelog %changelog
* Fri Jun 02 2017 Michal Schorm <mschorm@redhat.com> - 3:10.1.24-1
- Rebase to 10.1.24
- Build dependecies Bison and Libarchive added, others corrected
- Disabling Mroonga engine for i686 architecture, as it is not supported by MariaDB
- Removed patches: (fixed by upstream)
Patch5: mariadb-file-contents.patch
Patch14: mariadb-example-config-files.patch
Patch31: mariadb-string-overflow.patch
Patch32: mariadb-basedir.patch
Patch41: mariadb-galera-new-cluster-help.patch
- Resolves: rhbz#1414387
CVE-2017-3313
- Resolves partly: rhbz#1443408
CVE-2017-3308 CVE-2017-3309 CVE-2017-3453 CVE-2017-3456 CVE-2017-3464
* Tue May 23 2017 Michal Schorm <mschorm@redhat.com> - 3:10.1.21-6 * Tue May 23 2017 Michal Schorm <mschorm@redhat.com> - 3:10.1.21-6
- Plugin oqgraph enabled - Plugin oqgraph enabled
- Plugin jemalloc enabled - Plugin jemalloc enabled

View File

@ -1,8 +1 @@
main.partition_exchange : #1399847
main.analyze_stmt_orderby : #1399847
main.explain_json_innodb : #1399847
main.explain_json_format_partitions : #1399847
main.analyze_format_json : #1399847
main.explain_json : #1399847
main.subselect_cache : #1399847
main.type_year : #1399847

View File

@ -18,3 +18,54 @@ main.mysql_client_test_nonblock : #1399847
# <mkocka@redhat.com> needs this tests disabled for mode build # <mkocka@redhat.com> needs this tests disabled for mode build
plugins.feedback_plugin_load : # plugins.feedback_plugin_load : #
# ----
# Failing from rebase to 10.1.24
# issues trackers will be added
encryption.create_or_replace :
perfschema.nesting :
perfschema.socket_summary_by_event_name_func :
perfschema.socket_summary_by_instance_func :
perfschema.cnf_option :
innodb.innodb_defrag_binlog :
rpl.rpl_row_img_blobs :
rpl.rpl_row_img_eng_min :
rpl.rpl_row_img_eng_noblob :
sys_vars.log_error_func :
sys_vars.log_error_func2 :
sys_vars.slave_parallel_threads_basic :
spider/bg.spider3_fixes :
spider/bg.spider3_fixes_part :
spider/bg.spider_fixes :
spider/bg.spider_fixes_part :
spider/bg.basic_sql :
spider/bg.basic_sql_part :
spider/bg.direct_aggregate :
spider/bg.direct_aggregate_part :
spider/bg.direct_update :
spider/bg.direct_update_part :
spider/bg.function :
spider/bg.ha :
spider/bg.ha_part :
spider/bg.vp_fixes :
spider.spider3_fixes :
spider.spider3_fixes_part :
spider.spider_fixes :
spider.spider_fixes_part :
spider.basic_sql :
spider.basic_sql_part :
spider.direct_aggregate :
spider.direct_aggregate_part :
spider.direct_update :
spider.direct_update_part :
spider.function :
spider.ha :
spider.ha_part :
spider.vp_fixes :

View File

@ -1 +1 @@
SHA512 (mariadb-10.1.21.tar.gz) = 241467ce7c04603261509e45b3c476632a11754f15dead67434bb8a0fbad6ebcf44c63ffeb7075574e54d14039b22702d48732c1fd8a498948d8b6fc54d54714 SHA512 (mariadb-10.1.24.tar.gz) = 0b8d81b53f6866a81f33559ce57ebf956fec3ba25da0bd58c8bee3b2ecc00a6c370340000209d18463f84501d3ba35994b51ef99224616c37cd38d2fc87b73e9