Skip to content

Commit

Permalink
Merge 10.3 into 10.4
Browse files Browse the repository at this point in the history
  • Loading branch information
dr-m committed Jan 6, 2019
2 parents 2465d3e + faf206a commit 734510a
Show file tree
Hide file tree
Showing 155 changed files with 2,048 additions and 2,619 deletions.
2 changes: 0 additions & 2 deletions .gitignore
Expand Up @@ -129,8 +129,6 @@ scripts/wsrep_sst_mysqldump
scripts/wsrep_sst_rsync
scripts/wsrep_sst_rsync_wan
scripts/wsrep_sst_mariabackup
scripts/wsrep_sst_xtrabackup
scripts/wsrep_sst_xtrabackup-v2
scripts/maria_add_gis_sp.sql
scripts/maria_add_gis_sp_bootstrap.sql
scripts/galera_new_cluster
Expand Down
1 change: 1 addition & 0 deletions CMakeLists.txt
Expand Up @@ -342,6 +342,7 @@ MYSQL_CHECK_SSL()
MYSQL_CHECK_READLINE()

SET(MALLOC_LIBRARY "system")
SET(PYTHON_SHEBANG "/usr/bin/env python")

CHECK_PCRE()

Expand Down
50 changes: 25 additions & 25 deletions Docs/README-wsrep
Expand Up @@ -60,7 +60,7 @@ CONTENTS:
Wsrep API developed by Codership Oy is a modern generic (database-agnostic)
replication API for transactional databases with a goal to make database
replication/logging subsystem completely modular and pluggable. It is developed
with flexibility and completeness in mind to satisfy broad range of modern
with flexibility and completeness in mind to satisfy a broad range of modern
replication scenarios. It is equally suitable for synchronous and asynchronous,
master-slave and multi-master replication.

Expand All @@ -87,7 +87,7 @@ Upgrade from mysql-server-5.0 to mysql-wsrep is not supported yet, please
upgrade to mysql-server-5.1 first.

If you're installing over an existing mysql installation, mysql-server-wsrep
will conflict with mysql-server-5.1 package, so remove it first:
will conflict with the mysql-server-5.1 package, so remove it first:

$ sudo apt-get remove mysql-server-5.1 mysql-server-core-5.1

Expand All @@ -105,7 +105,7 @@ For example, installation of required packages on Debian Lenny:
$ sudo apt-get install psmisc
$ sudo apt-get -t lenny-backports install mysql-client-5.1

Now you should be able to install mysql-wsrep package:
Now you should be able to install the mysql-wsrep package:

$ sudo dpkg -i <mysql-server-wsrep DEB>

