Index: Mk/Uses/mysql.mk =================================================================== --- Mk/Uses/mysql.mk +++ Mk/Uses/mysql.mk @@ -63,6 +63,7 @@ MYSQL55p_LIBVER= 18 MYSQL56_LIBVER= 18 MYSQL56p_LIBVER= 18 +MYSQL56w_LIBVER= 18 MYSQL57_LIBVER= 20 MYSQL57p_LIBVER= 20 MYSQL80_LIBVER= 21 @@ -106,15 +107,21 @@ .endif .if (${MYSQL_VER:C/[0-9]*//} == "m") -_MYSQL_FLAVOUR= mariadb +_MYSQL_SERVER_FLAVOUR= mariadb +_MYSQL_CLIENT_FLAVOUR= mariadb .elif (${MYSQL_VER:C/[0-9]*//} == "p") -_MYSQL_FLAVOUR= percona +_MYSQL_SERVER_FLAVOUR= percona +_MYSQL_CLIENT_FLAVOUR= percona +.elif (${MYSQL_VER:C/[0-9]*//} == "w") +_MYSQL_SERVER_FLAVOUR= mysqlwsrep +_MYSQL_CLIENT_FLAVOUR= mysql .else -_MYSQL_FLAVOUR= mysql +_MYSQL_SERVER_FLAVOUR= mysql +_MYSQL_CLIENT_FLAVOUR= mysql .endif -_MYSQL_CLIENT= databases/${_MYSQL_FLAVOUR}${MYSQL_VER:C/[mp]//}-client -_MYSQL_SERVER= databases/${_MYSQL_FLAVOUR}${MYSQL_VER:C/[mp]//}-server +_MYSQL_CLIENT= databases/${_MYSQL_CLIENT_FLAVOUR}${MYSQL_VER:C/[mp]//}-client +_MYSQL_SERVER= databases/${_MYSQL_SERVER_FLAVOUR}${MYSQL_VER:C/[mp]//}-server # And now we are checking if we can use it .if defined(MYSQL${MYSQL_VER}_LIBVER) Index: Mk/bsd.default-versions.mk =================================================================== --- Mk/bsd.default-versions.mk +++ Mk/bsd.default-versions.mk @@ -54,7 +54,7 @@ .endif # Possible values: 5.1, 5.2, 5.3 LUA_DEFAULT?= 5.2 -# Possible values: 5.1, 5.5, 5.6, 5.7, 8.0, 5.5m, 10.0m, 10.1m, 5.5p, 5.6p, 5.7p +# Possible values: 5.1, 5.5, 5.6, 5.7, 8.0, 5.5m, 10.0m, 10.1m, 5.5p, 5.6p, 5.6w, 5.7p MYSQL_DEFAULT?= 5.6 # Possible values: 5.20, 5.22, 5.24, devel .if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \ Index: databases/Makefile =================================================================== --- databases/Makefile +++ databases/Makefile @@ -226,6 +226,7 @@ SUBDIR += mysql57-server SUBDIR += mysql80-client SUBDIR += mysql80-server + SUBDIR += mysqlwsrep56-server SUBDIR += mysqlbackup SUBDIR += mysqlbigram SUBDIR += mysqldump-secure Index: databases/mysqlwsrep56-server/Makefile =================================================================== --- databases/mysqlwsrep56-server/Makefile +++ databases/mysqlwsrep56-server/Makefile @@ -1,96 +1,67 @@ -# Created by: Alex Dupre +# Created by: Philip Stoev # $FreeBSD$ -PORTNAME?= mysql +PORTNAME= mysqlwsrep PORTVERSION= 5.6.35 -PORTREVISION?= 3 CATEGORIES= databases ipv6 -MASTER_SITES= MYSQL/MySQL-5.6 -PKGNAMESUFFIX?= 56-server +MASTER_SITES= http://releases.galeracluster.com/source/ +PKGNAMESUFFIX= 56-server +DISTNAME= mysql-wsrep-5.6.35-25.19 -MAINTAINER= mokhi64@gmail.com -COMMENT?= Multithreaded SQL database (server) +MAINTAINER= info@galeracluster.com +COMMENT?= MySQL database enhanced with Galera replication (server package) LICENSE= GPLv2 -SLAVEDIRS= databases/mysql56-client -USES= bison:build cmake:outsource compiler:c11 compiler:c++11-lib \ - cpe libedit localbase perl5 shebangfix ssl +BUILD_DEPENDS= bison:devel/bison +RUN_DEPENDS= socat:net/socat lsof:sysutils/lsof netcat:net/netcat rsync:net/rsync -USE_PERL5= run +DATADIR= ${PREFIX}/share/mysql + +BROKEN_powerpc64= Does not build -MY_DBDIR= /var/db/mysql -MY_SECDIR= /var/db/mysql_secure -MY_TMPDIR= /var/db/mysql_tmpdir - -LIB_DEPENDS+= libevent.so:devel/libevent2 \ - liblz4.so:archivers/liblz4 - -CMAKE_BUILD_TYPE= Release - -CMAKE_ARGS+= -DINSTALL_LAYOUT=FREEBSD \ - -DINSTALL_LDCONFIGDIR="${LOCALBASE}/libdata/ldconfig" \ - -DINSTALL_PKGCONFIGDIR="${LOCALBASE}/libdata/pkgconfig" \ - -DINSTALL_DOCDIR="share/doc/mysql" \ +USES= cmake shebangfix +USE_LDCONFIG= yes + +CMAKE_ARGS+= -DINSTALL_DOCDIR="share/doc/mysql" \ -DINSTALL_DOCREADMEDIR="share/doc/mysql" \ -DINSTALL_INCLUDEDIR="include/mysql" \ -DINSTALL_INFODIR="info" \ -DINSTALL_LIBDIR="lib/mysql" \ -DINSTALL_MANDIR="man" \ - -DINSTALL_MYSQLDATADIR="${MY_DBDIR}" \ - -DINSTALL_MYSQLKEYRINGDIR="etc/mysql/keyring" \ + -DINSTALL_MYSQLDATADIR="/var/db/mysql" \ -DINSTALL_MYSQLSHAREDIR="share/mysql" \ -DINSTALL_MYSQLTESTDIR="share/mysql/tests" \ -DINSTALL_PLUGINDIR="lib/mysql/plugin" \ -DINSTALL_SBINDIR="libexec" \ -DINSTALL_SCRIPTDIR="bin" \ - -DINSTALL_SECURE_FILE_PRIVDIR="${MY_SECDIR}" \ -DINSTALL_SHAREDIR="share" \ -DINSTALL_SQLBENCHDIR="share/mysql" \ -DINSTALL_SUPPORTFILESDIR="share/mysql" \ - -DMYSQL_KEYRINGDIR="${ETCDIR}/keyring" \ - -DWITH_BOOST="${WRKSRC}/boost" \ -DWITH_EDITLINE=system \ - -DWITH_LIBEVENT=system \ - -DWITH_LZ4=system \ - -DWITH_ZLIB=system \ - -DWITH_SSL=${OPENSSLBASE} \ - -DCRYPTO_LIBRARY=${OPENSSLLIB}/libcrypto.so \ - -DOPENSSL_LIBRARY=${OPENSSLLIB}/libssl.so \ - -DINSTALL_MYSQLTESTDIR=0 + -DWITH_LIBWRAP=1 \ + -DWITH_WSREP=1 -SHEBANG_FILES= scripts/*.pl* scripts/*.sh +SHEBANG_FILES= scripts/*.pl* scripts/*.sh scripts/wsrep_sst_* .ifdef USE_MYSQL .error You have `USE_MYSQL' variable defined either in environment or in make(1) arguments. Please undefine and try again. .endif -SUB_LIST= MY_DBDIR=${MY_DBDIR} \ - MY_SECDIR=${MY_SECDIR} \ - MY_TMPDIR=${MY_TMPDIR} - -PLIST_SUB= MY_DBDIR=${MY_DBDIR} \ - MY_SECDIR=${MY_SECDIR} \ - MY_TMPDIR=${MY_TMPDIR} - # MySQL-Server part .if !defined(CLIENT_ONLY) -USES+= mysql:56 +USES+= perl5 +USE_PERL5= run -CONFLICTS_INSTALL= mysql5[0-57-9]-server-* \ - mysql[0-46-9][0-9]-server-* \ - mariadb[0-9][0-9]-server-* \ - percona[0-9][0-9]-server-* +CONFLICTS_INSTALL= mysql5[0-9]-server-* \ + mariadb*-server-* \ + percona*-server-* USE_RC_SUBR= mysql-server -SUB_FILES= my.cnf.sample - USERS= mysql GROUPS= mysql -USE_LDCONFIG+= ${PREFIX}/lib/mysql/plugin - MMAN1= my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 \ mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 \ mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 \ @@ -98,52 +69,14 @@ mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 \ mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1 -CMAKE_ARGS+= -DWITH_EMBEDDED_SERVER="ON" - -OPTIONS_GROUP= STORAGE -OPTIONS_GROUP_STORAGE= ARCHIVE BLACKHOLE EXAMPLE FEDERATED INNOBASE PARTITION PERFSCHEMA -OPTIONS_SUB= YES -STORAGE_DESC= Permissible "Storage Engines" (to compile statically into the server) -ARCHIVE_DESC= Compile "Archive Storage" statically in server -BLACKHOLE_DESC= Compile "Blackhole Storage" statically in server -EXAMPLE_DESC= Compile "Example Storage" statically in server -FEDERATED_DESC= Compile "Federated Storage" statically in server -INNOBASE_DESC= Compile "InnoDB Storage" statically in server -PARTITION_DESC= Compile "Partitioning support Storage" statically in server -PERFSCHEMA_DESC= Compile "Performance Schema Storage" statically in server - -ARCHIVE_CMAKE_ON= -DWITH_ARCHIVE_STORAGE_ENGINE=1 -BLACKHOLE_CMAKE_ON= -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -EXAMPLE_CMAKE_ON= -DWITH_EXAMPLE_STORAGE_ENGINE=1 -FEDERATED_CMAKE_ON= -DWITH_FEDERATED_STORAGE_ENGINE=1 -INNOBASE_CMAKE_ON= -DWITH_INNOBASE_STORAGE_ENGINE=1 -PARTITION_CMAKE_ON= -DWITH_PARTITION_STORAGE_ENGINE=1 -PERFSCHEMA_CMAKE_ON= -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 - -OPTIONS_GROUP+= FEATURES -OPTIONS_GROUP_FEATURES= PERFSCHM -FEATURES_DESC= Default features knobs -PERFSCHM_DESC= Enable "Performance Schema" by default (High RAM usage) -OPTIONS_DEFAULT+= PERFSCHM - -PERFSCHM_SUB_LIST+= PERFSCHEMRC="" -PERFSCHM_SUB_LIST_OFF+= PERFSCHEMRC="--skip-performance-schema" +.else +USES+= libedit .endif -.include - post-patch: @${REINPLACE_CMD} 's/*.1/${MMAN1}/' ${WRKSRC}/man/CMakeLists.txt -.if !defined(CLIENT_ONLY) -post-install: - ${MKDIR} ${STAGEDIR}${ETCDIR} - ${INSTALL_DATA} ${WRKDIR}/my.cnf.sample ${STAGEDIR}${ETCDIR}/my.cnf.sample - - ${MKDIR} ${STAGEDIR}${ETCDIR}/keyring - ${MKDIR} ${STAGEDIR}${MY_SECDIR} - ${MKDIR} ${STAGEDIR}${MY_TMPDIR} -.endif +.include .if ${ARCH} == "armv6" EXTRA_PATCHES+= ${FILESDIR}/extra-patch-config.h.cmake Index: databases/mysqlwsrep56-server/distinfo =================================================================== --- databases/mysqlwsrep56-server/distinfo +++ databases/mysqlwsrep56-server/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1484753208 -SHA256 (mysql-5.6.35.tar.gz) = dddcba169b98844d7c65346cbd791c853edf942d78440381685087b84aa35020 -SIZE (mysql-5.6.35.tar.gz) = 32167628 +TIMESTAMP = 1486024045 +SHA256 (mysql-wsrep-5.6.35-25.19.tar.gz) = f7bf200c5d5379cf616d901fcf701c8bad11658e06b1d8e25cb50d7164ee229c +SIZE (mysql-wsrep-5.6.35-25.19.tar.gz) = 33180905 Index: databases/mysqlwsrep56-server/files/mysql-server.in =================================================================== --- databases/mysqlwsrep56-server/files/mysql-server.in +++ databases/mysqlwsrep56-server/files/mysql-server.in @@ -47,6 +47,25 @@ start_postcmd="${name}_poststart" mysql_install_db="%%PREFIX%%/bin/mysql_install_db" mysql_install_db_args="--basedir=%%PREFIX%% --defaults-extra-file=${mysql_optfile} --datadir=${mysql_dbdir} --force" +service_startup_timeout=900 +startup_sleep=1 +sst_progress_file=${mysql_dbdir}/sst_in_progress +extra_commands="bootstrap" +bootstrap_cmd="mysql_bootstrap" +for gcc in gcc44 gcc48 +do + gcc_dir=/usr/local/lib/${gcc} + [ -d "${gcc_dir}" ] && export LD_LIBRARY_PATH="${gcc_dir}:$LD_LIBRARY_PATH" +done + +mysql_bootstrap() +{ + # Bootstrap the cluster, start the first node that initiate the cluster + check_startmsgs && echo "Bootstrapping cluster" + shift + command_args="$command_args --wsrep-new-cluster" + run_rc_command ${_rc_prefix}start +} mysql_create_auth_tables() { @@ -68,12 +87,16 @@ mysql_poststart() { - local timeout=15 - while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do - timeout=$(( timeout - 1 )) - sleep 1 - done - return 0 + local timeout=${service_startup_timeout} + while [ ! -f "${pidfile}" -a ${timeout} -gt 0 ]; do + if test -e $sst_progress_file && [ $startup_sleep -ne 100 ]; then + check_startmsgs && echo "SST in progress, setting sleep higher" + startup_sleep=100 + fi + timeout=$(( timeout - 1 )) + sleep $startup_sleep + done + return 0 } run_rc_command "$1" Index: databases/mysqlwsrep56-server/files/patch-CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-CMakeLists.txt @@ -1,6 +1,6 @@ ---- CMakeLists.txt.orig 2014-07-18 15:48:39.000000000 +0000 -+++ CMakeLists.txt 2014-08-04 14:18:38.795491147 +0000 -@@ -500,12 +500,10 @@ +--- CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ CMakeLists.txt +@@ -499,12 +499,10 @@ IF(UNIX) ENDIF() IF(NOT WITHOUT_SERVER) @@ -13,7 +13,7 @@ ENDIF(WITH_EMBEDDED_SERVER) ENDIF() -@@ -514,10 +512,7 @@ +@@ -513,10 +511,7 @@ ENDIF() ADD_SUBDIRECTORY(scripts) IF(NOT WITHOUT_SERVER) @@ -24,7 +24,7 @@ IF(EXISTS ${CMAKE_SOURCE_DIR}/internal/CMakeLists.txt) ADD_SUBDIRECTORY(internal) ENDIF() -@@ -572,6 +567,7 @@ +@@ -574,6 +569,7 @@ ENDIF() # # RPM installs documentation directly from the source tree # @@ -32,10 +32,11 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") INSTALL(FILES COPYING LICENSE.mysql DESTINATION ${INSTALL_DOCREADMEDIR} -@@ -597,5 +593,6 @@ +@@ -597,6 +593,7 @@ IF(NOT INSTALL_LAYOUT MATCHES "RPM") PATTERN "sp-imp-spec.txt" EXCLUDE ) ENDIF() +ENDIF() INCLUDE(CPack) + Index: databases/mysqlwsrep56-server/files/patch-client_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-client_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-client_CMakeLists.txt @@ -1,6 +1,6 @@ ---- client/CMakeLists.txt.orig 2013-05-21 17:18:39.000000000 +0200 -+++ client/CMakeLists.txt 2013-06-10 15:43:33.000000000 +0200 -@@ -31,17 +31,20 @@ +--- client/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ client/CMakeLists.txt +@@ -31,17 +31,20 @@ INCLUDE_DIRECTORIES( COPY_OPENSSL_DLLS(copy_openssl_client) ADD_DEFINITIONS(${SSL_DEFINES}) @@ -21,9 +21,9 @@ MYSQL_ADD_EXECUTABLE(mysqlcheck mysqlcheck.c) TARGET_LINK_LIBRARIES(mysqlcheck mysqlclient) -@@ -50,17 +53,21 @@ - +@@ -51,17 +54,21 @@ TARGET_LINK_LIBRARIES(mysqldump mysqlcli MYSQL_ADD_EXECUTABLE(mysqlimport mysqlimport.c) + SET_SOURCE_FILES_PROPERTIES(mysqlimport.c PROPERTIES COMPILE_FLAGS "-DTHREADS") TARGET_LINK_LIBRARIES(mysqlimport mysqlclient) +ENDIF() @@ -43,7 +43,7 @@ MYSQL_ADD_EXECUTABLE(mysqlbinlog mysqlbinlog.cc) TARGET_LINK_LIBRARIES(mysqlbinlog mysqlclient) -@@ -73,6 +80,7 @@ +@@ -74,6 +81,7 @@ TARGET_LINK_LIBRARIES(mysqlslap mysqlcli MYSQL_ADD_EXECUTABLE(mysql_config_editor mysql_config_editor.cc) TARGET_LINK_LIBRARIES(mysql_config_editor mysqlclient) @@ -51,7 +51,7 @@ # "WIN32" also covers 64 bit. "echo" is used in some files below "mysql-test/". IF(WIN32) -@@ -82,11 +90,6 @@ +@@ -83,11 +91,6 @@ ENDIF(WIN32) SET_TARGET_PROPERTIES ( mysql_plugin mysql_upgrade Index: databases/mysqlwsrep56-server/files/patch-cmake_plugin.cmake =================================================================== --- databases/mysqlwsrep56-server/files/patch-cmake_plugin.cmake +++ databases/mysqlwsrep56-server/files/patch-cmake_plugin.cmake @@ -1,6 +1,6 @@ ---- cmake/plugin.cmake.orig 2011-09-09 17:56:39.000000000 +0200 -+++ cmake/plugin.cmake 2011-10-07 10:56:37.000000000 +0200 -@@ -195,7 +195,6 @@ +--- cmake/plugin.cmake.orig 2017-01-25 07:58:07 UTC ++++ cmake/plugin.cmake +@@ -205,7 +205,6 @@ MACRO(MYSQL_ADD_PLUGIN) OUTPUT_NAME "${ARG_MODULE_OUTPUT_NAME}") # Install dynamic library MYSQL_INSTALL_TARGETS(${target} DESTINATION ${INSTALL_PLUGINDIR} COMPONENT Server) Index: databases/mysqlwsrep56-server/files/patch-extra_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-extra_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-extra_CMakeLists.txt @@ -1,8 +1,8 @@ ---- extra/CMakeLists.txt.orig 2013-01-22 17:54:50.000000000 +0100 -+++ extra/CMakeLists.txt 2013-02-13 14:35:11.000000000 +0100 -@@ -102,8 +102,10 @@ +--- extra/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ extra/CMakeLists.txt +@@ -101,8 +101,10 @@ IF(UNIX) + MYSQL_ADD_EXECUTABLE(resolve_stack_dump resolve_stack_dump.cc) TARGET_LINK_LIBRARIES(resolve_stack_dump mysys mysys_ssl) - SET_TARGET_PROPERTIES(resolve_stack_dump PROPERTIES LINKER_LANGUAGE CXX) +IF(FALSE) MYSQL_ADD_EXECUTABLE(mysql_waitpid mysql_waitpid.c) Index: databases/mysqlwsrep56-server/files/patch-include_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-include_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-include_CMakeLists.txt @@ -1,6 +1,6 @@ ---- include/CMakeLists.txt.orig 2013-01-22 17:54:49.000000000 +0100 -+++ include/CMakeLists.txt 2013-02-13 14:53:40.000000000 +0100 -@@ -65,10 +65,12 @@ +--- include/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ include/CMakeLists.txt +@@ -65,10 +65,12 @@ SET(HEADERS ${HEADERS_GEN_CONFIGURE} ) Index: databases/mysqlwsrep56-server/files/patch-include_my__compare.h =================================================================== --- databases/mysqlwsrep56-server/files/patch-include_my__compare.h +++ databases/mysqlwsrep56-server/files/patch-include_my__compare.h @@ -1,6 +1,6 @@ ---- include/my_compare.h.orig 2011-05-10 09:46:46.000000000 +0200 -+++ include/my_compare.h 2011-05-10 09:47:01.000000000 +0200 -@@ -39,7 +39,7 @@ +--- include/my_compare.h.orig 2017-01-25 07:58:07 UTC ++++ include/my_compare.h +@@ -39,7 +39,7 @@ extern "C" { But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and HA_MAX_KEY_LENGTH. */ Index: databases/mysqlwsrep56-server/files/patch-include_myisam.h =================================================================== --- databases/mysqlwsrep56-server/files/patch-include_myisam.h +++ databases/mysqlwsrep56-server/files/patch-include_myisam.h @@ -1,6 +1,6 @@ ---- include/myisam.h.orig 2009-02-16 23:04:54.000000000 +0100 -+++ include/myisam.h 2009-02-16 23:10:08.000000000 +0100 -@@ -48,7 +48,7 @@ +--- include/myisam.h.orig 2017-01-25 07:58:07 UTC ++++ include/myisam.h +@@ -49,7 +49,7 @@ extern "C" { The following defines can be increased if necessary. But beware the dependency of MI_MAX_POSSIBLE_KEY_BUFF and MI_MAX_KEY_LENGTH. */ Index: databases/mysqlwsrep56-server/files/patch-libmysql_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-libmysql_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-libmysql_CMakeLists.txt @@ -1,6 +1,6 @@ ---- libmysql/CMakeLists.txt.orig 2013-07-10 18:17:29.000000000 +0200 -+++ libmysql/CMakeLists.txt 2013-08-12 08:59:49.000000000 +0200 -@@ -173,7 +173,7 @@ +--- libmysql/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ libmysql/CMakeLists.txt +@@ -180,7 +180,7 @@ IF(WIN32) ENDIF() # Merge several convenience libraries into one big mysqlclient @@ -9,7 +9,7 @@ # Visual Studio users need debug static library for debug projects IF(MSVC) -@@ -200,19 +200,22 @@ +@@ -208,19 +208,22 @@ IF(UNIX) ENDMACRO() ENDIF() @@ -33,7 +33,7 @@ IF(UNIX) # libtool compatability IF(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR APPLE) -@@ -271,4 +274,5 @@ +@@ -289,4 +292,5 @@ IF(NOT DISABLE_SHARED) ${INSTALL_LIBDIR} SharedLibraries) ENDFOREACH() ENDIF() Index: databases/mysqlwsrep56-server/files/patch-libservices_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-libservices_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-libservices_CMakeLists.txt @@ -1,7 +1,7 @@ ---- libservices/CMakeLists.txt.orig 2010-12-23 17:13:03.000000000 +0100 -+++ libservices/CMakeLists.txt 2010-12-23 17:13:17.000000000 +0100 -@@ -22,4 +22,6 @@ - my_thread_scheduler_service.c) +--- libservices/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ libservices/CMakeLists.txt +@@ -24,4 +24,6 @@ SET(MYSQLSERVICES_SOURCES + mysql_string_service.c) ADD_LIBRARY(mysqlservices ${MYSQLSERVICES_SOURCES}) +IF(FALSE) Index: databases/mysqlwsrep56-server/files/patch-man_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-man_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-man_CMakeLists.txt @@ -1,11 +1,13 @@ ---- man/CMakeLists.txt.orig 2011-10-22 14:36:06.000000000 +0200 -+++ man/CMakeLists.txt 2011-10-22 14:36:23.000000000 +0200 -@@ -15,8 +15,6 @@ +--- man/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ man/CMakeLists.txt +@@ -14,9 +14,7 @@ + # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # Copy man pages - FILE(GLOB MAN1_FILES *.1) +-FILE(GLOB MAN1_FILES *.1) -FILE(GLOB MAN1_EXCLUDE make_win_bin_dist.1) -FILE(GLOB MAN1_NDB ndb*.1) ++FILE(GLOB MAN1_FILES my_print_defaults.1 myisam_ftdump.1 myisamchk.1 myisamlog.1 myisampack.1 mysql.server.1 mysql_convert_table_format.1 mysql_fix_extensions.1 mysql_install_db.1 mysql_plugin.1 mysql_secure_installation.1 mysql_setpermission.1 mysql_tzinfo_to_sql.1 mysql_upgrade.1 mysql_zap.1 mysqlbug.1 mysqld_multi.1 mysqld_safe.1 mysqldumpslow.1 mysqlhotcopy.1 mysqlman.1 mysqltest.1 perror.1 replace.1 resolve_stack_dump.1 resolveip.1) FILE(GLOB MAN8_FILES *.8) FILE(GLOB MAN8_NDB ndb*.8) IF(MAN1_FILES) Index: databases/mysqlwsrep56-server/files/patch-mysys__ssl_my__default.cc =================================================================== --- databases/mysqlwsrep56-server/files/patch-mysys__ssl_my__default.cc +++ databases/mysqlwsrep56-server/files/patch-mysys__ssl_my__default.cc @@ -1,7 +1,7 @@ ---- mysys_ssl/my_default.cc.orig 2016-11-28 13:36:22 UTC +--- mysys_ssl/my_default.cc.orig 2017-01-25 07:58:07 UTC +++ mysys_ssl/my_default.cc -@@ -110,7 +110,7 @@ static my_bool defaults_already_read= FA - +@@ -116,7 +116,7 @@ char wsrep_defaults_group_suffix[FN_EXTL + #endif /* WITH_WREP */ /* Which directories are searched for options (and in which order) */ -#define MAX_DEFAULT_DIRS 6 @@ -9,48 +9,18 @@ #define DEFAULT_DIRS_SIZE (MAX_DEFAULT_DIRS + 1) /* Terminate with NULL */ static const char **default_directories = NULL; -@@ -903,6 +903,14 @@ static int search_default_file_with_ext( - return 1; /* Ignore wrong files */ - } +@@ -1423,7 +1423,10 @@ static const char **init_default_directo -+ if (strstr(name, "/etc") == name) + #if defined(DEFAULT_SYSCONFDIR) + if (DEFAULT_SYSCONFDIR[0]) + { -+ fprintf(stderr, -+ "error: Config file %s in invalid location, please move to or merge with /usr/local%s\n", -+ name,name); -+ goto err; + errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); ++ errors += add_directory(alloc, DEFAULT_SYSCONFDIR "/mysql", dirs); + } -+ - while (mysql_file_getline(buff, sizeof(buff) - 1, fp, is_login_file)) - { - line++; -@@ -1241,7 +1249,8 @@ void my_print_default_files(const char * - end[(strlen(end)-1)] = ' '; - else - strxmov(end, conf_file, *ext , " ", NullS); -- fputs(name, stdout); -+ if (strstr(name, "/etc") != name) -+ fputs(name, stdout); - } - } - } -@@ -1400,13 +1409,8 @@ static const char **init_default_directo - - #else - -- errors += add_directory(alloc, "/etc/", dirs); -- errors += add_directory(alloc, "/etc/mysql/", dirs); -- --#if defined(DEFAULT_SYSCONFDIR) -- if (DEFAULT_SYSCONFDIR[0]) -- errors += add_directory(alloc, DEFAULT_SYSCONFDIR, dirs); --#endif /* DEFAULT_SYSCONFDIR */ -+ errors += add_directory(alloc, "/usr/local/etc/", dirs); -+ errors += add_directory(alloc, "/usr/local/etc/mysql/", dirs); + #endif /* DEFAULT_SYSCONFDIR */ #endif - -@@ -1477,7 +1481,7 @@ int check_file_permissions(const char *f +@@ -1495,7 +1498,7 @@ int check_file_permissions(const char *f MY_STAT stat_info; if (!my_stat(file_name,&stat_info,MYF(0))) Index: databases/mysqlwsrep56-server/files/patch-plugin_password__validation_validate__password.cc =================================================================== --- databases/mysqlwsrep56-server/files/patch-plugin_password__validation_validate__password.cc +++ databases/mysqlwsrep56-server/files/patch-plugin_password__validation_validate__password.cc @@ -1,5 +1,5 @@ ---- plugin/password_validation/validate_password.cc.orig 2013-09-10 07:38:25.000000000 +0000 -+++ plugin/password_validation/validate_password.cc 2013-10-05 15:40:20.790380179 +0000 +--- plugin/password_validation/validate_password.cc.orig 2017-01-25 07:58:07 UTC ++++ plugin/password_validation/validate_password.cc @@ -16,6 +16,8 @@ #include #include @@ -7,5 +7,5 @@ +/* solve clash between libc++ bitset::test() and test macro from my_global.h */ +#undef test #include + #include // std::streamoff #include - #include Index: databases/mysqlwsrep56-server/files/patch-scripts_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-scripts_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-scripts_CMakeLists.txt @@ -1,6 +1,6 @@ ---- scripts/CMakeLists.txt.orig 2013-01-22 17:54:49.000000000 +0100 -+++ scripts/CMakeLists.txt 2013-02-13 14:39:57.000000000 +0100 -@@ -264,6 +264,8 @@ +--- scripts/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ scripts/CMakeLists.txt +@@ -298,6 +298,8 @@ MACRO(EXTRACT_LINK_LIBRARIES target var) GET_FILENAME_COMPONENT(lib "${lib}" NAME_WE) STRING(REGEX REPLACE "^lib" "" lib "${lib}") SET(${var} "${${var}}-l${lib} " ) @@ -9,7 +9,7 @@ ELSE() SET(${var} "${${var}}-l${lib} " ) ENDIF() -@@ -314,15 +316,10 @@ +@@ -360,15 +362,10 @@ ELSE() # On Unix, most of the files end up in the bin directory SET(mysql_config_COMPONENT COMPONENT Development) SET(BIN_SCRIPTS @@ -25,7 +25,7 @@ mysqlhotcopy mysqldumpslow mysqld_multi -@@ -331,7 +328,7 @@ +@@ -378,7 +375,7 @@ ELSE() FOREACH(file ${BIN_SCRIPTS}) IF(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh) CONFIGURE_FILE(${CMAKE_CURRENT_SOURCE_DIR}/${file}.sh Index: databases/mysqlwsrep56-server/files/patch-scripts_mysqld__safe.sh =================================================================== --- databases/mysqlwsrep56-server/files/patch-scripts_mysqld__safe.sh +++ databases/mysqlwsrep56-server/files/patch-scripts_mysqld__safe.sh @@ -1,6 +1,6 @@ ---- scripts/mysqld_safe.sh.orig 2007-10-08 10:39:23.000000000 +0200 -+++ scripts/mysqld_safe.sh 2007-10-08 10:40:52.000000000 +0200 -@@ -242,10 +242,10 @@ +--- scripts/mysqld_safe.sh.orig 2017-02-02 08:29:11 UTC ++++ scripts/mysqld_safe.sh +@@ -546,10 +546,10 @@ fi if test -z "$MYSQL_HOME" then @@ -13,7 +13,7 @@ $DATADIR/my.cnf IGNORING $DATADIR/my.cnf" -@@ -254,7 +254,7 @@ +@@ -558,7 +558,7 @@ IGNORING $DATADIR/my.cnf" then log_error "WARNING: Found $DATADIR/my.cnf The data directory is a deprecated location for my.cnf, please move it to Index: databases/mysqlwsrep56-server/files/patch-sql_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-sql_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-sql_CMakeLists.txt @@ -1,6 +1,6 @@ ---- sql/CMakeLists.txt.orig 2013-04-05 14:27:18.000000000 +0200 -+++ sql/CMakeLists.txt 2013-04-19 15:08:12.000000000 +0200 -@@ -423,6 +423,7 @@ +--- sql/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ sql/CMakeLists.txt +@@ -472,6 +472,7 @@ ADD_CUSTOM_TARGET(distclean IF(INSTALL_LAYOUT STREQUAL "STANDALONE") @@ -8,7 +8,7 @@ # Copy db.opt into data/test/ SET(DBOPT_FILE ${CMAKE_CURRENT_SOURCE_DIR}/db.opt ) INSTALL(FILES ${DBOPT_FILE} DESTINATION data/test COMPONENT DataFiles) -@@ -467,6 +468,7 @@ +@@ -516,6 +517,7 @@ ELSE() INSTALL(FILES ${DUMMY_FILE} DESTINATION data/mysql COMPONENT DataFiles) ENDIF() ENDIF() Index: databases/mysqlwsrep56-server/files/patch-sql_sql__trigger.cc =================================================================== --- databases/mysqlwsrep56-server/files/patch-sql_sql__trigger.cc +++ databases/mysqlwsrep56-server/files/patch-sql_sql__trigger.cc @@ -1,6 +1,6 @@ ---- sql/sql_trigger.cc.orig 2012-08-02 00:01:13.000000000 +0200 -+++ sql/sql_trigger.cc 2012-09-11 17:01:13.000000000 +0200 -@@ -192,32 +192,32 @@ static File_option triggers_file_parameters[]= +--- sql/sql_trigger.cc.orig 2017-01-25 07:58:07 UTC ++++ sql/sql_trigger.cc +@@ -192,32 +192,32 @@ static File_option triggers_file_paramet { { { C_STRING_WITH_LEN("triggers") }, @@ -39,7 +39,7 @@ FILE_OPTIONS_STRLIST }, { { 0, 0 }, 0, FILE_OPTIONS_STRING } -@@ -226,7 +226,7 @@ static File_option triggers_file_parameters[]= +@@ -226,7 +226,7 @@ static File_option triggers_file_paramet File_option sql_modes_parameters= { { C_STRING_WITH_LEN("sql_modes") }, Index: databases/mysqlwsrep56-server/files/patch-sql_sql__view.cc =================================================================== --- databases/mysqlwsrep56-server/files/patch-sql_sql__view.cc +++ databases/mysqlwsrep56-server/files/patch-sql_sql__view.cc @@ -1,6 +1,6 @@ ---- sql/sql_view.cc.orig 2012-08-02 00:01:13.000000000 +0200 -+++ sql/sql_view.cc 2012-09-11 17:01:13.000000000 +0200 -@@ -730,46 +730,46 @@ static const int required_view_parameters= 14; +--- sql/sql_view.cc.orig 2017-01-25 07:58:07 UTC ++++ sql/sql_view.cc +@@ -767,46 +767,46 @@ static const int required_view_parameter */ static File_option view_parameters[]= {{{ C_STRING_WITH_LEN("query")}, Index: databases/mysqlwsrep56-server/files/patch-sql_sys__vars.cc =================================================================== --- databases/mysqlwsrep56-server/files/patch-sql_sys__vars.cc +++ databases/mysqlwsrep56-server/files/patch-sql_sys__vars.cc @@ -1,6 +1,6 @@ ---- sql/sys_vars.cc.orig 2012-06-15 17:03:32.000000000 +0200 -+++ sql/sys_vars.cc 2012-06-15 17:16:23.000000000 +0200 -@@ -900,7 +900,7 @@ +--- sql/sys_vars.cc.orig 2017-01-25 07:58:07 UTC ++++ sql/sys_vars.cc +@@ -1412,7 +1412,7 @@ static Sys_var_ulong Sys_interactive_tim "connection before closing it", SESSION_VAR(net_interactive_timeout), CMD_LINE(REQUIRED_ARG), @@ -9,7 +9,7 @@ static Sys_var_ulong Sys_join_buffer_size( "join_buffer_size", -@@ -1401,7 +1401,7 @@ +@@ -2000,7 +2000,7 @@ static Sys_var_ulong Sys_net_read_timeou "Number of seconds to wait for more data from a connection before " "aborting the read", SESSION_VAR(net_read_timeout), CMD_LINE(REQUIRED_ARG), @@ -18,7 +18,7 @@ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0), ON_UPDATE(fix_net_read_timeout)); -@@ -1416,7 +1416,7 @@ +@@ -2015,7 +2015,7 @@ static Sys_var_ulong Sys_net_write_timeo "Number of seconds to wait for a block to be written to a connection " "before aborting the write", SESSION_VAR(net_write_timeout), CMD_LINE(REQUIRED_ARG), @@ -27,7 +27,7 @@ NO_MUTEX_GUARD, NOT_IN_BINLOG, ON_CHECK(0), ON_UPDATE(fix_net_write_timeout)); -@@ -2257,7 +2257,7 @@ +@@ -3148,7 +3148,7 @@ static Sys_var_ulong Sys_net_wait_timeou "The number of seconds the server waits for activity on a " "connection before closing it", SESSION_VAR(net_wait_timeout), CMD_LINE(REQUIRED_ARG), @@ -35,4 +35,4 @@ + VALID_RANGE(1, INT_MAX32/1000), DEFAULT(NET_WAIT_TIMEOUT), BLOCK_SIZE(1)); - /** propagates changes to the relevant flag of @@optimizer_switch */ + static Sys_var_plugin Sys_default_storage_engine( Index: databases/mysqlwsrep56-server/files/patch-support-files_CMakeLists.txt =================================================================== --- databases/mysqlwsrep56-server/files/patch-support-files_CMakeLists.txt +++ databases/mysqlwsrep56-server/files/patch-support-files_CMakeLists.txt @@ -1,6 +1,6 @@ ---- support-files/CMakeLists.txt.orig 2010-12-23 17:38:19.000000000 +0100 -+++ support-files/CMakeLists.txt 2010-12-23 17:41:11.000000000 +0100 -@@ -74,7 +74,9 @@ +--- support-files/CMakeLists.txt.orig 2017-01-25 07:58:07 UTC ++++ support-files/CMakeLists.txt +@@ -69,7 +69,9 @@ IF(UNIX) INSTALL(FILES magic DESTINATION ${inst_location} COMPONENT SupportFiles) ENDIF() @@ -9,4 +9,4 @@ +ENDIF() CONFIGURE_FILE(MySQL-shared-compat.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/MySQL-shared-compat.spec @ONLY) CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.spec @ONLY) - CONFIGURE_FILE(mysql.spec.sh ${CMAKE_CURRENT_BINARY_DIR}/mysql.${VERSION}.spec @ONLY) + Index: databases/mysqlwsrep56-server/pkg-descr =================================================================== --- databases/mysqlwsrep56-server/pkg-descr +++ databases/mysqlwsrep56-server/pkg-descr @@ -2,3 +2,7 @@ (Structured Query Language) database server. WWW: http://www.mysql.com/ + +Built with wsrep patch to support replication using the Galera library. + +WWW: http://www.galeracluster.com/ Index: databases/mysqlwsrep56-server/pkg-message =================================================================== --- databases/mysqlwsrep56-server/pkg-message +++ databases/mysqlwsrep56-server/pkg-message @@ -1,19 +1,6 @@ -***************************************************************************** +************************************************************************ Remember to run mysql_upgrade the first time you start the MySQL server after an upgrade from an earlier version. -Initial password for first time use of MySQL is saved in $HOME/.mysql_secret -ie. when you want to use "mysql -u root -p" first you should see password -in /root/.mysql_secret - -***************************************************************************** - -***************************************************************************** - -Please keep in mind that the default location for my.cnf will be changed -from "/var/db/mysql/my.cnf" to "/usr/local/etc/mysql/my.cnf" in the near -future. If you do not want to move your my.cnf to the new location then -you must set "mysql_optfile" in /etc/rc.conf to "/var/db/mysql/my.cnf". - -***************************************************************************** +************************************************************************ Index: databases/mysqlwsrep56-server/pkg-plist =================================================================== --- databases/mysqlwsrep56-server/pkg-plist +++ databases/mysqlwsrep56-server/pkg-plist @@ -23,14 +23,17 @@ bin/replace bin/resolve_stack_dump bin/resolveip -lib/mysql/libmysqld.a +bin/wsrep_sst_common +bin/wsrep_sst_mysqldump +bin/wsrep_sst_rsync +bin/wsrep_sst_xtrabackup +bin/wsrep_sst_xtrabackup-v2 lib/mysql/plugin/adt_null.so lib/mysql/plugin/auth.so lib/mysql/plugin/auth_test_plugin.so lib/mysql/plugin/connection_control.so lib/mysql/plugin/daemon_example.ini lib/mysql/plugin/libdaemon_example.so -%%EXAMPLE%%lib/mysql/plugin/ha_example.so lib/mysql/plugin/mypluglib.so lib/mysql/plugin/mysql_no_login.so lib/mysql/plugin/qa_auth_client.so @@ -40,6 +43,8 @@ lib/mysql/plugin/semisync_slave.so lib/mysql/plugin/test_udf_services.so lib/mysql/plugin/validate_password.so +lib/mysql/plugin/innodb_engine.so +lib/mysql/plugin/libmemcached.so libexec/mysqld man/man1/my_print_defaults.1.gz man/man1/myisam_ftdump.1.gz @@ -68,6 +73,7 @@ man/man1/resolve_stack_dump.1.gz man/man1/resolveip.1.gz man/man8/mysqld.8.gz +share/mysql/wsrep_notify %%DATADIR%%/binary-configure %%DATADIR%%/bulgarian/errmsg.sys %%DATADIR%%/charsets/Index.xml @@ -132,7 +138,3 @@ %%DATADIR%%/spanish/errmsg.sys %%DATADIR%%/swedish/errmsg.sys %%DATADIR%%/ukrainian/errmsg.sys -%%ETCDIR%%/my.cnf.sample -@dir(mysql,mysql,0750) %%ETCDIR%%/keyring -@dir(mysql,mysql,0750) %%MY_SECDIR%% -@dir(mysql,mysql,0750) %%MY_TMPDIR%%