Skip to content

Commit

Permalink
cleanup: galera merge, simple changes
Browse files Browse the repository at this point in the history
  • Loading branch information
vuvova committed Oct 1, 2014
1 parent b04f848 commit 3620910
Show file tree
Hide file tree
Showing 69 changed files with 493 additions and 700 deletions.
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,11 @@ scripts/mysqld_safe
scripts/mysqldumpslow
scripts/mysqlhotcopy
scripts/mytop
scripts/wsrep_sst_common
scripts/wsrep_sst_mysqldump
scripts/wsrep_sst_rsync
scripts/wsrep_sst_xtrabackup
scripts/wsrep_sst_xtrabackup-v2
sql-bench/bench-count-distinct
sql-bench/bench-init.pl
sql-bench/compare-results
Expand Down Expand Up @@ -200,6 +205,8 @@ support-files/mysql.server
support-files/mysql.spec
support-files/mysqld_multi.server
support-files/ndb-config-2-node.ini
support-files/wsrep.cnf
support-files/wsrep_notify
tags
tests/async_queries
tests/bug25714
Expand Down
7 changes: 4 additions & 3 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -376,9 +376,6 @@ ADD_SUBDIRECTORY(vio)
ADD_SUBDIRECTORY(mysys)
ADD_SUBDIRECTORY(mysys_ssl)
ADD_SUBDIRECTORY(libmysql)
IF(WITH_WSREP)
ADD_SUBDIRECTORY(wsrep)
ENDIF()
ADD_SUBDIRECTORY(client)
ADD_SUBDIRECTORY(extra)
ADD_SUBDIRECTORY(libservices)
Expand All @@ -395,6 +392,10 @@ IF(NOT WITHOUT_SERVER)
ADD_SUBDIRECTORY(libmysqld/examples)
ENDIF(WITH_EMBEDDED_SERVER)

IF(WITH_WSREP)
ADD_SUBDIRECTORY(wsrep)
ENDIF()

ADD_SUBDIRECTORY(mysql-test)
ADD_SUBDIRECTORY(mysql-test/lib/My/SafeProcess)
ADD_SUBDIRECTORY(sql-bench)
Expand Down
1 change: 0 additions & 1 deletion client/client_priv.h
Original file line number Diff line number Diff line change
Expand Up @@ -92,7 +92,6 @@ enum options_client
OPT_REPORT_PROGRESS,
OPT_SKIP_ANNOTATE_ROWS_EVENTS,
OPT_SSL_CRL, OPT_SSL_CRLPATH,
OPT_GALERA_SST_MODE,
OPT_MAX_CLIENT_OPTION /* should be always the last */
};