Expand Down Expand Up @@ -137,7 +137,7 @@ Additional packages to consider (if not yet installed):
* galera (multi-master replication provider, https://launchpad.net/galera)
* MySQL-client-community (for connecting to server and mysqldump-based SST)
* rsync (for rsync-based SST)
* xtrabackup and nc (for xtrabackup-based SST)
* mariabackup and nc (for mariabackup-based SST)

2.2 Upgrade system tables.

Expand All @@ -150,7 +150,7 @@ and can be ignored unless specific functionality is needed.
3. FIRST TIME SETUP

Unless you're upgrading an already installed mysql-wsrep package, you will need
to set up a few things to prepare server for operation.
to set up a few things to prepare the server for operation.

3.1 CONFIGURATION FILES

Expand All @@ -162,7 +162,7 @@ to set up a few things to prepare server for operation.
* Make sure system-wide my.cnf contains "!includedir /etc/mysql/conf.d/" line.

* Edit /etc/mysql/conf.d/wsrep.cnf and set wsrep_provider option by specifying
a path to provider library. If you don't have a provider, leave it as it is.
a path to the provider library. If you don't have a provider, leave it as it is.

* When a new node joins the cluster it'll have to receive a state snapshot from
one of the peers. This requires a privileged MySQL account with access from
Expand Down Expand Up @@ -267,7 +267,7 @@ innodb_autoinc_lock_mode=2
This is a required parameter. Without it INSERTs into tables with
AUTO_INCREMENT column may fail.
autoinc lock modes 0 and 1 can cause unresolved deadlock, and make
system unresponsive.
the system unresponsive.

innodb_locks_unsafe_for_binlog=1
This option is required for parallel applying.
Expand Down Expand Up @@ -299,14 +299,14 @@ wsrep_node_address=
results (multiple network interfaces, NAT, etc.)
If not explicitly overridden by wsrep_sst_receive_address, the <address> part
will be used to listen for SST (see below). And the whole <address>[:port]
will be passed to wsrep provider to be used as a base address in its
will be passed to the wsrep provider to be used as a base address in its
communications.

wsrep_node_name=
Human readable node name (for easier log reading only). Defaults to hostname.

wsrep_slave_threads=1
Number of threads dedicated to processing of writesets from other nodes.
The number of threads dedicated to the processing of writesets from other nodes.
For best performance should be few per CPU core.

wsrep_dbug_option
Expand All @@ -326,7 +326,7 @@ wsrep_convert_LOCK_to_trx=0
wsrep_retry_autocommit=1
Retry autocommit queries and single statement transactions should they fail
certification test. This is analogous to rescheduling an autocommit query
should it go into deadlock with other transactions in the database lock
should it go into a deadlock with other transactions in the database lock
manager.

wsrep_auto_increment_control=1
Expand Down Expand Up @@ -357,7 +357,7 @@ wsrep_OSU_method=TOI
is not replicating and may be unable to process replication events (due to
table lock). Once DDL operation is complete, the node will catch up and sync
with the cluster to become fully operational again. The DDL statement or
its effects are not replicated, so it is user's responsibility to manually
its effects are not replicated, so it is the user's responsibility to manually
perform this operation on each of the nodes.

wsrep_forced_binlog_format=none
Expand All @@ -380,14 +380,14 @@ to join or start a cluster.
wsrep_sst_method=rsync
What method to use to copy database state to a newly joined node. Supported
methods:
- mysqldump: slow (except for small datasets) but allows for upgrade
between major MySQL versions or InnoDB features.
- rsync: much faster on large datasets (default).
- rsync_wan: same as rsync but with deltaxfer to minimize network traffic.
- xtrabackup: very fast and practically non-blocking SST method based on
Percona's xtrabackup tool.

(for xtrabackup to work the following settings must be present in my.cnf
- mysqldump: slow (except for small datasets) but allows for upgrade
between major MySQL versions or InnoDB features.
- rsync: much faster on large datasets (default).
- rsync_wan: same as rsync but with deltaxfer to minimize network traffic.
- mariabackup: very fast and practically non-blocking SST method based on
mariabackup tool (enhanced version of Percona's xtrabackup).

(for mariabackup to work the following settings must be present in my.cnf
on all nodes:
[mysqld]
wsrep_sst_auth=root:<root password>
Expand All @@ -412,8 +412,8 @@ wsrep_sst_auth=

wsrep_sst_donor=
A name of the node which should serve as state snapshot donor. This allows
to control which node will serve state snapshot request. By default the
most suitable node is chosen by wsrep provider. This is the same as given in
controlling which node will serve the state snapshot request. By default the
most suitable node is chosen by the wsrep provider. This is the same as given in
wsrep_node_name.


Expand All @@ -423,7 +423,7 @@ wsrep_sst_donor=
for the database. They change the database structure and are non-
transactional.

Release 22.3 brings a new method for performing schema upgrades. User can
Release 22.3 brings a new method for performing schema upgrades. A user can
now choose whether to use the traditional total order isolation or new
rolling schema upgrade method. The OSU method choice is done by global
parameter: 'wsrep_OSU_method'.
Expand All @@ -439,7 +439,7 @@ wsrep_sst_donor=

6.2 Rolling Schema Upgrade (RSU)

Rolling schema upgrade is new DDL processing method, where DDL will be
Rolling schema upgrade is a new DDL processing method, where DDL will be
processed locally for the node. The node is disconnected of the replication
for the duration of the DDL processing, so that there is only DDL statement
processing in the node and it does not block the rest of the cluster. When
Expand Down Expand Up @@ -468,7 +468,7 @@ wsrep_sst_donor=
* LOCK/UNLOCK TABLES cannot be supported in multi-master setups.
* lock functions (GET_LOCK(), RELEASE_LOCK()... )

4) Query log cannot be directed to table. If you enable query logging,
4) Query log cannot be directed to a table. If you enable query logging,
you must forward the log to a file:
log_output = FILE
Use general_log and general_log_file to choose query logging and the
Expand All @@ -480,7 +480,7 @@ wsrep_sst_donor=
6) Due to cluster level optimistic concurrency control, transaction issuing
COMMIT may still be aborted at that stage. There can be two transactions.
writing to same rows and committing in separate cluster nodes, and only one
of the them can successfully commit. The failing one will be aborted.
of them can successfully commit. The failing one will be aborted.
For cluster level aborts, MySQL/galera cluster gives back deadlock error.
code (Error: 1213 SQLSTATE: 40001 (ER_LOCK_DEADLOCK)).

Expand Down
2 changes: 2 additions & 0 deletions cmake/cpack_rpm.cmake
Expand Up @@ -214,6 +214,8 @@ ELSEIF(RPM MATCHES "fedora" OR RPM MATCHES "(rhel|centos)7")
ALTERNATIVE_NAME("server" "mariadb-server")
ALTERNATIVE_NAME("server" "mysql-compat-server")
ALTERNATIVE_NAME("test" "mariadb-test")
ELSEIF(RPM MATCHES "(rhel|centos)8")
SET(PYTHON_SHEBANG "/usr/bin/python3")
ENDIF()

# workaround for lots of perl dependencies added by rpmbuild
Expand Down
5 changes: 1 addition & 4 deletions cmake/mariadb_connector_c.cmake
Expand Up @@ -6,10 +6,7 @@ ENDIF()

SET(CONC_WITH_SIGNCODE ${SIGNCODE})
SET(SIGN_OPTIONS ${SIGNTOOL_PARAMETERS})

IF(NOT TARGET zlib)
SET(CONC_WITH_EXTERNAL_ZLIB ON)
ENDIF()
SET(CONC_WITH_EXTERNAL_ZLIB ON)

IF(SSL_DEFINES MATCHES "YASSL")
IF(WIN32)
Expand Down
5 changes: 0 additions & 5 deletions cmake/zlib.cmake
Expand Up @@ -34,11 +34,6 @@ ENDMACRO()

MACRO (MYSQL_CHECK_ZLIB_WITH_COMPRESS)

# For NDBCLUSTER: Use bundled zlib by default
IF (NOT WITH_ZLIB)
SET(WITH_ZLIB "bundled" CACHE STRING "By default use bundled zlib on this platform")
ENDIF()

IF(WITH_ZLIB STREQUAL "bundled")
MYSQL_USE_BUNDLED_ZLIB()
ELSE()
Expand Down
2 changes: 1 addition & 1 deletion debian/autobake-deb.sh
Expand Up @@ -102,7 +102,7 @@ fi
# AWS SDK also requires the build machine to have network access and git, so
# it cannot be part of the base version included in Linux distros, but a pure
# custom built plugin.
if [[ $GCCVERSION -gt 40800 ]] && [[ ! $TRAVIS ]] && wget --timeout 15 --tries 1 --quiet --output-document /dev/null https://github.com/
if [[ $GCCVERSION -gt 40800 ]] && [[ ! $TRAVIS ]] && [[ -x "$(command -v git)" ]] && timeout 3s bash -c 'sed -n q </dev/tcp/github.com/22'
then
cat <<EOF >> debian/control
Expand Down
2 changes: 1 addition & 1 deletion debian/control
Expand Up @@ -594,7 +594,7 @@ Description: OQGraph storage engine for MariaDB

Package: mariadb-plugin-tokudb
Architecture: amd64
Depends: libjemalloc1 (>= 3.0.0~),
Depends: libjemalloc1 (>= 3.0.0~) | libjemalloc2,
mariadb-server-10.4 (= ${binary:Version}),
${misc:Depends},
${shlibs:Depends}
Expand Down
2 changes: 0 additions & 2 deletions debian/mariadb-server-10.4.install
Expand Up @@ -36,8 +36,6 @@ usr/bin/wsrep_sst_common
usr/bin/wsrep_sst_mariabackup
usr/bin/wsrep_sst_mysqldump
usr/bin/wsrep_sst_rsync
usr/bin/wsrep_sst_xtrabackup
usr/bin/wsrep_sst_xtrabackup-v2
usr/lib/mysql/plugin/auth_ed25519.so
usr/lib/mysql/plugin/auth_pam.so
usr/lib/mysql/plugin/auth_pam_tool_dir/auth_pam_tool
Expand Down

0 comments on commit 734510a

Please sign in to comment.