mirror of
https://github.com/MariaDB/server.git
synced 2025-07-29 05:21:33 +03:00
Merging changes from maria-5.5-galera and
some test fixes. bzr merge -r3479..3493 maria-5.5-galera
This commit is contained in:
@ -1097,9 +1097,11 @@ sql/share/slovak
|
||||
sql/share/spanish
|
||||
sql/share/swedish
|
||||
sql/share/ukrainian
|
||||
scripts/wsrep_sst_common
|
||||
scripts/wsrep_sst_mysqldump
|
||||
scripts/wsrep_sst_rsync
|
||||
scripts/wsrep_sst_xtrabackup
|
||||
scripts/wsrep_sst_xtrabackup-v2
|
||||
CPackConfig.cmake
|
||||
CPackSourceConfig.cmake
|
||||
Docs/INFO_BIN
|
||||
|
@ -23,8 +23,7 @@ SET(CPACK_COMPONENT_SHAREDLIBRARIES_GROUP "shared")
|
||||
SET(CPACK_COMPONENT_COMMON_GROUP "common")
|
||||
SET(CPACK_COMPONENT_COMPAT_GROUP "compat")
|
||||
SET(CPACK_COMPONENTS_ALL Server ManPagesServer IniFiles Server_Scripts
|
||||
SupportFiles Readme)
|
||||
|
||||
SupportFiles Readme Test)
|
||||
SET(CPACK_RPM_PACKAGE_NAME "MariaDB-Galera")
|
||||
SET(CPACK_PACKAGE_FILE_NAME "${CPACK_RPM_PACKAGE_NAME}-${VERSION}-${RPM}-${CMAKE_SYSTEM_PROCESSOR}")
|
||||
|
||||
@ -147,6 +146,8 @@ SETA(CPACK_RPM_test_PACKAGE_OBSOLETES
|
||||
"MySQL-OurDelta-test")
|
||||
SETA(CPACK_RPM_test_PACKAGE_PROVIDES
|
||||
"MySQL-test")
|
||||
SET(CPACK_RPM_test_PACKAGE_CONFLICTS
|
||||
"MariaDB-test")
|
||||
|
||||
SETA(CPACK_RPM_server_PACKAGE_REQUIRES
|
||||
${CPACK_RPM_PACKAGE_REQUIRES}
|
||||
|
@ -23,7 +23,7 @@ SET(WSREP_PATCH_VERSION "10")
|
||||
# MariaDB addition: Revision number of the last revision merged from
|
||||
# codership branch visible in @@visible_comment.
|
||||
# Branch : codership-mysql/5.5
|
||||
SET(WSREP_PATCH_REVNO "3968") # Should be updated on every merge.
|
||||
SET(WSREP_PATCH_REVNO "3991") # Should be updated on every merge.
|
||||
|
||||
# MariaDB: Obtain patch revision number:
|
||||
# Update WSREP_PATCH_REVNO if WSREP_REV environment variable is set.
|
||||
|
31
debian/dist/Debian/control
vendored
31
debian/dist/Debian/control
vendored
@ -4,15 +4,36 @@ Priority: optional
|
||||
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
|
||||
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, ${CMAKE_DEP}libaio-dev
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, ${CMAKE_DEP}libaio-dev, rsync, lsof
|
||||
Standards-Version: 3.8.3
|
||||
Homepage: http://mariadb.org/
|
||||
Vcs-Browser: http://bazaar.launchpad.net/~maria-captains/maria/10.0/files
|
||||
Vcs-Bzr: bzr://lp:maria
|
||||
|
||||
Package: mariadb-galera-test-10.0
|
||||
Section: database
|
||||
Architecture: any
|
||||
Depends: mariadb-galera-server-10.0 (= ${source:Version}), mariadb-client-10.0 (>= ${source:Version})
|
||||
Suggests: patch
|
||||
Conflicts: mariadb-test, mariadb-galera-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3,
|
||||
mariadb-test-5.5, mariadb-test-10.0,
|
||||
mariadb-server-5.5, mariadb-galera-server-5.5,
|
||||
mariadb-server-10.0
|
||||
Replaces: mariadb-test (<< ${source:Version}), mariadb-galera-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3,
|
||||
mariadb-test-5.5
|
||||
Description: MariaDB database regression test suite
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
language in the world. The main goals of MariaDB are speed, robustness and
|
||||
ease of use.
|
||||
.
|
||||
This package includes the regression test suite.
|
||||
|
||||
Package: mariadb-galera-server-10.0
|
||||
Architecture: any
|
||||
Suggests: tinyca, mailx, mariadb-test
|
||||
Suggests: tinyca, mailx, mariadb-galera-test
|
||||
Recommends: libhtml-template-perl
|
||||
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
|
||||
Depends: mariadb-client-10.0 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), libmariadbclient18 (>= ${binary:Version}), galera (>=25.2)
|
||||
@ -66,11 +87,11 @@ Description: MariaDB database client (metapackage depending on the latest versio
|
||||
maintainers. Install this package if in doubt about which MariaDB version
|
||||
you want, as this is the one we consider to be in the best shape.
|
||||
|
||||
Package: mariadb-test
|
||||
Package: mariadb-galera-test
|
||||
Section: database
|
||||
Architecture: all
|
||||
Depends: mariadb-test-10.0 (= ${source:Version})
|
||||
Depends: mariadb-galera-test-10.0 (= ${source:Version})
|
||||
Description: MariaDB database regression test suite (metapackage depending on the latest version)
|
||||
This is an empty package that depends on the current "best" version of
|
||||
mariadb-test (currently mariadb-test-10.0), as determined by the MariaDB
|
||||
mariadb-galera-test (currently mariadb-galera-test-10.0), as determined by the MariaDB
|
||||
maintainers.
|
||||
|
31
debian/dist/Ubuntu/control
vendored
31
debian/dist/Ubuntu/control
vendored
@ -4,15 +4,36 @@ Priority: optional
|
||||
Maintainer: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
XSBC-Original-Maintainer: Maria Developers <maria-developers@lists.launchpad.net>
|
||||
Uploaders: MariaDB Developers <maria-developers@lists.launchpad.net>
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, ${CMAKE_DEP}libaio-dev
|
||||
Build-Depends: libtool (>= 1.4.2-7), procps | hurd, debhelper, file (>= 3.28), libncurses5-dev (>= 5.0-6), perl (>= 5.6.0), libwrap0-dev (>= 7.6-8.3), zlib1g-dev (>= 1:1.1.3-5), ${LIBREADLINE_DEV}, libssl-dev, libpam0g-dev, psmisc, po-debconf, chrpath, automake1.9, doxygen, texlive-latex-base, ghostscript | gs-gpl, dpatch, gawk, bison, lsb-release, hardening-wrapper, ${CMAKE_DEP}libaio-dev, rsync, lsof
|
||||
Standards-Version: 3.8.2
|
||||
Homepage: http://mariadb.org/
|
||||
Vcs-Browser: http://bazaar.launchpad.net/~maria-captains/maria/10.0/files
|
||||
Vcs-Bzr: bzr://lp:maria
|
||||
|
||||
Package: mariadb-galera-test-10.0
|
||||
Section: database
|
||||
Architecture: any
|
||||
Depends: mariadb-galera-server-10.0 (= ${source:Version}), mariadb-client-10.0 (>= ${source:Version})
|
||||
Suggests: patch
|
||||
Conflicts: mariadb-test, mariadb-galera-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3,
|
||||
mariadb-test-5.5, mariadb-test-10.0,
|
||||
mariadb-server-5.5, mariadb-galera-server-5.5,
|
||||
mariadb-server-10.0
|
||||
Replaces: mariadb-test (<< ${source:Version}), mariadb-galera-test (<< ${source:Version}),
|
||||
mariadb-test-5.1, mariadb-test-5.2, mariadb-test-5.3,
|
||||
mariadb-test-5.5
|
||||
Description: MariaDB database regression test suite
|
||||
MariaDB is a fast, stable and true multi-user, multi-threaded SQL database
|
||||
server. SQL (Structured Query Language) is the most popular database query
|
||||
language in the world. The main goals of MariaDB are speed, robustness and
|
||||
ease of use.
|
||||
.
|
||||
This package includes the regression test suite.
|
||||
|
||||
Package: mariadb-galera-server-10.0
|
||||
Architecture: any
|
||||
Suggests: tinyca, mailx, mariadb-test
|
||||
Suggests: tinyca, mailx, mariadb-galera-test
|
||||
Recommends: libhtml-template-perl
|
||||
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
|
||||
Depends: mariadb-client-10.0 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), libmariadbclient18 (>= ${binary:Version}), galera (>=25.2)
|
||||
@ -66,11 +87,11 @@ Description: MariaDB database client (metapackage depending on the latest versio
|
||||
maintainers. Install this package if in doubt about which MariaDB version
|
||||
you want, as this is the one we consider to be in the best shape.
|
||||
|
||||
Package: mariadb-test
|
||||
Package: mariadb-galera-test
|
||||
Section: database
|
||||
Architecture: all
|
||||
Depends: mariadb-test-10.0 (= ${source:Version})
|
||||
Depends: mariadb-galera-test-10.0 (= ${source:Version})
|
||||
Description: MariaDB database regression test suite (metapackage depending on the latest version)
|
||||
This is an empty package that depends on the current "best" version of
|
||||
mariadb-test (currently mariadb-test-10.0), as determined by the MariaDB
|
||||
mariadb-galera-test (currently mariadb-galera-test-10.0), as determined by the MariaDB
|
||||
maintainers.
|
||||
|
101
debian/mariadb-galera-test-10.0.dirs
vendored
Normal file
101
debian/mariadb-galera-test-10.0.dirs
vendored
Normal file
@ -0,0 +1,101 @@
|
||||
usr/bin
|
||||
usr/share/man/man1
|
||||
usr/share/mysql/mysql-test
|
||||
usr/share/mysql/mysql-test/extra
|
||||
usr/share/mysql/mysql-test/extra/binlog_tests
|
||||
usr/share/mysql/mysql-test/extra/rpl_tests
|
||||
usr/share/mysql/mysql-test/lib
|
||||
usr/share/mysql/mysql-test/lib/My
|
||||
usr/share/mysql/mysql-test/lib/My/SafeProcess
|
||||
usr/share/mysql/mysql-test/lib/My/File
|
||||
usr/share/mysql/mysql-test/lib/v1
|
||||
usr/share/mysql/mysql-test/lib/v1/My
|
||||
usr/share/mysql/mysql-test/collections
|
||||
usr/share/mysql/mysql-test/t
|
||||
usr/share/mysql/mysql-test/r
|
||||
usr/share/mysql/mysql-test/include
|
||||
usr/share/mysql/mysql-test/suite
|
||||
usr/share/mysql/mysql-test/suite/parts
|
||||
usr/share/mysql/mysql-test/suite/parts/inc
|
||||
usr/share/mysql/mysql-test/suite/parts/t
|
||||
usr/share/mysql/mysql-test/suite/parts/r
|
||||
usr/share/mysql/mysql-test/suite/rpl_ndb
|
||||
usr/share/mysql/mysql-test/suite/rpl_ndb/t
|
||||
usr/share/mysql/mysql-test/suite/rpl_ndb/r
|
||||
usr/share/mysql/mysql-test/suite/bugs
|
||||
usr/share/mysql/mysql-test/suite/bugs/t
|
||||
usr/share/mysql/mysql-test/suite/bugs/r
|
||||
usr/share/mysql/mysql-test/suite/bugs/data
|
||||
usr/share/mysql/mysql-test/suite/rpl
|
||||
usr/share/mysql/mysql-test/suite/rpl/t
|
||||
usr/share/mysql/mysql-test/suite/rpl/r
|
||||
usr/share/mysql/mysql-test/suite/rpl/include
|
||||
usr/share/mysql/mysql-test/suite/innodb
|
||||
usr/share/mysql/mysql-test/suite/innodb/t
|
||||
usr/share/mysql/mysql-test/suite/innodb/r
|
||||
usr/share/mysql/mysql-test/suite/innodb/include
|
||||
usr/share/mysql/mysql-test/suite/manual
|
||||
usr/share/mysql/mysql-test/suite/manual/t
|
||||
usr/share/mysql/mysql-test/suite/manual/r
|
||||
usr/share/mysql/mysql-test/suite/stress
|
||||
usr/share/mysql/mysql-test/suite/stress/t
|
||||
usr/share/mysql/mysql-test/suite/stress/r
|
||||
usr/share/mysql/mysql-test/suite/stress/include
|
||||
usr/share/mysql/mysql-test/suite/jp
|
||||
usr/share/mysql/mysql-test/suite/jp/t
|
||||
usr/share/mysql/mysql-test/suite/jp/r
|
||||
usr/share/mysql/mysql-test/suite/jp/include
|
||||
usr/share/mysql/mysql-test/suite/jp/std_data
|
||||
usr/share/mysql/mysql-test/suite/ndb
|
||||
usr/share/mysql/mysql-test/suite/ndb/t
|
||||
usr/share/mysql/mysql-test/suite/ndb/r
|
||||
usr/share/mysql/mysql-test/suite/maria
|
||||
usr/share/mysql/mysql-test/suite/maria/t
|
||||
usr/share/mysql/mysql-test/suite/maria/r
|
||||
usr/share/mysql/mysql-test/suite/funcs_2
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/lib
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/t
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/charset
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/r
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/include
|
||||
usr/share/mysql/mysql-test/suite/funcs_2/data
|
||||
usr/share/mysql/mysql-test/suite/binlog
|
||||
usr/share/mysql/mysql-test/suite/binlog/t
|
||||
usr/share/mysql/mysql-test/suite/binlog/r
|
||||
usr/share/mysql/mysql-test/suite/binlog/std_data
|
||||
usr/share/mysql/mysql-test/suite/ndb_team
|
||||
usr/share/mysql/mysql-test/suite/ndb_team/t
|
||||
usr/share/mysql/mysql-test/suite/ndb_team/r
|
||||
usr/share/mysql/mysql-test/suite/federated
|
||||
usr/share/mysql/mysql-test/suite/funcs_1
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/cursors
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/bitdata
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/views
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/storedproc
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/triggers
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/lib
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/t
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/r
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/include
|
||||
usr/share/mysql/mysql-test/suite/funcs_1/datadict
|
||||
usr/share/mysql/mysql-test/suite/vcol
|
||||
usr/share/mysql/mysql-test/suite/vcol/inc
|
||||
usr/share/mysql/mysql-test/suite/vcol/t
|
||||
usr/share/mysql/mysql-test/suite/vcol/r
|
||||
usr/share/mysql/mysql-test/suite/oqgraph
|
||||
usr/share/mysql/mysql-test/suite/oqgraph/t
|
||||
usr/share/mysql/mysql-test/suite/oqgraph/r
|
||||
usr/share/mysql/mysql-test/suite/oqgraph/include
|
||||
usr/share/mysql/mysql-test/suite/wsrep
|
||||
usr/share/mysql/mysql-test/suite/wsrep/t
|
||||
usr/share/mysql/mysql-test/suite/wsrep/r
|
||||
usr/share/mysql/mysql-test/suite/galera
|
||||
usr/share/mysql/mysql-test/suite/galera/t
|
||||
usr/share/mysql/mysql-test/suite/galera/r
|
||||
usr/share/mysql/mysql-test/std_data
|
||||
usr/share/mysql/mysql-test/std_data/ndb_backup50
|
||||
usr/share/mysql/mysql-test/std_data/parts
|
||||
usr/share/mysql/mysql-test/std_data/ndb_backup51_data_le
|
||||
usr/share/mysql/mysql-test/std_data/ndb_backup51_data_be
|
||||
usr/share/mysql/mysql-test/std_data/ndb_backup51
|
||||
usr/share/mysql/mysql-test/std_data/funcs_1
|
16
debian/mariadb-galera-test-10.0.files
vendored
Normal file
16
debian/mariadb-galera-test-10.0.files
vendored
Normal file
@ -0,0 +1,16 @@
|
||||
usr/lib/mysql/plugin/dialog_examples.so
|
||||
usr/lib/mysql/plugin/auth_test_plugin.so
|
||||
usr/lib/mysql/plugin/qa_auth_interface.so
|
||||
usr/lib/mysql/plugin/qa_auth_server.so
|
||||
usr/lib/mysql/plugin/qa_auth_client.so
|
||||
usr/lib/mysql/plugin/auth_0x0100.so
|
||||
usr/lib/mysql/plugin/mypluglib.so
|
||||
usr/lib/mysql/plugin/ha_test_sql_discovery.so
|
||||
usr/lib/mysql/plugin/daemon_example.ini
|
||||
usr/lib/mysql/plugin/libdaemon_example.so
|
||||
usr/lib/mysql/plugin/adt_null.so
|
||||
usr/bin/mysql_client_test
|
||||
usr/share/man/man1/mysql_client_test.1
|
||||
usr/bin/mysqltest
|
||||
usr/share/man/man1/mysqltest.1
|
||||
usr/share/mysql/mysql-test
|
2
debian/mariadb-galera-test-10.0.links
vendored
Normal file
2
debian/mariadb-galera-test-10.0.links
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mysql-test-run
|
||||
usr/share/mysql/mysql-test/mysql-test-run.pl usr/share/mysql/mysql-test/mtr
|
@ -34,6 +34,7 @@ BEGIN
|
||||
AND variable_name != 'INNODB_USE_NATIVE_AIO'
|
||||
AND variable_name not like 'GTID%POS'
|
||||
AND variable_name != 'GTID_BINLOG_STATE'
|
||||
AND variable_name != 'WSREP_DATA_HOME_DIR'
|
||||
ORDER BY variable_name;
|
||||
|
||||
-- Dump all databases, there should be none
|
||||
|
@ -187,6 +187,8 @@ my @DEFAULT_SUITES= qw(
|
||||
sys_vars-
|
||||
unit-
|
||||
vcol-
|
||||
galera-
|
||||
wsrep-
|
||||
);
|
||||
my $opt_suites;
|
||||
|
||||
@ -412,6 +414,7 @@ sub main {
|
||||
check_ndbcluster_support();
|
||||
check_ssl_support();
|
||||
check_debug_support();
|
||||
check_wsrep_support();
|
||||
|
||||
if (!$opt_suites) {
|
||||
$opt_suites= join ',', collect_default_suites(@DEFAULT_SUITES);
|
||||
@ -2397,6 +2400,22 @@ sub environment_setup {
|
||||
$ENV{'NDB_EXAMPLES_OUTPUT'}= $path_ndb_testrun_log;
|
||||
}
|
||||
|
||||
# ----------------------------------------------------
|
||||
# Setup env for wsrep
|
||||
# ----------------------------------------------------
|
||||
if (have_wsrep()) {
|
||||
if (defined $ENV{'WSREP_PROVIDER'} ) {
|
||||
# Nothing needs to be done! WSREP_PROVIDER env is already set and will be
|
||||
# used.
|
||||
} else {
|
||||
my $file_wsrep_provider=
|
||||
mtr_file_exists("/usr/lib/galera/libgalera_smm.so",
|
||||
"/usr/lib64/galera/libgalera_smm.so");
|
||||
$ENV{'WSREP_PROVIDER'}= $file_wsrep_provider;
|
||||
}
|
||||
mtr_verbose("WSREP_PROVIDER set to $ENV{'WSREP_PROVIDER'}");
|
||||
}
|
||||
|
||||
# ----------------------------------------------------
|
||||
# mysql clients
|
||||
# ----------------------------------------------------
|
||||
@ -3174,6 +3193,17 @@ sub ndbcluster_start ($) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
sub have_wsrep() {
|
||||
my $wsrep_on= $mysqld_variables{'wsrep-on'};
|
||||
return defined $wsrep_on
|
||||
}
|
||||
|
||||
sub check_wsrep_support() {
|
||||
if (have_wsrep())
|
||||
{
|
||||
mtr_report(" - binaries built with wsrep patch");
|
||||
}
|
||||
}
|
||||
|
||||
sub mysql_server_start($) {
|
||||
my ($mysqld, $tinfo) = @_;
|
||||
|
@ -3,12 +3,12 @@
|
||||
|
||||
[mysqld.1]
|
||||
binlog-format=row
|
||||
wsrep_provider=/usr/lib/galera/libgalera_smm.so
|
||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||
wsrep_cluster_address='gcomm://'
|
||||
|
||||
[mysqld.2]
|
||||
binlog-format=row
|
||||
wsrep_provider=/usr/lib/galera/libgalera_smm.so
|
||||
wsrep_provider=@ENV.WSREP_PROVIDER
|
||||
wsrep_cluster_address='gcomm://127.0.0.1:4567'
|
||||
wsrep_provider_options='gmcast.listen_addr=tcp://127.0.0.1:4568'
|
||||
|
||||
|
@ -142,8 +142,8 @@ id name
|
||||
116 Record_10
|
||||
117 Record_11
|
||||
119 Record_12
|
||||
120 Record_13
|
||||
121 Record_14
|
||||
121 Record_13
|
||||
123 Record_14
|
||||
## Changing column's datatype to BigInt and verifying variable's behavior ##
|
||||
ALTER table t1 MODIFY id BIGINT NOT NULL auto_increment;
|
||||
INSERT into t1(name) values('Record_15');
|
||||
@ -159,10 +159,10 @@ id name
|
||||
116 Record_10
|
||||
117 Record_11
|
||||
119 Record_12
|
||||
120 Record_13
|
||||
121 Record_14
|
||||
122 Record_15
|
||||
123 Record_16
|
||||
121 Record_13
|
||||
123 Record_14
|
||||
125 Record_15
|
||||
127 Record_16
|
||||
'#--------------------FN_DYNVARS_001_07-------------------------#'
|
||||
## Verifying behavior of variable with negative value ##
|
||||
SET @@auto_increment_increment = -10;
|
||||
@ -181,12 +181,12 @@ id name
|
||||
116 Record_10
|
||||
117 Record_11
|
||||
119 Record_12
|
||||
120 Record_13
|
||||
121 Record_14
|
||||
122 Record_15
|
||||
123 Record_16
|
||||
124 Record_17
|
||||
125 Record_18
|
||||
121 Record_13
|
||||
123 Record_14
|
||||
125 Record_15
|
||||
127 Record_16
|
||||
128 Record_17
|
||||
129 Record_18
|
||||
## Disconnecting test_con2 ##
|
||||
## Dropping table t1 ##
|
||||
DROP table if exists t1;
|
||||
|
@ -144,8 +144,8 @@ id name
|
||||
125 Record_12
|
||||
134 Record_13
|
||||
140 Record_14
|
||||
141 Record_15
|
||||
142 Record_16
|
||||
150 Record_15
|
||||
160 Record_16
|
||||
## Changing datatype of column id with primary key to BigInt ##
|
||||
ALTER table t1 modify id BIGINT NOT NULL auto_increment;
|
||||
INSERT into t1(name) values('Record_17');
|
||||
@ -166,10 +166,10 @@ id name
|
||||
125 Record_12
|
||||
134 Record_13
|
||||
140 Record_14
|
||||
141 Record_15
|
||||
142 Record_16
|
||||
143 Record_17
|
||||
144 Record_18
|
||||
150 Record_15
|
||||
160 Record_16
|
||||
170 Record_17
|
||||
180 Record_18
|
||||
'#--------------------FN_DYNVARS_002_07-------------------------#'
|
||||
## Assigning -ve value to variable ##
|
||||
SET @@auto_increment_offset = -10;
|
||||
@ -196,12 +196,12 @@ id name
|
||||
125 Record_12
|
||||
134 Record_13
|
||||
140 Record_14
|
||||
141 Record_15
|
||||
142 Record_16
|
||||
143 Record_17
|
||||
144 Record_18
|
||||
145 Record_17
|
||||
146 Record_18
|
||||
150 Record_15
|
||||
160 Record_16
|
||||
170 Record_17
|
||||
180 Record_18
|
||||
181 Record_17
|
||||
191 Record_18
|
||||
## Assigning value that is out of range of variable ##
|
||||
SET @@auto_increment_offset = 65536;
|
||||
Warnings:
|
||||
@ -229,16 +229,16 @@ id name
|
||||
125 Record_12
|
||||
134 Record_13
|
||||
140 Record_14
|
||||
141 Record_15
|
||||
142 Record_16
|
||||
143 Record_17
|
||||
144 Record_18
|
||||
145 Record_17
|
||||
146 Record_18
|
||||
147 Record_17
|
||||
148 Record_18
|
||||
149 Record_19
|
||||
150 Record_20
|
||||
150 Record_15
|
||||
160 Record_16
|
||||
170 Record_17
|
||||
180 Record_18
|
||||
181 Record_17
|
||||
191 Record_18
|
||||
199 Record_17
|
||||
209 Record_18
|
||||
219 Record_19
|
||||
229 Record_20
|
||||
## No effect of auto_increment_offset since value of this variable is greater ##
|
||||
## than auto_increment_increment ##
|
||||
## Dropping table ##
|
||||
|
@ -65,6 +65,7 @@ wsrep_provider_name #
|
||||
wsrep_provider_vendor #
|
||||
wsrep_provider_version #
|
||||
wsrep_ready #
|
||||
wsrep_thread_count #
|
||||
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_%';
|
||||
Variable_name Value
|
||||
@ -115,12 +116,14 @@ wsrep_provider_name #
|
||||
wsrep_provider_vendor #
|
||||
wsrep_provider_version #
|
||||
wsrep_ready #
|
||||
wsrep_thread_count #
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_local_state_comment';
|
||||
Variable_name Value
|
||||
wsrep_local_state_comment Synced
|
||||
wsrep_local_state_comment #
|
||||
# Should show nothing.
|
||||
SHOW STATUS LIKE 'x';
|
||||
Variable_name Value
|
||||
SET GLOBAL wsrep_provider=none;
|
||||
#
|
||||
# MDEV#6079: xtrabackup SST failing with maria-10.0-galera
|
||||
#
|
||||
@ -132,4 +135,70 @@ wsrep_local_state_uuid #
|
||||
SHOW STATUS LIKE 'wsrep_last_committed';
|
||||
Variable_name Value
|
||||
wsrep_last_committed #
|
||||
SET GLOBAL wsrep_provider=none;
|
||||
|
||||
#
|
||||
# MDEV#6206: wsrep_slave_threads subtracts from max_connections
|
||||
#
|
||||
call mtr.add_suppression("safe_mutex: Found wrong usage of mutex 'LOCK_wsrep_slave_threads' and 'LOCK_global_system_variables'");
|
||||
call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@global.wsrep_provider
|
||||
none
|
||||
SELECT @@global.wsrep_slave_threads;
|
||||
@@global.wsrep_slave_threads
|
||||
1
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
@@global.wsrep_cluster_address
|
||||
NULL
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
wsrep_thread_count 0
|
||||
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@global.wsrep_provider
|
||||
/usr/lib/galera/libgalera_smm.so
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
@@global.wsrep_cluster_address
|
||||
NULL
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
wsrep_thread_count 0
|
||||
|
||||
# Setting wsrep_cluster_address triggers the creation of
|
||||
# applier/rollbacker threads.
|
||||
SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
# Wait for applier threads to get created.
|
||||
SELECT @@global.wsrep_provider;
|
||||
@@global.wsrep_provider
|
||||
/usr/lib/galera/libgalera_smm.so
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
@@global.wsrep_cluster_address
|
||||
gcomm://
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
wsrep_thread_count 2
|
||||
|
||||
SET @wsrep_slave_threads_saved= @@global.wsrep_slave_threads;
|
||||
SET GLOBAL wsrep_slave_threads= 10;
|
||||
# Wait for applier threads to get created.
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
Variable_name Value
|
||||
Threads_connected 1
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
Variable_name Value
|
||||
wsrep_thread_count 11
|
||||
SET GLOBAL wsrep_slave_threads= @wsrep_slave_threads_saved;
|
||||
SET GLOBAL wsrep_provider= none;
|
||||
SET GLOBAL wsrep_cluster_address= '';
|
||||
SET GLOBAL wsrep_provider_options= '';
|
||||
# End of test.
|
||||
|
@ -1 +1 @@
|
||||
--binlog-format=row --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --wsrep-provider=/usr/lib/galera/libgalera_smm.so --wsrep-cluster-address=gcomm:// --wsrep-on=1 --log-bin
|
||||
--binlog-format=row --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --wsrep-provider=$WSREP_PROVIDER --wsrep-cluster-address=gcomm:// --wsrep-on=1 --log-bin
|
||||
|
@ -1 +1 @@
|
||||
--binlog-format=row --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --wsrep-provider=/usr/lib/galera/libgalera_smm.so --wsrep-cluster-address=gcomm:// --thread_handling=pool-of-threads
|
||||
--binlog-format=row --innodb_autoinc_lock_mode=2 --innodb_locks_unsafe_for_binlog=1 --wsrep-provider=$WSREP_PROVIDER --wsrep-cluster-address=gcomm:// --thread_handling=pool-of-threads
|
||||
|
@ -1 +0,0 @@
|
||||
--binlog-format=row --wsrep-provider=/usr/lib/galera/libgalera_smm.so --wsrep-cluster-address=gcomm://
|
@ -5,6 +5,10 @@
|
||||
--echo #
|
||||
--echo # Testing wsrep_replicate_myisam variable.
|
||||
|
||||
--disable_query_log
|
||||
eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
--enable_query_log
|
||||
|
||||
--error ER_INCORRECT_GLOBAL_LOCAL_VAR
|
||||
SELECT @@session.wsrep_replicate_myisam;
|
||||
SELECT @@global.wsrep_replicate_myisam;
|
||||
@ -30,15 +34,22 @@ SHOW GLOBAL STATUS LIKE 'wsrep%';
|
||||
--replace_column 2 #
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_%';
|
||||
|
||||
--replace_column 2 #
|
||||
SHOW GLOBAL STATUS LIKE 'wsrep_local_state_comment';
|
||||
|
||||
--echo # Should show nothing.
|
||||
SHOW STATUS LIKE 'x';
|
||||
|
||||
SET GLOBAL wsrep_provider=none;
|
||||
|
||||
--echo #
|
||||
--echo # MDEV#6079: xtrabackup SST failing with maria-10.0-galera
|
||||
--echo #
|
||||
|
||||
--disable_query_log
|
||||
eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
--enable_query_log
|
||||
|
||||
# The following 2 variables are used in innobackupex during xtrabackup-based
|
||||
# SST.
|
||||
--echo
|
||||
@ -48,4 +59,52 @@ SHOW STATUS LIKE 'wsrep_local_state_uuid';
|
||||
--replace_column 2 #
|
||||
SHOW STATUS LIKE 'wsrep_last_committed';
|
||||
|
||||
SET GLOBAL wsrep_provider=none;
|
||||
|
||||
--echo
|
||||
--echo #
|
||||
--echo # MDEV#6206: wsrep_slave_threads subtracts from max_connections
|
||||
--echo #
|
||||
call mtr.add_suppression("safe_mutex: Found wrong usage of mutex 'LOCK_wsrep_slave_threads' and 'LOCK_global_system_variables'");
|
||||
call mtr.add_suppression("WSREP: Failed to get provider options");
|
||||
SELECT @@global.wsrep_provider;
|
||||
SELECT @@global.wsrep_slave_threads;
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
--echo
|
||||
|
||||
--disable_query_log
|
||||
eval SET GLOBAL wsrep_provider= '$WSREP_PROVIDER';
|
||||
--enable_query_log
|
||||
SELECT @@global.wsrep_provider;
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
--echo
|
||||
|
||||
--echo # Setting wsrep_cluster_address triggers the creation of
|
||||
--echo # applier/rollbacker threads.
|
||||
SET GLOBAL wsrep_cluster_address= 'gcomm://';
|
||||
--echo # Wait for applier threads to get created.
|
||||
sleep 3;
|
||||
SELECT @@global.wsrep_provider;
|
||||
SELECT @@global.wsrep_cluster_address;
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
--echo
|
||||
|
||||
SET @wsrep_slave_threads_saved= @@global.wsrep_slave_threads;
|
||||
SET GLOBAL wsrep_slave_threads= 10;
|
||||
--echo # Wait for applier threads to get created.
|
||||
sleep 3;
|
||||
SHOW STATUS LIKE 'threads_connected';
|
||||
SHOW STATUS LIKE 'wsrep_thread_count';
|
||||
|
||||
# reset (for mtr internal checks)
|
||||
SET GLOBAL wsrep_slave_threads= @wsrep_slave_threads_saved;
|
||||
SET GLOBAL wsrep_provider= none;
|
||||
SET GLOBAL wsrep_cluster_address= '';
|
||||
SET GLOBAL wsrep_provider_options= '';
|
||||
|
||||
--echo # End of test.
|
||||
|
@ -28,6 +28,9 @@ export PATH="/usr/sbin:/sbin:$PATH"
|
||||
|
||||
. $(dirname $0)/wsrep_sst_common
|
||||
|
||||
# Setting the path for lsof on CentOS
|
||||
export PATH="/usr/sbin:/sbin:$PATH"
|
||||
|
||||
wsrep_check_programs rsync
|
||||
|
||||
cleanup_joiner()
|
||||
@ -57,6 +60,11 @@ check_pid_and_port()
|
||||
local rsync_pid=$2
|
||||
local rsync_port=$3
|
||||
|
||||
if ! which lsof > /dev/null; then
|
||||
wsrep_log_error "lsof tool not found in PATH! Make sure you have it installed."
|
||||
exit 2 # ENOENT
|
||||
fi
|
||||
|
||||
local port_info=$(lsof -i :$rsync_port -Pn 2>/dev/null | \
|
||||
grep "(LISTEN)")
|
||||
local is_rsync=$(echo $port_info | \
|
||||
|
@ -76,6 +76,7 @@
|
||||
#include "wsrep_var.h"
|
||||
#include "wsrep_thd.h"
|
||||
#include "wsrep_sst.h"
|
||||
ulong wsrep_running_threads = 0; // # of currently running wsrep threads
|
||||
#endif
|
||||
#include "sql_callback.h"
|
||||
#include "threadpool.h"
|
||||
@ -2820,9 +2821,19 @@ void thd_cleanup(THD *thd)
|
||||
|
||||
void dec_connection_count(THD *thd)
|
||||
{
|
||||
#ifdef WITH_WSREP
|
||||
/*
|
||||
Do not decrement when its wsrep system thread. wsrep_applier is set for
|
||||
applier as well as rollbacker threads.
|
||||
*/
|
||||
if (!thd->wsrep_applier)
|
||||
#endif /* WITH_WSREP */
|
||||
{
|
||||
DBUG_ASSERT(*thd->scheduler->connection_count > 0);
|
||||
mysql_mutex_lock(&LOCK_connection_count);
|
||||
(*thd->scheduler->connection_count)--;
|
||||
mysql_mutex_unlock(&LOCK_connection_count);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -2999,7 +3010,7 @@ bool one_thread_per_connection_end(THD *thd, bool put_in_cache)
|
||||
set_current_thd(0);
|
||||
|
||||
#ifdef WITH_WSREP
|
||||
if (put_in_cache && cache_thread() && !thd->wsrep_applier)
|
||||
if (put_in_cache && cache_thread() && !wsrep_applier)
|
||||
#else
|
||||
if (put_in_cache && cache_thread())
|
||||
#endif /* WITH_WSREP */
|
||||
@ -5346,14 +5357,21 @@ pthread_handler_t start_wsrep_THD(void *arg)
|
||||
thd->set_time();
|
||||
thd->init_for_queries();
|
||||
|
||||
mysql_mutex_lock(&LOCK_connection_count);
|
||||
++connection_count;
|
||||
mysql_mutex_unlock(&LOCK_connection_count);
|
||||
mysql_mutex_lock(&LOCK_thread_count);
|
||||
wsrep_running_threads++;
|
||||
mysql_cond_broadcast(&COND_thread_count);
|
||||
mysql_mutex_unlock(&LOCK_thread_count);
|
||||
|
||||
processor(thd);
|
||||
|
||||
close_connection(thd, 0);
|
||||
|
||||
mysql_mutex_lock(&LOCK_thread_count);
|
||||
wsrep_running_threads--;
|
||||
WSREP_DEBUG("wsrep running threads now: %lu", wsrep_running_threads);
|
||||
mysql_cond_broadcast(&COND_thread_count);
|
||||
mysql_mutex_unlock(&LOCK_thread_count);
|
||||
|
||||
// Note: We can't call THD destructor without crashing
|
||||
// if plugins have not been initialized. However, in most of the
|
||||
// cases this means that pre SE initialization SST failed and
|
||||
@ -8723,6 +8741,7 @@ SHOW_VAR status_vars[]= {
|
||||
{"wsrep_provider_name", (char*) &wsrep_provider_name, SHOW_CHAR_PTR},
|
||||
{"wsrep_provider_version", (char*) &wsrep_provider_version, SHOW_CHAR_PTR},
|
||||
{"wsrep_provider_vendor", (char*) &wsrep_provider_vendor, SHOW_CHAR_PTR},
|
||||
{"wsrep_thread_count", (char*) &wsrep_running_threads, SHOW_LONG_NOFLUSH},
|
||||
{"wsrep", (char*) &wsrep_show_status, SHOW_FUNC},
|
||||
#endif
|
||||
{NullS, NullS, SHOW_LONG}
|
||||
|
@ -308,10 +308,10 @@ unpack_row(rpl_group_info *rgi,
|
||||
#ifndef DBUG_OFF
|
||||
uchar const *const old_pack_ptr= pack_ptr;
|
||||
#else
|
||||
#if WITH_WSREP
|
||||
#ifdef WITH_WSREP
|
||||
uchar const *const old_pack_ptr= pack_ptr;
|
||||
#endif
|
||||
#endif
|
||||
#endif /* WITH_WSREP */
|
||||
#endif /* !DBUF_OFF */
|
||||
pack_ptr= f->unpack(f->ptr, pack_ptr, row_end, metadata);
|
||||
DBUG_PRINT("debug", ("field: %s; metadata: 0x%x;"
|
||||
" pack_ptr: 0x%lx; pack_ptr': 0x%lx; bytes: %d",
|
||||
@ -320,7 +320,9 @@ unpack_row(rpl_group_info *rgi,
|
||||
(int) (pack_ptr - old_pack_ptr)));
|
||||
if (!pack_ptr)
|
||||
{
|
||||
/* Debug message to troubleshoot bug:
|
||||
#ifdef WITH_WSREP
|
||||
/*
|
||||
Debug message to troubleshoot bug:
|
||||
https://mariadb.atlassian.net/browse/MDEV-4404
|
||||
*/
|
||||
WSREP_WARN("ROW event unpack field: %s metadata: 0x%x;"
|
||||
@ -330,6 +332,7 @@ unpack_row(rpl_group_info *rgi,
|
||||
(ulong) old_pack_ptr, conv_table, conv_field,
|
||||
(table_found) ? "found" : "not found", (ulong)row_end
|
||||
);
|
||||
#endif /* WITH_WSREP */
|
||||
|
||||
rgi->rli->report(ERROR_LEVEL, ER_SLAVE_CORRUPT_EVENT,
|
||||
"Could not read field '%s' of table '%s.%s'",
|
||||
|
@ -1071,8 +1071,9 @@ bool do_command(THD *thd)
|
||||
command != COM_TIME &&
|
||||
command != COM_END
|
||||
) {
|
||||
my_error(ER_UNKNOWN_COM_ERROR, MYF(0),
|
||||
"WSREP has not yet prepared node for application use");
|
||||
my_message(ER_UNKNOWN_COM_ERROR,
|
||||
"WSREP has not yet prepared node for application use",
|
||||
MYF(0));
|
||||
thd->protocol->end_statement();
|
||||
return_value= FALSE;
|
||||
goto out;
|
||||
@ -2642,8 +2643,9 @@ mysql_execute_command(THD *thd)
|
||||
strncmp(thd->query(), mysqldump_magic_str, mysqldump_magic_str_len))
|
||||
{
|
||||
#endif /* DIRTY_HACK */
|
||||
my_error(ER_UNKNOWN_COM_ERROR, MYF(0),
|
||||
"WSREP has not yet prepared node for application use");
|
||||
my_message(ER_UNKNOWN_COM_ERROR,
|
||||
"WSREP has not yet prepared node for application use",
|
||||
MYF(0));
|
||||
goto error;
|
||||
#if DIRTY_HACK
|
||||
}
|
||||
|
Reference in New Issue
Block a user