Expand Down
2 changes: 1 addition & 1 deletion client/mysqldump.c
Original file line number Diff line number Diff line change
Expand Up @@ -347,7 +347,7 @@ static struct my_option my_long_options[] =
{"force", 'f', "Continue even if we get an SQL error.",
&ignore_errors, &ignore_errors, 0, GET_BOOL, NO_ARG,
0, 0, 0, 0, 0, 0},
{"galera-sst-mode", OPT_GALERA_SST_MODE,
{"galera-sst-mode", 0,
"This mode should normally be used in mysqldump snapshot state transfer "
"(SST) in a Galera cluster. If enabled, mysqldump additionally dumps "
"commands to turn off binary logging and SET global gtid_binlog_state "
Expand Down
7 changes: 6 additions & 1 deletion cmake/cpack_rpm.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -149,8 +149,13 @@ SETA(CPACK_RPM_test_PACKAGE_PROVIDES

SETA(CPACK_RPM_server_PACKAGE_REQUIRES
"${CPACK_RPM_PACKAGE_REQUIRES}"
"MariaDB-client" "galera" "rsync" "lsof" "socat" "grep" "gawk" "iproute"
"MariaDB-client")

IF(WITH_WSREP)
SETA(CPACK_RPM_server_PACKAGE_REQUIRES
"galera" "rsync" "lsof" "socat" "grep" "gawk" "iproute"
"coreutils" "findutils")
ENDIF()

SET(CPACK_RPM_server_PRE_INSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/support-files/rpm/server-prein.sh)
SET(CPACK_RPM_server_PRE_UNINSTALL_SCRIPT_FILE ${CMAKE_SOURCE_DIR}/support-files/rpm/server-preun.sh)
Expand Down
17 changes: 1 addition & 16 deletions cmake/plugin.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -155,14 +155,6 @@ MACRO(MYSQL_ADD_PLUGIN)
ENDIF()
ENDIF()

IF (WITH_WSREP)
# Set compile definitions for non-embedded plugins
LIST(APPEND wsrep_definitions "WITH_WSREP")
LIST(APPEND wsrep_definitions "WSREP_PROC_INFO")
SET_TARGET_PROPERTIES(${target} PROPERTIES
COMPILE_DEFINITIONS "${wsrep_definitions}")
ENDIF()

IF(ARG_STATIC_OUTPUT_NAME)
SET_TARGET_PROPERTIES(${target} PROPERTIES
OUTPUT_NAME ${ARG_STATIC_OUTPUT_NAME})
Expand Down Expand Up @@ -195,15 +187,8 @@ MACRO(MYSQL_ADD_PLUGIN)
ADD_LIBRARY(${target} MODULE ${SOURCES})
DTRACE_INSTRUMENT(${target})

LIST(APPEND dyn_compile_definitions "MYSQL_DYNAMIC_PLUGIN")

IF (WITH_WSREP)
LIST(APPEND dyn_compile_definitions "WITH_WSREP")
LIST(APPEND dyn_compile_definitions "WSREP_PROC_INFO")
ENDIF()

SET_TARGET_PROPERTIES (${target} PROPERTIES PREFIX ""
COMPILE_DEFINITIONS "${dyn_compile_definitions}")
COMPILE_DEFINITIONS "MYSQL_DYNAMIC_PLUGIN")

TARGET_LINK_LIBRARIES (${target} mysqlservices ${ARG_LINK_LIBRARIES})

Expand Down
51 changes: 17 additions & 34 deletions cmake/wsrep.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,17 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

#
# Galera library does not compile with windows
#
IF(UNIX)
SET(with_wsrep_default ON)
ELSE()
SET(with_wsrep_default OFF)
ENDIF()

OPTION(WITH_WSREP "WSREP replication API (to use, e.g. Galera Replication library)" ${with_wsrep_default})

# Set the patch version
SET(WSREP_PATCH_VERSION "10")

Expand All @@ -32,42 +43,14 @@ IF (DEFINED ENV{WSREP_REV})
SET(WSREP_PATCH_REVNO $ENV{WSREP_REV})
ENDIF()

# Obtain wsrep API version
EXECUTE_PROCESS(
COMMAND sh -c "grep WSREP_INTERFACE_VERSION ${MySQL_SOURCE_DIR}/wsrep/wsrep_api.h | cut -d '\"' -f 2"
OUTPUT_VARIABLE WSREP_API_VERSION
RESULT_VARIABLE RESULT
)
#FILE(WRITE "wsrep_config" "Debug: WSREP_API_VERSION result: ${RESULT}\n")
STRING(REGEX REPLACE "(\r?\n)+$" "" WSREP_API_VERSION "${WSREP_API_VERSION}")
SET(WSREP_INTERFACE_VERSION 25)

IF(NOT WSREP_PATCH_REVNO)
MESSAGE(WARNING "Could not determine bzr revision number, WSREP_VERSION will "
"not contain the revision number.")
SET(WSREP_VERSION
"${WSREP_API_VERSION}.${WSREP_PATCH_VERSION}"
)
ELSE()
SET(WSREP_VERSION
"${WSREP_API_VERSION}.${WSREP_PATCH_VERSION}.r${WSREP_PATCH_REVNO}"
)
ENDIF()
SET(WSREP_VERSION
"${WSREP_INTERFACE_VERSION}.${WSREP_PATCH_VERSION}.r${WSREP_PATCH_REVNO}")

#
# Galera library does not compile with windows and solaris
#
IF(UNIX)
OPTION(WITH_WSREP "WSREP replication API (to use, e.g. Galera Replication library)" ON)
ELSE()
OPTION(WITH_WSREP "WSREP replication API (to use, e.g. Galera Replication library)" OFF)
ENDIF()
SET(WSREP_PROC_INFO ${WITH_WSREP})

MACRO (BUILD_WITH_WSREP)
SET(WSREP_C_FLAGS "-DWITH_WSREP -DWSREP_PROC_INFO -DMYSQL_MAX_VARIABLE_VALUE_LEN=2048")
SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${WSREP_C_FLAGS}")
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${WSREP_C_FLAGS}")
IF(WITH_WSREP)
SET(COMPILATION_COMMENT "${COMPILATION_COMMENT}, wsrep_${WSREP_VERSION}")
#SET(WITH_EMBEDDED_SERVER OFF CACHE INTERNAL "" FORCE)
ENDMACRO()
ENDIF()

#
6 changes: 6 additions & 0 deletions config.h.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -642,6 +642,12 @@
#cmakedefine SIZEOF_TIME_T @SIZEOF_TIME_T@
#cmakedefine TIME_T_UNSIGNED @TIME_T_UNSIGNED@

#ifndef EMBEDDED_LIBRARY
#cmakedefine WSREP_INTERFACE_VERSION "@WSREP_INTERFACE_VERSION@"
#cmakedefine WITH_WSREP 1
#cmakedefine WSREP_PROC_INFO 1
#endif

#ifdef _AIX
/*
AIX includes inttypes.h from sys/types.h
Expand Down
6 changes: 5 additions & 1 deletion debian/dist/Debian/control
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,11 @@ Architecture: any
Suggests: tinyca, mailx, mariadb-test
Recommends: libhtml-template-perl
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), mariadb-server-core-10.1 (>= ${binary:Version}), galera (>=25.2), rsync, lsof, socat, grep, gawk, iproute, coreutils, findutils
Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl,
perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd,
lsb-base (>= 3.0-10), mariadb-server-core-10.1 (>= ${binary:Version}),
galera (>=25.2), rsync, lsof, socat | netcat, grep, gawk, iproute,
coreutils, findutils
Provides: mariadb-server, mysql-server, virtual-mysql-server
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
Expand Down
6 changes: 5 additions & 1 deletion debian/dist/Ubuntu/control
Original file line number Diff line number Diff line change
Expand Up @@ -186,7 +186,11 @@ Architecture: any
Suggests: tinyca, mailx, mariadb-test
Recommends: libhtml-template-perl
Pre-Depends: mariadb-common, adduser (>= 3.40), debconf
Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl, perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd, lsb-base (>= 3.0-10), mariadb-server-core-10.1 (>= ${binary:Version}), galera (>=25.2), rsync, lsof, socat, grep, gawk, iproute, coreutils, findutils
Depends: mariadb-client-10.1 (>= ${source:Version}), libdbi-perl,
perl (>= 5.6), ${shlibs:Depends}, ${misc:Depends}, psmisc, passwd,
lsb-base (>= 3.0-10), mariadb-server-core-10.1 (>= ${binary:Version}),
galera (>=25.2), rsync, lsof, socat | netcat, grep, gawk, iproute,
coreutils, findutils
Provides: mariadb-server, mysql-server, virtual-mysql-server
Conflicts: mariadb-server (<< ${source:Version}), mysql-server (<< ${source:Version}),
mysql-server-4.1, mysql-server-5.0, mysql-server-5.1, mysql-server-5.5,
Expand Down
4 changes: 3 additions & 1 deletion include/wsrep.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,10 @@
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */

#include <my_config.h>

#ifndef WSREP_INCLUDED
#define WSERP_INCLUDED
#define WSREP_INCLUDED

#ifdef WITH_WSREP
#define IF_WSREP(A,B) A
Expand Down
8 changes: 4 additions & 4 deletions mysql-test/include/have_wsrep_enabled.inc
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

--source include/have_wsrep.inc

--require r/have_wsrep.require
disable_query_log;
SHOW VARIABLES LIKE 'wsrep_on';
enable_query_log;
if (`SELECT COUNT(*)=0 FROM INFORMATION_SCHEMA.GLOBAL_VARIABLES WHERE VARIABLE_NAME = 'wsrep_on' AND VARIABLE_VALUE='ON'`)
{
--skip Test requires wsrep_on=ON
}
3 changes: 1 addition & 2 deletions mysql-test/include/write_result_to_file.inc
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,7 @@
--let _WRTF_SERVER_NUMBER= $server_number
if (!$server_number)
{
# Note: 2 extra ports are reserved per server for galera use.
--let _WRTF_SERVER_NUMBER= `SELECT 1 + FLOOR((@@PORT - $MASTER_MYPORT) / 3)`
--let _WRTF_SERVER_NUMBER= `SELECT 1 + @@PORT - $MASTER_MYPORT`
}

--let $_write_result_msg= [server=$_WRTF_SERVER_NUMBER]
Expand Down
3 changes: 0 additions & 3 deletions mysql-test/lib/My/ConfigFactory.pm
Original file line number Diff line number Diff line change
Expand Up @@ -238,9 +238,6 @@ my @mysqld_rules=
{ 'pid-file' => \&fix_pidfile },
{ '#host' => \&fix_host },
{ 'port' => \&fix_port },
# galera base_port and port used during SST
{ '#galera_port' => \&fix_port },
{ '#sst_port' => \&fix_port },
{ 'socket' => \&fix_socket },
{ '#log-error' => \&fix_log_error },
{ 'general-log' => 1 },
Expand Down
2 changes: 0 additions & 2 deletions mysql-test/r/have_wsrep.require

This file was deleted.

4 changes: 4 additions & 0 deletions mysql-test/suite/galera/galera_2nodes.cnf
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@

[mysqld.1]
binlog-format=row
#galera_port=OPT.port
#sst_port=OPT.port
wsrep_provider=@ENV.WSREP_PROVIDER
wsrep_cluster_address='gcomm://'
wsrep_provider_options='base_port=@mysqld.1.#galera_port'
Expand All @@ -12,6 +14,8 @@ wsrep_causal_reads=ON

[mysqld.2]
binlog-format=row
#galera_port=OPT.port
#sst_port=OPT.port
wsrep_provider=@ENV.WSREP_PROVIDER
wsrep_cluster_address='gcomm://127.0.0.1:@mysqld.1.#galera_port'
wsrep_provider_options='base_port=@mysqld.2.#galera_port'
Expand Down
12 changes: 6 additions & 6 deletions mysql-test/suite/roles/set_default_role_for.result
Original file line number Diff line number Diff line change
Expand Up @@ -21,17 +21,17 @@ Grants for user_a@localhost
GRANT role_a TO 'user_a'@'localhost'
GRANT USAGE ON *.* TO 'user_a'@'localhost'
GRANT SELECT ON *.* TO 'role_a'
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';
user host default_role
user_a localhost role_a
user_b localhost role_b
set default role NONE for current_user;
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';
user host default_role
user_a localhost
user_b localhost role_b
set default role current_role for current_user;
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';
user host default_role
user_a localhost role_a
user_b localhost role_b
Expand All @@ -42,7 +42,7 @@ Grants for user_b@localhost
GRANT role_b TO 'user_b'@'localhost'
GRANT USAGE ON *.* TO 'user_b'@'localhost'
GRANT INSERT, UPDATE ON *.* TO 'role_b'
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';
ERROR 42000: SELECT command denied to user 'user_b'@'localhost' for table 'user'
insert into mysql.user (user, host) values ('someuser', 'somehost');
Warnings:
Expand All @@ -56,10 +56,10 @@ Grants for user_a@localhost
GRANT role_a TO 'user_a'@'localhost'
GRANT USAGE ON *.* TO 'user_a'@'localhost'
GRANT INSERT, UPDATE ON *.* TO 'role_b'
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';
ERROR 42000: SELECT command denied to user 'user_a'@'localhost' for table 'user'
drop role role_a;
drop role role_b;
delete from mysql.user where user = 'someuser' && host = 'somehost' order by user;
delete from mysql.user where user = 'someuser' && host = 'somehost';
drop user user_a@localhost;
drop user user_b@localhost;
12 changes: 6 additions & 6 deletions mysql-test/suite/roles/set_default_role_for.test
Original file line number Diff line number Diff line change
Expand Up @@ -44,13 +44,13 @@ set default role role_b for user_b@localhost;
change_user 'user_a';

show grants;
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';

set default role NONE for current_user;
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';

set default role current_role for current_user;
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';

# Make sure we can't set a default role not granted to us, using current_user
--error ER_INVALID_ROLE
Expand All @@ -60,7 +60,7 @@ change_user 'user_b';

show grants;
--error ER_TABLEACCESS_DENIED_ERROR
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';

# Make sure the default role setting worked from root.
insert into mysql.user (user, host) values ('someuser', 'somehost');
Expand All @@ -73,12 +73,12 @@ change_user 'user_a';
# There is no default role set any more.
show grants;
--error ER_TABLEACCESS_DENIED_ERROR
select user, host, default_role from mysql.user where user like 'user_%' order by user;
select user, host, default_role from mysql.user where user like 'user_%';

change_user 'root';

drop role role_a;
drop role role_b;
delete from mysql.user where user = 'someuser' && host = 'somehost' order by user;
delete from mysql.user where user = 'someuser' && host = 'somehost';
drop user user_a@localhost;
drop user user_b@localhost;
5 changes: 0 additions & 5 deletions mysql-test/t/mysql_tzinfo_to_sql_symlink.test
Original file line number Diff line number Diff line change
Expand Up @@ -7,11 +7,6 @@
# the updated result. (lp:1161432)
--source include/not_wsrep.inc

# Note: The output of mysql_tzinfo_to_sql is different if server is compiled
# with wsrep. Hence a copy of this test has been placed under wsrep suite with
# the updated result. (lp:1161432)
--source include/not_wsrep.inc

--echo #
--echo # MDEV-5226 mysql_tzinfo_to_sql errors with tzdata 2013f and above
--echo #
Expand Down
4 changes: 0 additions & 4 deletions mysys/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,10 +15,6 @@

INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR} ${CMAKE_SOURCE_DIR}/include ${CMAKE_SOURCE_DIR}/mysys)

IF(WITH_WSREP)
BUILD_WITH_WSREP()
ENDIF()

SET(MYSYS_SOURCES array.c charset-def.c charset.c checksum.c my_default.c
errors.c hash.c list.c
mf_cache.c mf_dirname.c mf_fn_ext.c
Expand Down
1 change: 0 additions & 1 deletion sql/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@


IF(WITH_WSREP AND NOT EMBEDDED_LIBRARY)
BUILD_WITH_WSREP()
SET(WSREP_INCLUDES ${CMAKE_SOURCE_DIR}/wsrep)
SET(WSREP_SOURCES
wsrep_check_opts.cc
Expand Down
Loading

0 comments on commit 3620910

Please sign in to comment.