diff --git a/README.install b/README.install index ed5fb13..d67956f 100644 --- a/README.install +++ b/README.install @@ -1,12 +1,14 @@ -You just installed MySQL server for the first time. +You have just installed MariaDB server for the first time. -You can start it using: +You can start it via: + systemctl start mariadb +or rcmysql start -During first start empty database will be created for your automatically. +During the first start, empty database will be created for you automatically. -PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER ! -To do so, start the server, then issue the following commands: +PLEASE REMEMBER TO SET A PASSWORD FOR THE MariaDB root USER! +To do so, start the server and run the following commands: '/usr/bin/mysqladmin' -u root password 'new-password' '/usr/bin/mysqladmin' -u root -h password 'new-password' diff --git a/mariadb-10.1.12-deharcode-libdir.patch b/mariadb-10.1.12-deharcode-libdir.patch deleted file mode 100644 index a1f0524..0000000 --- a/mariadb-10.1.12-deharcode-libdir.patch +++ /dev/null @@ -1,27 +0,0 @@ -PATCH-P0-FIX-SUSE: dehardcode libdir - -Don't expect libdir is set to lib64 on x86_64 only. -There is other occurances like ppc64 and aarch64. -Use %{_libdir} macro instead - -Maintainer: Dinar Valeev - -Index: cmake/install_layout.cmake -=================================================================== ---- cmake/install_layout.cmake.orig -+++ cmake/install_layout.cmake -@@ -137,14 +137,6 @@ SET(INSTALL_SCRIPTDIR_RPM - SET(INSTALL_SYSCONFDIR_RPM "/etc") - SET(INSTALL_SYSCONF2DIR_RPM "/etc/my.cnf.d") - # --IF(CMAKE_SIZEOF_VOID_P EQUAL 8) -- SET(INSTALL_LIBDIR_RPM "lib64") -- SET(INSTALL_PLUGINDIR_RPM "lib64/mysql/plugin") --ELSE() -- SET(INSTALL_LIBDIR_RPM "lib") -- SET(INSTALL_PLUGINDIR_RPM "lib/mysql/plugin") --ENDIF() --# - SET(INSTALL_INCLUDEDIR_RPM "include/mysql") - # - SET(INSTALL_DOCDIR_RPM "share/doc") diff --git a/mariadb-10.2.19-link-and-enable-c++11-atomics.patch b/mariadb-10.2.19-link-and-enable-c++11-atomics.patch index b54e834..b566996 100644 --- a/mariadb-10.2.19-link-and-enable-c++11-atomics.patch +++ b/mariadb-10.2.19-link-and-enable-c++11-atomics.patch @@ -1,276 +1,64 @@ -Index: mariadb-10.2.24/configure.cmake -=================================================================== ---- mariadb-10.2.24.orig/configure.cmake -+++ mariadb-10.2.24/configure.cmake -@@ -946,6 +946,21 @@ ELSEIF(NOT WITH_ATOMIC_OPS) - }" - HAVE_GCC_ATOMIC_BUILTINS) - CHECK_CXX_SOURCE_COMPILES(" -+ #include -+ int main() { -+ uint64_t x = 1; -+ __atomic_add_fetch(&x, 0, __ATOMIC_RELAXED); -+ return x; -+ } -+ " HAVE__ATOMIC_ADD_FETCH) -+ if (NOT HAVE__ATOMIC_ADD_FETCH) -+ check_library_exists(atomic __atomic_add_fetch_8 "" HAVE_LIBATOMIC) -+ if (HAVE_LIBATOMIC) -+ SET(CMAKE_REQUIRED_LIBRARIES atomic) -+ SET(LIBATOMIC atomic) -+ endif() -+ endif() +Author: Vicențiu Ciorbaru +Date: Fri Dec 21 19:14:04 2018 +0200 + + Link with libatomic to enable C11 atomics support + + Some architectures (mips) require libatomic to support proper + atomic operations. Check first if support is available without + linking, otherwise use the library. + +--- a/configure.cmake ++++ b/configure.cmake +@@ -926,7 +926,25 @@ int main() + long long int *ptr= &var; + return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST); + }" +-HAVE_GCC_C11_ATOMICS) ++HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC) ++IF (HAVE_GCC_C11_ATOMICS_WITHOUT_LIBATOMIC) ++ SET(HAVE_GCC_C11_ATOMICS True) ++ELSE() ++ SET(OLD_CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES}) ++ LIST(APPEND CMAKE_REQUIRED_LIBRARIES "atomic") + CHECK_CXX_SOURCE_COMPILES(" - int main() - { - long long int var= 1; -Index: mariadb-10.2.24/include/atomic/gcc_builtins.h -=================================================================== ---- mariadb-10.2.24.orig/include/atomic/gcc_builtins.h -+++ mariadb-10.2.24/include/atomic/gcc_builtins.h -@@ -16,6 +16,72 @@ - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ ++ int main() ++ { ++ long long int var= 1; ++ long long int *ptr= &var; ++ return (int)__atomic_load_n(ptr, __ATOMIC_SEQ_CST); ++ }" ++ HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) ++ IF(HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) ++ SET(HAVE_GCC_C11_ATOMICS True) ++ ENDIF() ++ SET(CMAKE_REQUIRED_LIBRARIES ${OLD_CMAKE_REQUIRED_LIBRARIES}) ++ENDIF() -+#if defined(HAVE_GCC_C11_ATOMICS) -+#define MY_ATOMIC_MODE "gcc-atomics-smp" -+ -+#define MY_MEMORY_ORDER_RELAXED __ATOMIC_RELAXED -+#define MY_MEMORY_ORDER_CONSUME __ATOMIC_CONSUME -+#define MY_MEMORY_ORDER_ACQUIRE __ATOMIC_ACQUIRE -+#define MY_MEMORY_ORDER_RELEASE __ATOMIC_RELEASE -+#define MY_MEMORY_ORDER_ACQ_REL __ATOMIC_ACQ_REL -+#define MY_MEMORY_ORDER_SEQ_CST __ATOMIC_SEQ_CST -+ -+#define my_atomic_store32_explicit(P, D, O) __atomic_store_n((P), (D), (O)) -+#define my_atomic_store64_explicit(P, D, O) __atomic_store_n((P), (D), (O)) -+#define my_atomic_storeptr_explicit(P, D, O) __atomic_store_n((P), (D), (O)) -+ -+#define my_atomic_load32_explicit(P, O) __atomic_load_n((P), (O)) -+#define my_atomic_load64_explicit(P, O) __atomic_load_n((P), (O)) -+#define my_atomic_loadptr_explicit(P, O) __atomic_load_n((P), (O)) -+ -+#define my_atomic_fas32_explicit(P, D, O) __atomic_exchange_n((P), (D), (O)) -+#define my_atomic_fas64_explicit(P, D, O) __atomic_exchange_n((P), (D), (O)) -+#define my_atomic_fasptr_explicit(P, D, O) __atomic_exchange_n((P), (D), (O)) -+ -+#define my_atomic_add32_explicit(P, A, O) __atomic_fetch_add((P), (A), (O)) -+#define my_atomic_add64_explicit(P, A, O) __atomic_fetch_add((P), (A), (O)) -+ -+#define my_atomic_cas32_weak_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), true, (S), (F)) -+#define my_atomic_cas64_weak_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), true, (S), (F)) -+#define my_atomic_casptr_weak_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), true, (S), (F)) -+ -+#define my_atomic_cas32_strong_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), false, (S), (F)) -+#define my_atomic_cas64_strong_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), false, (S), (F)) -+#define my_atomic_casptr_strong_explicit(P, E, D, S, F) \ -+ __atomic_compare_exchange_n((P), (E), (D), false, (S), (F)) -+ -+#define my_atomic_store32(P, D) __atomic_store_n((P), (D), __ATOMIC_SEQ_CST) -+#define my_atomic_store64(P, D) __atomic_store_n((P), (D), __ATOMIC_SEQ_CST) -+#define my_atomic_storeptr(P, D) __atomic_store_n((P), (D), __ATOMIC_SEQ_CST) -+ -+#define my_atomic_load32(P) __atomic_load_n((P), __ATOMIC_SEQ_CST) -+#define my_atomic_load64(P) __atomic_load_n((P), __ATOMIC_SEQ_CST) -+#define my_atomic_loadptr(P) __atomic_load_n((P), __ATOMIC_SEQ_CST) -+ -+#define my_atomic_fas32(P, D) __atomic_exchange_n((P), (D), __ATOMIC_SEQ_CST) -+#define my_atomic_fas64(P, D) __atomic_exchange_n((P), (D), __ATOMIC_SEQ_CST) -+#define my_atomic_fasptr(P, D) __atomic_exchange_n((P), (D), __ATOMIC_SEQ_CST) -+ -+#define my_atomic_add32(P, A) __atomic_fetch_add((P), (A), __ATOMIC_SEQ_CST) -+#define my_atomic_add64(P, A) __atomic_fetch_add((P), (A), __ATOMIC_SEQ_CST) -+ -+#define my_atomic_cas32(P, E, D) \ -+ __atomic_compare_exchange_n((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) -+#define my_atomic_cas64(P, E, D) \ -+ __atomic_compare_exchange_n((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) -+#define my_atomic_casptr(P, E, D) \ -+ __atomic_compare_exchange_n((P), (E), (D), 0, __ATOMIC_SEQ_CST, __ATOMIC_SEQ_CST) -+#else -+#define MY_ATOMIC_MODE "gcc-builtins-smp" -+#define make_atomic_load_body(S) \ -+ ret= __sync_fetch_and_or(a, 0); -+#define make_atomic_store_body(S) \ -+ (void) __sync_lock_test_and_set(a, v); - #define make_atomic_add_body(S) \ - v= __sync_fetch_and_add(a, v); - #define make_atomic_fas_body(S) \ -@@ -25,24 +91,6 @@ - int ## S cmp_val= *cmp; \ - sav= __sync_val_compare_and_swap(a, cmp_val, set);\ - if (!(ret= (sav == cmp_val))) *cmp= sav -- --#ifdef MY_ATOMIC_MODE_DUMMY --#define make_atomic_load_body(S) ret= *a --#define make_atomic_store_body(S) *a= v --#define MY_ATOMIC_MODE "gcc-builtins-up" -- --#elif defined(HAVE_GCC_C11_ATOMICS) --#define MY_ATOMIC_MODE "gcc-atomics-smp" --#define make_atomic_load_body(S) \ -- ret= __atomic_load_n(a, __ATOMIC_SEQ_CST) --#define make_atomic_store_body(S) \ -- __atomic_store_n(a, v, __ATOMIC_SEQ_CST) --#else --#define MY_ATOMIC_MODE "gcc-builtins-smp" --#define make_atomic_load_body(S) \ -- ret= __sync_fetch_and_or(a, 0); --#define make_atomic_store_body(S) \ -- (void) __sync_lock_test_and_set(a, v); - #endif + IF(WITH_VALGRIND) + SET(HAVE_valgrind 1) +--- a/mysys/CMakeLists.txt ++++ b/mysys/CMakeLists.txt +@@ -78,6 +78,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings + ${LIBNSL} ${LIBM} ${LIBRT} ${LIBDL} ${LIBSOCKET} ${LIBEXECINFO} ${CRC32_LIBRARY}) + DTRACE_INSTRUMENT(mysys) - #endif /* ATOMIC_GCC_BUILTINS_INCLUDED */ -Index: mariadb-10.2.24/include/my_atomic.h -=================================================================== ---- mariadb-10.2.24.orig/include/my_atomic.h -+++ mariadb-10.2.24/include/my_atomic.h -@@ -104,7 +104,6 @@ - but can be added, if necessary. - */ - --#define intptr void * - /** - Currently we don't support 8-bit and 16-bit operations. - It can be added later if needed. -@@ -126,18 +125,20 @@ - #include "atomic/generic-msvc.h" - #elif defined(HAVE_SOLARIS_ATOMIC) - #include "atomic/solaris.h" --#elif defined(HAVE_GCC_ATOMIC_BUILTINS) -+#elif defined(HAVE_GCC_ATOMIC_BUILTINS) || defined(HAVE_GCC_C11_ATOMICS) - #include "atomic/gcc_builtins.h" - #elif defined(__GNUC__) && (defined(__i386__) || defined(__x86_64__)) - #include "atomic/x86-gcc.h" - #endif - -- -+#ifndef HAVE_GCC_C11_ATOMICS - #ifndef make_atomic_cas_body - /* nolock.h was not able to generate even a CAS function, fall back */ - #error atomic ops for this platform are not implemented - #endif - -+#define intptr void * ++IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) ++ TARGET_LINK_LIBRARIES(mysys atomic) ++ENDIF() + - /* define missing functions by using the already generated ones */ - #ifndef make_atomic_add_body - #define make_atomic_add_body(S) \ -@@ -297,20 +298,6 @@ make_atomic_store(32) - make_atomic_store(64) - make_atomic_store(ptr) - --#if SIZEOF_LONG == 4 --#define my_atomic_addlong(A,B) my_atomic_add32((int32*) (A), (B)) --#define my_atomic_loadlong(A) my_atomic_load32((int32*) (A)) --#define my_atomic_storelong(A,B) my_atomic_store32((int32*) (A), (B)) --#define my_atomic_faslong(A,B) my_atomic_fas32((int32*) (A), (B)) --#define my_atomic_caslong(A,B,C) my_atomic_cas32((int32*) (A), (int32*) (B), (C)) --#else --#define my_atomic_addlong(A,B) my_atomic_add64((int64*) (A), (B)) --#define my_atomic_loadlong(A) my_atomic_load64((int64*) (A)) --#define my_atomic_storelong(A,B) my_atomic_store64((int64*) (A), (B)) --#define my_atomic_faslong(A,B) my_atomic_fas64((int64*) (A), (B)) --#define my_atomic_caslong(A,B,C) my_atomic_cas64((int64*) (A), (int64*) (B), (C)) --#endif -- - #ifdef _atomic_h_cleanup_ - #include _atomic_h_cleanup_ - #undef _atomic_h_cleanup_ -@@ -345,6 +332,7 @@ make_atomic_store(ptr) - #undef make_atomic_store_body - #undef make_atomic_fas_body - #undef intptr -+#endif - - /* - the macro below defines (as an expression) the code that -@@ -355,6 +343,20 @@ make_atomic_store(ptr) - #define LF_BACKOFF (1) - #endif - -+#if SIZEOF_LONG == 4 -+#define my_atomic_addlong(A,B) my_atomic_add32((int32*) (A), (B)) -+#define my_atomic_loadlong(A) my_atomic_load32((int32*) (A)) -+#define my_atomic_storelong(A,B) my_atomic_store32((int32*) (A), (B)) -+#define my_atomic_faslong(A,B) my_atomic_fas32((int32*) (A), (B)) -+#define my_atomic_caslong(A,B,C) my_atomic_cas32((int32*) (A), (int32*) (B), (C)) -+#else -+#define my_atomic_addlong(A,B) my_atomic_add64((int64*) (A), (B)) -+#define my_atomic_loadlong(A) my_atomic_load64((int64*) (A)) -+#define my_atomic_storelong(A,B) my_atomic_store64((int64*) (A), (B)) -+#define my_atomic_faslong(A,B) my_atomic_fas64((int64*) (A), (B)) -+#define my_atomic_caslong(A,B,C) my_atomic_cas64((int64*) (A), (int64*) (B), (C)) -+#endif -+ - #define MY_ATOMIC_OK 0 - #define MY_ATOMIC_NOT_1CPU 1 - extern int my_atomic_initialize(); -Index: mariadb-10.2.24/libmysqld/CMakeLists.txt -=================================================================== ---- mariadb-10.2.24.orig/libmysqld/CMakeLists.txt -+++ mariadb-10.2.24/libmysqld/CMakeLists.txt -@@ -137,7 +137,7 @@ ENDIF() - - - SET(LIBS -- dbug strings mysys mysys_ssl pcre vio -+ dbug strings mysys mysys_ssl pcre vio ${LIBATOMIC} - ${ZLIB_LIBRARY} ${SSL_LIBRARIES} - ${LIBWRAP} ${LIBCRYPT} ${LIBDL} - ${MYSQLD_STATIC_PLUGIN_LIBS} -Index: mariadb-10.2.24/sql/CMakeLists.txt -=================================================================== ---- mariadb-10.2.24.orig/sql/CMakeLists.txt -+++ mariadb-10.2.24/sql/CMakeLists.txt -@@ -168,7 +168,8 @@ TARGET_LINK_LIBRARIES(sql ${MYSQLD_STATI - ${LIBWRAP} ${LIBCRYPT} ${LIBDL} ${CMAKE_THREAD_LIBS_INIT} - ${WSREP_LIB} - ${SSL_LIBRARIES} -- ${LIBSYSTEMD}) -+ ${LIBSYSTEMD} -+ ${LIBATOMIC}) - - IF(WIN32) - SET(MYSQLD_SOURCE main.cc nt_servc.cc message.rc) -Index: mariadb-10.2.24/storage/perfschema/unittest/CMakeLists.txt -=================================================================== ---- mariadb-10.2.24.orig/storage/perfschema/unittest/CMakeLists.txt -+++ mariadb-10.2.24/storage/perfschema/unittest/CMakeLists.txt -@@ -29,4 +29,4 @@ ADD_DEPENDENCIES(pfs_server_stubs GenErr - - MY_ADD_TESTS(pfs_instr_class pfs_instr_class-oom pfs_instr pfs_instr-oom - pfs_account-oom pfs_host-oom pfs_timer pfs_user-oom pfs pfs_misc -- EXT "cc" LINK_LIBRARIES perfschema mysys pfs_server_stubs) -+ EXT "cc" LINK_LIBRARIES perfschema mysys pfs_server_stubs ${LIBATOMIC}) -Index: mariadb-10.2.24/unittest/mysys/CMakeLists.txt -=================================================================== ---- mariadb-10.2.24.orig/unittest/mysys/CMakeLists.txt -+++ mariadb-10.2.24/unittest/mysys/CMakeLists.txt -@@ -15,7 +15,7 @@ - - MY_ADD_TESTS(bitmap base64 my_atomic my_rdtsc lf my_malloc my_getopt dynstring - aes byte_order -- LINK_LIBRARIES mysys) -+ LINK_LIBRARIES mysys ${LIBATOMIC}) - MY_ADD_TESTS(my_vsnprintf LINK_LIBRARIES strings mysys) - - ADD_DEFINITIONS(${SSL_DEFINES}) -Index: mariadb-10.2.24/unittest/sql/CMakeLists.txt -=================================================================== ---- mariadb-10.2.24.orig/unittest/sql/CMakeLists.txt -+++ mariadb-10.2.24/unittest/sql/CMakeLists.txt -@@ -27,7 +27,7 @@ ELSE() - ADD_EXECUTABLE(explain_filename-t explain_filename-t.cc) + IF(HAVE_BFD_H) + TARGET_LINK_LIBRARIES(mysys bfd) + ENDIF(HAVE_BFD_H) +--- a/sql/CMakeLists.txt ++++ b/sql/CMakeLists.txt +@@ -178,6 +178,10 @@ ELSE() + SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL}) ENDIF() --TARGET_LINK_LIBRARIES(explain_filename-t sql mytap) -+TARGET_LINK_LIBRARIES(explain_filename-t sql mytap ${LIBATOMIC}) - MY_ADD_TEST(explain_filename) ++IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC) ++ TARGET_LINK_LIBRARIES(sql atomic) ++ENDIF() ++ - ADD_EXECUTABLE(mf_iocache-t mf_iocache-t.cc ../../sql/mf_iocache_encr.cc) + IF(MSVC AND NOT WITHOUT_DYNAMIC_PLUGINS) + diff --git a/mariadb-10.2.24.tar.gz b/mariadb-10.2.24.tar.gz deleted file mode 100644 index 36067c5..0000000 --- a/mariadb-10.2.24.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:97f4d924e69f77abb2f650116785c2f5ef356230442534ebcbaadb51d9bb8bc4 -size 71965656 diff --git a/mariadb-10.2.24.tar.gz.sig b/mariadb-10.2.24.tar.gz.sig deleted file mode 100644 index 40674c8..0000000 --- a/mariadb-10.2.24.tar.gz.sig +++ /dev/null @@ -1,7 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2 - -iEYEABECAAYFAlzTJE4ACgkQy8sIKhu5Q9tQDwCeKknxOY+mXMPmPEd3JopVIjwf -I70An3GunClhcxs/PeHN98pu/GBX8PHK -=rlBJ ------END PGP SIGNATURE----- diff --git a/mariadb-10.2.4-fortify-and-O.patch b/mariadb-10.2.4-fortify-and-O.patch index a019735..0f3b768 100644 --- a/mariadb-10.2.4-fortify-and-O.patch +++ b/mariadb-10.2.4-fortify-and-O.patch @@ -9,14 +9,14 @@ Index: CMakeLists.txt =================================================================== --- CMakeLists.txt.orig +++ CMakeLists.txt -@@ -224,7 +224,6 @@ IF(SECURITY_HARDENED) - MY_CHECK_AND_SET_COMPILER_FLAG("-pie -fPIC") - MY_CHECK_AND_SET_COMPILER_FLAG("-Wl,-z,relro,-z,now") - MY_CHECK_AND_SET_COMPILER_FLAG("-fstack-protector --param=ssp-buffer-size=4") -- MY_CHECK_AND_SET_COMPILER_FLAG("-D_FORTIFY_SOURCE=2" RELEASE RELWITHDEBINFO) +@@ -236,7 +236,6 @@ IF(NOT WITH_TSAN) + MY_CHECK_AND_SET_COMPILER_FLAG("-pie -fPIC") + MY_CHECK_AND_SET_COMPILER_FLAG("-Wl,-z,relro,-z,now") + MY_CHECK_AND_SET_COMPILER_FLAG("-fstack-protector --param=ssp-buffer-size=4") +- MY_CHECK_AND_SET_COMPILER_FLAG("-D_FORTIFY_SOURCE=2" RELEASE RELWITHDEBINFO) + ENDIF() ENDIF() - # Always enable debug sync for debug builds. Index: storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake =================================================================== --- storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake.orig @@ -33,7 +33,7 @@ Index: storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake ) endif () -@@ -111,23 +109,23 @@ set_cflags_if_supported( +@@ -103,23 +101,23 @@ set_cflags_if_supported( set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions") ## set extra debugging flags and preprocessor definitions @@ -65,7 +65,7 @@ Index: storage/tokudb/PerconaFT/cmake_modules/TokuSetupCompiler.cmake else () if (APPLE) set(FLTO_OPTS "-fwhole-program") -@@ -135,10 +133,10 @@ else () +@@ -127,10 +125,10 @@ else () set(FLTO_OPTS "-fuse-linker-plugin") endif() # we overwrite this because the default passes -DNDEBUG and we don't want that diff --git a/mariadb-10.3.16.tar.gz b/mariadb-10.3.16.tar.gz new file mode 100644 index 0000000..4d91d13 --- /dev/null +++ b/mariadb-10.3.16.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:39e9723eaf620afd99b0925b2c2a5a50a89110ba50040adf14cce7cf89e5e21b +size 70862041 diff --git a/mariadb-10.3.16.tar.gz.sig b/mariadb-10.3.16.tar.gz.sig new file mode 100644 index 0000000..d245a3b --- /dev/null +++ b/mariadb-10.3.16.tar.gz.sig @@ -0,0 +1,7 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2 + +iEYEABECAAYFAl0FZ48ACgkQy8sIKhu5Q9vcXACg8sQUJsDG5/w3imoZRFO/HE5n +HLkAoImxeypRbyxgvixOG7Fog7HlxrQP +=3e24 +-----END PGP SIGNATURE----- diff --git a/mariadb-5.2.3-cnf.patch b/mariadb-5.2.3-cnf.patch deleted file mode 100644 index a661a44..0000000 --- a/mariadb-5.2.3-cnf.patch +++ /dev/null @@ -1,96 +0,0 @@ -PATCH-P0-FIX-SUSE: Tweak default configuration - -This patch adds log file locations and socket location as they should be in -SuSE to the default configuration files. - -Maintainer: Michal Hrusecky - -Index: support-files/my-huge.cnf.sh -=================================================================== ---- support-files/my-huge.cnf.sh.orig -+++ support-files/my-huge.cnf.sh -@@ -131,7 +131,15 @@ server-id = 1 - #innodb_flush_log_at_trx_commit = 1 - #innodb_lock_wait_timeout = 50 - -+# The safe_mysqld script -+[safe_mysqld] -+log-error=/var/log/mysql/mysqld.log -+socket = @MYSQL_UNIX_ADDR@ -+ -+!includedir /etc/mysql -+ - [mysqldump] -+socket = @MYSQL_UNIX_ADDR@ - quick - max_allowed_packet = 16M - -Index: support-files/my-large.cnf.sh -=================================================================== ---- support-files/my-large.cnf.sh.orig -+++ support-files/my-large.cnf.sh -@@ -131,7 +131,15 @@ server-id = 1 - #innodb_flush_log_at_trx_commit = 1 - #innodb_lock_wait_timeout = 50 - -+# The safe_mysqld script -+[safe_mysqld] -+log-error=/var/log/mysql/mysqld.log -+socket = @MYSQL_UNIX_ADDR@ -+ -+!includedir /etc/mysql -+ - [mysqldump] -+socket = @MYSQL_UNIX_ADDR@ - quick - max_allowed_packet = 16M - -Index: support-files/my-medium.cnf.sh -=================================================================== ---- support-files/my-medium.cnf.sh.orig -+++ support-files/my-medium.cnf.sh -@@ -26,6 +26,8 @@ socket = @MYSQL_UNIX_ADDR@ - [mysqld] - port = @MYSQL_TCP_PORT@ - socket = @MYSQL_UNIX_ADDR@ -+# Change following line if you want to store your database elsewhere -+datadir = /var/lib/mysql - skip-external-locking - key_buffer_size = 16M - max_allowed_packet = 1M -@@ -129,7 +131,15 @@ server-id = 1 - #innodb_flush_log_at_trx_commit = 1 - #innodb_lock_wait_timeout = 50 - -+# The safe_mysqld script -+[safe_mysqld] -+log-error = /var/log/mysql/mysqld.log -+socket = @MYSQL_UNIX_ADDR@ -+ -+!includedir /etc/mysql -+ - [mysqldump] -+socket = @MYSQL_UNIX_ADDR@ - quick - max_allowed_packet = 16M - -Index: support-files/my-small.cnf.sh -=================================================================== ---- support-files/my-small.cnf.sh.orig -+++ support-files/my-small.cnf.sh -@@ -65,7 +65,15 @@ server-id = 1 - #innodb_flush_log_at_trx_commit = 1 - #innodb_lock_wait_timeout = 50 - -+# The safe_mysqld script -+[safe_mysqld] -+log-error = /var/log/mysql/mysqld.log -+socket = @MYSQL_UNIX_ADDR@ -+ -+!includedir /etc/mysql -+ - [mysqldump] -+socket = @MYSQL_UNIX_ADDR@ - quick - max_allowed_packet = 16M - diff --git a/mariadb-5.5.28-install_db-quiet.patch b/mariadb-5.5.28-install_db-quiet.patch deleted file mode 100644 index 5efc59f..0000000 --- a/mariadb-5.5.28-install_db-quiet.patch +++ /dev/null @@ -1,38 +0,0 @@ -PATCH-P0-FEATURE-SUSE: Use better comments in install_db - -We ship init script so we don't need to warn user to install one and we also -have a testsuite in separate packege. - -Maintainer: Michal Hrusecky - -Index: scripts/mysql_install_db.sh -=================================================================== ---- scripts/mysql_install_db.sh.orig -+++ scripts/mysql_install_db.sh -@@ -521,9 +521,10 @@ fi - # the screen. - if test "$cross_bootstrap" -eq 0 && test -z "$srcdir" - then -- s_echo -- s_echo "To start mysqld at boot time you have to copy" -- s_echo "support-files/mysql.server to the right place for your system" -+# Output disabled, since the SUSE RPM comes with an init script installed -+# s_echo -+# s_echo "To start mysqld at boot time you have to copy" -+# s_echo "support-files/mysql.server to the right place for your system" - - if test "$auth_root_authentication_method" = normal - then -@@ -551,10 +552,9 @@ then - then - echo - echo "You can start the MariaDB daemon with:" -- echo "cd '$basedir' ; $bindir/mysqld_safe --datadir='$ldata'" -+ echo "rcmysql start" - echo -- echo "You can test the MariaDB daemon with mysql-test-run.pl" -- echo "cd '$basedir/mysql-test' ; perl mysql-test-run.pl" -+ echo "You can test the MariaDB daemon with mariadb-test package" - fi - - echo diff --git a/mariadb.changes b/mariadb.changes index 51b3825..7e6aae5 100644 --- a/mariadb.changes +++ b/mariadb.changes @@ -1,3 +1,86 @@ +------------------------------------------------------------------- +Mon Jun 17 13:39:54 UTC 2019 - Kristýna Streitová + +- update to 10.3.16 [bsc#1108088] + * notable changes: + * MDEV-19490: show tables fails when selecting the + information_schema database + * MDEV-19491: multi-update with triggers and stored routines + * MDEV-19541: InnoDB crashes when trying to recover + a corrupted page + * MDEV-19725: Incorrect error handling in ALTER TABLE + * MDEV-19445: FULLTEXT INDEX fix + * MDEV-19486: System Versioning fix + * MDEV-19509: InnoDB skips the tablespace in rotation list + * MDEV-19614: SET GLOBAL innodb_ deadlock due to + LOCK_global_system_variables + * MDEV-17458: Unable to start galera node + * MDEV-17456: Malicious SUPER user can possibly change audit + log configuration without leaving traces + * MDEV-19588: Wrong results from query, using left join + * MDEV-19258: RIGHT JOIN hangs in MariaDB + * Virtual columns fixes: MDEV-19027, MDEV-19602 + * Crash recovery fixes: MDEV-13080, MDEV-19587, MDEV-19435 + * MDEV-11094: Fixed row-based event applying with an error anymore + when the events aim at the blackhole engine and row annotation + is enabled + * MDEV-19076: Fixed slave_parallel_mode=optimistic did not always + properly order replication events on temporary tables in some + case to attempt execution before a parent event has been already + processed + * MDEV-19158: Fixed duplicated entries in binlog occurred in + combination of LOCK TABLES and binlog_format=MIXED when a being + locked table was under replication unsafe operation + * fixes for the following security vulnerabilities: none + * release notes and changelog: + https://mariadb.com/kb/en/library/mariadb-10316-release-notes + https://mariadb.com/kb/en/library/mariadb-10316-changelog +- fix reading options for multiple instances if my${INSTANCE}.cnf + is used. Also remove "umask 077" from mysql-systemd-helper that + causes that new datadirs are created with wrong permissions. Set + correct permissions for files created by us (mysql_upgrade_info, + .run-mysql_upgrade) [bsc#1132666] +- remove mariadb-5.5.28-install_db-quiet.patch and add "--rpm" + option to the mysql_install_db script that does basically the same + [bsc#1080891] +- remove mariadb-10.1.12-deharcode-libdir.patch because it's not + needed - we don't build libmariadb library in mariadb package + anymore so we don't need to take care about LIBDIR and PLUGINDIR + here. Moreover we shouldn't (and we don't) touch *_RPM + variables as they are internal) [bsc#1080891] +- update suse_skipped_tests.list + +------------------------------------------------------------------- +Tue Jun 4 12:01:57 UTC 2019 - Kristýna Streitová + +- update to 10.3.15 + * see changes in 10.3 series + https://mariadb.com/kb/en/library/changes-improvements-in-mariadb-103/ + * fixes for the following security vulnerabilities: + [CVE-2019-2503] (the rest was already applied for 10.2) +- remove mysql-community-server-5.1.45-multi-configuration.patch as + we have the same configuration in /etc/my.cnf and it doesn't make + any sense to keep it twice. Moreover the patched file + support-files/my-medium.cnf.sh was removed in upstream +- remove mariadb-5.2.3-cnf.patch as all patched files were removed + upstream +- refresh mariadb-10.2.4-fortify-and-O.patch +- refresh mariadb-10.2.19-link-and-enable-c++11-atomics.patch and + use a simplified version from Debian +- refresh README.install and suse-test-run +- remove caching_sha2_password.so as it's shipped in mariadb-connector-c + package (libmariadb_plugins) +- rename libmysqld subpackage (embedded library) to libmariadbd as + libmysqld.so was renamed to libmariadbd.so (MDEV-14953) +- simplify removing static libs (we don't need to have .static) +- add perl(Memoize) and perl(Symbol) to BuildRequires and Requires + that are needed for tests +- replace Requires pwdutils with shadow +- build RocksDB only for x86_64 as other platforms are not supported +- remove xtrabackup scripts as we already removed xtrabackup requires + and it doesn't work for MariaDB 10.3 anyway +- run spec-cleaner + ------------------------------------------------------------------- Tue May 14 12:20:09 UTC 2019 - Kristýna Streitová diff --git a/mariadb.spec b/mariadb.spec index 3375f47..6c5a8e6 100644 --- a/mariadb.spec +++ b/mariadb.spec @@ -1,7 +1,7 @@ # # spec file for package mariadb # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,11 +12,11 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # -# libmysqld soname +# libmariadbd soname (embedded library) %define soname 19 # Set this to 1 to run regression test suite (it takes a long time) %define run_testsuite 1 @@ -37,20 +37,23 @@ # and a build without jemalloc is not supported upstream (MDEV-15034) # Also we can't use PerconaFT (AGPL licence) that is needed for tokudb %define with_tokudb 0 -# Mroonga currently only supports the x86_64 architecture -# see https://mariadb.com/kb/en/mariadb/about-mroonga/ +# Mroonga and RocksDB are available only for x86_64 architecture +# see https://mariadb.com/kb/en/mariadb/about-mroonga/ and +# https://mariadb.com/kb/en/library/myrocks-supported-platforms/ %ifarch x86_64 %define with_mroonga 1 +%define with_rocksdb 1 %else %define with_mroonga 0 +%define with_rocksdb 0 %endif Name: mariadb -Version: 10.2.24 +Version: 10.3.16 Release: 0 Summary: Server part of MariaDB License: SUSE-GPL-2.0-with-FLOSS-exception Group: Productivity/Databases/Servers -Url: https://www.mariadb.org +URL: https://www.mariadb.org Source: https://downloads.mariadb.org/f/mariadb-%{version}/source/mariadb-%{version}.tar.gz Source1: %{name}-%{version}.tar.gz.sig Source2: %{name}.keyring @@ -64,30 +67,34 @@ Source16: mariadb.target Source17: mysql-systemd-helper Source18: mariadb@.service Source50: suse_skipped_tests.list -Patch0: mysql-community-server-5.1.45-multi-configuration.patch Patch1: mariadb-10.2.4-logrotate.patch -Patch2: mariadb-5.5.28-install_db-quiet.patch Patch3: mariadb-10.1.1-mysqld_multi-features.patch -Patch4: mariadb-5.2.3-cnf.patch -Patch6: mariadb-10.1.12-deharcode-libdir.patch Patch7: mariadb-10.0.15-logrotate-su.patch Patch8: mariadb-10.2.4-fortify-and-O.patch Patch9: mariadb-10.2.19-link-and-enable-c++11-atomics.patch Patch11: mariadb-10.2.9-galera_cnf.patch +# needed for bison SQL parser and wsrep API BuildRequires: bison BuildRequires: cmake BuildRequires: dos2unix BuildRequires: fdupes BuildRequires: gcc-c++ +# GSSAPI BuildRequires: krb5-devel +# embedded server libmariadbd BuildRequires: libaio-devel +# mariabackup tool BuildRequires: libarchive-devel BuildRequires: libbz2-devel +# commands history feature +BuildRequires: libedit-devel BuildRequires: libevent-devel BuildRequires: libtool BuildRequires: libxml2-devel +# CLI graphic and wsrep API BuildRequires: ncurses-devel BuildRequires: openssl-devel +# auth_pam.so plugin BuildRequires: pam-devel # MariaDB requires a specific version of pcre. Provide MariaDB with # "BuildRequires: pcre-devel" and it automatically decides if the version is @@ -95,7 +102,7 @@ BuildRequires: pam-devel BuildRequires: pcre-devel BuildRequires: pkgconfig BuildRequires: procps -BuildRequires: pwdutils +BuildRequires: shadow BuildRequires: sqlite BuildRequires: tcpd-devel # Tests requires time and ps and some perl modules @@ -110,7 +117,9 @@ BuildRequires: perl(Fcntl) BuildRequires: perl(File::Temp) BuildRequires: perl(Getopt::Long) BuildRequires: perl(IPC::Open3) +BuildRequires: perl(Memoize) BuildRequires: perl(Socket) +BuildRequires: perl(Symbol) BuildRequires: perl(Sys::Hostname) BuildRequires: perl(Test::More) BuildRequires: perl(Time::HiRes) @@ -123,12 +132,12 @@ Requires: %{name}-errormessages = %{version} # It can be switched back to plain "hostname" when this bug is resolved Requires: /bin/hostname Requires: perl-base -Requires(pre): pwdutils +Requires(pre): shadow Recommends: logrotate -Conflicts: otherproviders(mariadb-server) -Conflicts: otherproviders(mysql) -Conflicts: otherproviders(mysql-debug) -Conflicts: otherproviders(mysql-server) +Conflicts: mariadb-server +Conflicts: mysql +Conflicts: mysql-debug +Conflicts: mysql-server # Compatibility with Fedora/CentOS Provides: mariadb-server = %{version} Provides: mysql-server = %{version} @@ -151,7 +160,7 @@ Obsoletes: mysql-debug < %{version} %ifnarch i586 %{arm} BuildRequires: lzo-devel %endif -BuildRequires: libedit-devel +# boost and Judy are required for oograph %if 0%{with_oqgraph} > 0 BuildRequires: judy-devel %if 0%{?suse_version} > 1315 @@ -171,25 +180,29 @@ MySQL Community Server. This package only contains the server-side programs. -%package -n libmysqld%{soname} +%package -n libmariadbd%{soname} Summary: MariaDB embedded server library Group: System/Libraries Requires: %{name}-errormessages >= %{version} +Provides: libmysqld = %{version}-%{release} +Obsoletes: libmysqld < %{version}-%{release} -%description -n libmysqld%{soname} +%description -n libmariadbd%{soname} This package contains MariaDB library that allows to run an embedded MariaDB server inside a client application. -%package -n libmysqld-devel +%package -n libmariadbd-devel Summary: MariaDB embedded server development files Group: Development/Libraries/C and C++ Requires: libaio-devel # The headers files are the shared Requires: libmariadb-devel >= 3.0 -Requires: libmysqld%{soname} = %{version} +Requires: libmariadbd%{soname} = %{version} Requires: tcpd-devel +Provides: libmysqld-devel = %{version}-%{release} +Obsoletes: libmysqld-devel < %{version}-%{release} -%description -n libmysqld-devel +%description -n libmariadbd-devel This package contains the development header files and libraries for developing applications that embed the MariaDB. @@ -199,8 +212,8 @@ Group: Productivity/Databases/Clients Requires: %{name}-errormessages = %{version} # Explicit requires to pull in charsets for errormessages Requires: libmariadb3 >= 3.0 -Requires(pre): pwdutils -Conflicts: otherproviders(mysql-client) +Requires(pre): shadow +Conflicts: mysql-client Provides: mysql-client = %{version} Obsoletes: mysql-client < %{version} @@ -230,7 +243,7 @@ This package contains configuration files and scripts that are needed for running MariaDB Galera Cluster. %package errormessages -Summary: The error messages files required by server, client and libmysqld +Summary: The error messages files required by server, client and libmariadbd Group: System/Localization BuildArch: noarch @@ -243,7 +256,7 @@ Summary: Benchmarks for MariaDB Group: Productivity/Databases/Tools Requires: %{name}-client Requires: perl-DBD-mysql -Conflicts: otherproviders(mysql-bench) +Conflicts: mysql-bench Provides: mysql-bench = %{version} Obsoletes: mysql-bench < %{version} @@ -273,11 +286,13 @@ Requires: perl(Fcntl) Requires: perl(File::Temp) Requires: perl(Getopt::Long) Requires: perl(IPC::Open3) +Requires: perl(Memoize) Requires: perl(Socket) +Requires: perl(Symbol) Requires: perl(Sys::Hostname) Requires: perl(Test::More) Requires: perl(Time::HiRes) -Conflicts: otherproviders(mysql-test) +Conflicts: mysql-test Provides: mysql-test = %{version} Obsoletes: mysql-test < %{version} @@ -290,7 +305,7 @@ To run the testsuite, run %{_datadir}/mysql-test/suse-test-run. Summary: MariaDB tools Group: Productivity/Databases/Servers Requires: perl-DBD-mysql -Conflicts: otherproviders(mysql-tools) +Conflicts: mysql-tools # make sure this package is installed when updating from 10.2 and older Provides: mysql-client:%{_bindir}/perror Provides: mysql-tools = %{version} @@ -305,14 +320,10 @@ applications with MariaDB. %setup -q # Remove JAR files from the tarball (used for testing from the source) find . -name "*.jar" -type f -exec rm --verbose -f {} \; -%patch0 -p0 -%patch1 -p0 -%patch2 -p0 -%patch3 -p0 -%patch4 -p0 -%patch6 -p0 -%patch7 -p0 -%patch8 -p0 +%patch1 +%patch3 +%patch7 +%patch8 %patch9 -p1 %patch11 -p1 @@ -386,6 +397,9 @@ export CXXFLAGS="$CFLAGS -felide-constructors" %endif %if 0%{with_mroonga} < 1 -DPLUGIN_MROONGA=NO \ +%endif +%if 0%{with_rocksdb} < 1 + -DPLUGIN_ROCKSDB=NO \ %endif -DWITH_XTRADB_STORAGE_ENGINE=1 \ -DWITH_CSV_STORAGE_ENGINE=1 \ @@ -461,10 +475,8 @@ install -m 644 build/sql/mysqld.sym %{buildroot}%{_libdir}/mysql/mysqld.sym # INFO_SRC binary install -p -m 644 build/Docs/INFO_SRC %{buildroot}%{_libdir}/mysql/ -# Remove most static libs (FIXME: don't build them at all...) -[ \! -f "%{buildroot}%{_libdir}/"libmysqld.a ] || mv "%{buildroot}%{_libdir}/"libmysqld.a "%{buildroot}%{_libdir}/"libmysqld.static -rm -f %{buildroot}%{_libdir}/*.a -[ \! -f "%{buildroot}%{_libdir}/"libmysqld.static ] || mv "%{buildroot}%{_libdir}/"libmysqld.static "%{buildroot}%{_libdir}/"libmysqld.a +# Remove static libs (FIXME: don't build them at all...) +rm %{buildroot}%{_libdir}/*.a # Remove unused stuff rm -f %{buildroot}%{_datadir}/mysql/{errmsg-utf8.txt,mysql-log-rotate} @@ -478,6 +490,9 @@ rm -f %{buildroot}%{_datadir}/mysql/mysql.server rm -f %{buildroot}%{_datadir}/mysql/mysqld_multi.server # The old fork of mytop utility (we ship it as a separate package) rm -f %{buildroot}%{_bindir}/mytop +# xtrabackup is not supported for MariaDB 10.3 +rm -f %{buildroot}%{_bindir}/wsrep_sst_xtrabackup-v2 +rm -f %{buildroot}%{_bindir}/wsrep_sst_xtrabackup # Remove unused upstream services rm -f %{buildroot}'%{_unitdir}/mariadb.service' @@ -489,18 +504,18 @@ rm -f %{buildroot}%{_sysusersdir}/sysusers.conf # Remove client libraries that are now provided in mariadb-connector-c # Client library and links -rm %{buildroot}%{_libdir}/libmariadb*.so.* +rm %{buildroot}%{_libdir}/libmariadb.so.* unlink %{buildroot}%{_libdir}/libmysqlclient.so unlink %{buildroot}%{_libdir}/libmysqlclient_r.so unlink %{buildroot}%{_libdir}/libmariadb.so # Client plugins -rm %{buildroot}%{_libdir}/mysql/plugin/{auth_gssapi_client.so,dialog.so,mysql_clear_password.so,sha256_password.so} +rm %{buildroot}%{_libdir}/mysql/plugin/{auth_gssapi_client.so,dialog.so,mysql_clear_password.so,sha256_password.so,caching_sha2_password.so} # Devel files rm %{buildroot}%{_bindir}/mysql_config rm %{buildroot}%{_bindir}/mariadb_config rm %{buildroot}%{_datadir}/pkgconfig/mariadb.pc rm -f %{buildroot}%{_prefix}/lib/pkgconfig/libmariadb.pc -rm -f %{buildroot}%{_prefix}/lib64/pkgconfig/libmariadb.pc +rm -f %{buildroot}%{_libdir}/pkgconfig/libmariadb.pc rm %{buildroot}%{_datadir}/aclocal/mysql.m4 rm %{buildroot}%{_mandir}/man1/mysql_config*.1* rm -r %{buildroot}%{_includedir}/mysql @@ -527,7 +542,7 @@ if [ -f scripts/mysqlaccess.conf ] ; then fi # mariadb-galera.files -filelist galera_new_cluster galera_recovery wsrep_sst_common wsrep_sst_mariabackup wsrep_sst_mysqldump wsrep_sst_rsync wsrep_sst_xtrabackup-v2 wsrep_sst_xtrabackup wsrep_sst_rsync_wan >mariadb-galera.files +filelist galera_new_cluster galera_recovery wsrep_sst_common wsrep_sst_mariabackup wsrep_sst_mysqldump wsrep_sst_rsync wsrep_sst_rsync_wan >mariadb-galera.files # mariadb-bench.files filelist mysqlslap >mariadb-bench.files @@ -708,6 +723,7 @@ datadir="`%{_bindir}/my_print_defaults mysqld mysql_server | sed -n 's|--datadir [ -n "$datadir" ] || datadir="%{_localstatedir}/lib/mysql" if [ -d "$datadir/mysql" ]; then touch "$datadir/.run-mysql_upgrade" + chmod 640 "$datadir/.run-mysql_upgrade" fi if [ \! -f "$datadir/mysql_upgrade_info" ]; then if [ $1 -eq 1 ]; then @@ -740,8 +756,8 @@ exit 0 %postun %service_del_postun mariadb.service -%post -n libmysqld%{soname} -p /sbin/ldconfig -%postun -n libmysqld%{soname} -p /sbin/ldconfig +%post -n libmariadbd%{soname} -p /sbin/ldconfig +%postun -n libmariadbd%{soname} -p /sbin/ldconfig %files -f mariadb.files %config(noreplace) %attr(0644, root, mysql) %{_sysconfdir}/my.cnf @@ -794,12 +810,12 @@ exit 0 %{_datadir}/mysql/systemd/mariadb.service %{_datadir}/mysql/systemd/mariadb@.service -%files -n libmysqld%{soname} -%{_libdir}/libmysqld.so.* +%files -n libmariadbd%{soname} +%{_libdir}/libmariadbd.so.* -%files -n libmysqld-devel -%{_libdir}/libmysqld.a +%files -n libmariadbd-devel %{_libdir}/libmysqld.so +%{_libdir}/libmariadbd.so %files client -f mariadb-client.files %dir %{_libdir}/mysql @@ -820,9 +836,10 @@ exit 0 %files test -f mariadb-test.files %{_bindir}/my_safe_process -%{_mandir}/man1/my_safe_process.1* -%{_mandir}/man1/mysql-test-run.pl.1* -%{_mandir}/man1/mysql-stress-test.pl.1* +%{_bindir}/test-connect-t +%{_mandir}/man1/my_safe_process.1%{?ext_man} +%{_mandir}/man1/mysql-test-run.pl.1%{?ext_man} +%{_mandir}/man1/mysql-stress-test.pl.1%{?ext_man} %{_datadir}/mysql-test/valgrind.supp %dir %attr(755, mysql, mysql)%{_datadir}/mysql-test %{_datadir}/mysql-test/[^v]* diff --git a/mysql-community-server-5.1.45-multi-configuration.patch b/mysql-community-server-5.1.45-multi-configuration.patch deleted file mode 100644 index 6ad334c..0000000 --- a/mysql-community-server-5.1.45-multi-configuration.patch +++ /dev/null @@ -1,59 +0,0 @@ -PATCH-P0-FEATURE-SUSE: Add multi configuration - -This patch adds example of how to setup multiple running MySQL servers. It is -by default commented out, but it can be used as an example and help people -start with new configuration. - -Maintainer: Michal Hrusecky - -Index: support-files/my-medium.cnf.sh -=================================================================== ---- support-files/my-medium.cnf.sh.orig -+++ support-files/my-medium.cnf.sh -@@ -154,3 +154,46 @@ write_buffer = 2M - - [mysqlhotcopy] - interactive-timeout -+ -+[mysqld_multi] -+mysqld = /usr/bin/mysqld_safe -+mysqladmin = /usr/bin/mysqladmin -+log = /var/log/mysqld_multi.log -+# user = multi_admin -+# password = secret -+ -+# If you want to use mysqld_multi uncomment 1 or more mysqld sections -+# below or add your own ones. -+ -+# WARNING -+# -------- -+# If you uncomment mysqld1 than make absolutely sure, that database mysql, -+# configured above, is not started. This may result in corrupted data! -+# [mysqld1] -+# port = @MYSQL_TCP_PORT@ -+# datadir = /var/lib/mysql -+# pid-file = /var/lib/mysql/mysqld.pid -+# socket = /var/lib/mysql/mysql.sock -+# user = mysql -+ -+# [mysqld2] -+# port = 3307 -+# datadir = /var/lib/mysql-databases/mysqld2 -+# pid-file = /var/lib/mysql-databases/mysqld2/mysql.pid -+# socket = /var/lib/mysql-databases/mysqld2/mysql.sock -+# user = mysql -+ -+# [mysqld3] -+# port = 3308 -+# datadir = /var/lib/mysql-databases/mysqld3 -+# pid-file = /var/lib/mysql-databases/mysqld3/mysql.pid -+# socket = /var/lib/mysql-databases/mysqld3/mysql.sock -+# user = mysql -+ -+# [mysqld6] -+# port = 3309 -+# datadir = /var/lib/mysql-databases/mysqld6 -+# pid-file = /var/lib/mysql-databases/mysqld6/mysql.pid -+# socket = /var/lib/mysql-databases/mysqld6/mysql.sock -+# user = mysql -+ diff --git a/mysql-systemd-helper b/mysql-systemd-helper index c2b1f72..0dc2beb 100644 --- a/mysql-systemd-helper +++ b/mysql-systemd-helper @@ -20,7 +20,7 @@ read_config() { # Read options - important for multi setup if [[ -n "$INSTANCE" ]]; then - opts="$(/usr/bin/my_print_defaults mysqld mysqld_multi "$INSTANCE")" + opts="$(/usr/bin/my_print_defaults mysqld mysqld_multi "$INSTANCE" --defaults-extra-file=/etc/my${INSTANCE}.cnf)" tmp_opts="$opts" config="/etc/my${INSTANCE}.cnf" else @@ -52,9 +52,10 @@ read_config() { mysql_install() { if [[ ! -d "$datadir/mysql" ]]; then echo "Creating MySQL privilege database... " - mysql_install_db --user="$mysql_daemon_user" --datadir="$datadir" || \ - die "Creation of MySQL databse in $datadir failed" + mysql_install_db --rpm --user="$mysql_daemon_user" --datadir="$datadir" || \ + die "Creation of MySQL database in $datadir failed" echo -n "$MYSQLVER" > "$datadir"/mysql_upgrade_info + chmod 640 "$datadir/mysql_upgrade_info" fi } @@ -118,6 +119,7 @@ mysql_upgrade() { rm -f "$datadir/.run-mysql_upgrade" [[ $(grep -q "^$MYSQLVER" "$datadir/mysql_upgrade_info" 2> /dev/null) ]] || \ echo -n "$MYSQLVER" > "$datadir/mysql_upgrade_info" + chmod 640 "$datadir/mysql_upgrade_info" else echo "Upgrade failed" up_ok="false" @@ -167,9 +169,6 @@ mysql_start() { # We rely on output in english at some points LC_ALL=C -# set the default umask bsc#1020976 -umask 077 - INSTANCE="$2" read_config mkdir -p /run/mysql diff --git a/suse-test-run b/suse-test-run index 2d790b4..e3948c2 100644 --- a/suse-test-run +++ b/suse-test-run @@ -1,6 +1,6 @@ #!/usr/bin/perl # -# Test the SUSE mysql package using the MySQL testsuite +# Test the SUSE mariadb package using the mysql-test framework my $id = getpwnam("mysql") or die "can't find user \"mysql\": $!"; my $dir = "/usr/share/mysql-test/"; diff --git a/suse_skipped_tests.list b/suse_skipped_tests.list index 3e0a6a2..de8cedc 100644 --- a/suse_skipped_tests.list +++ b/suse_skipped_tests.list @@ -2,8 +2,7 @@ # The SSL tests that are failing correctly main.ssl_7937 : bsc#937835, MDEV-8404 -main.ssl_crl_clients : bsc#937835, MDEV-8404 -main.ssl_cert_verify : bsc#937835, MDEV-8404 +main.ssl_crl : bsc#937835, MDEV-8404 main.ssl_8k_key : bsc#937835, MDEV-8404 # Main and perfschema tests @@ -12,11 +11,6 @@ perfschema.nesting : bsc#937836, MDEV-8446 perfschema.socket_summary_by_event_name_func : bsc#937836, MDEV-8446 perfschema.socket_summary_by_instance_func : bsc#937836, MDEV-8446 -# It's not a critical test. The problem is that it's not easy to -# unify the correct number of the repetition in the test for all -# various platforms (fails for s390x) -main.func_regexp_pcre : bsc#1058722 comment 11 - # Failing because of "Self Signed Certificate in the Certificate Chain" perfschema.cnf_option : all rpl.rpl_row_img_blobs : all @@ -25,53 +19,30 @@ rpl.rpl_row_img_eng_noblob : all #---------------------------------------------------------------- -# Failing with OpenSSL 1.1.1. -main.ssl_cipher : MDEV-17184 -main.openssl_6975 : MDEV-17184 -main.ssl : MDEV-17184 - # Needs to be investigated (issues trackers will be added) -sys_vars.slave_parallel_threads_basic : all -main.mysqldump : all -unit.lf : all -unit.my_atomic : all - -mariabackup.huge_lsn : x86_64 -rocksdb.deadlock : x86_64 - -rocksdb.2pc_group_commit : aarch64, ppc64le, x86_64, armv7l -rocksdb.read_only_tx : aarch64, ppc64le, x86_64, armv7l -rocksdb.shutdown : aarch64, ppc64le, x86_64, armv7l -rocksdb.index_merge_rocksdb : aarch64, ppc64le, x86_64, armv7l - -main.ps : ppc64le -main.type_ranges : ppc64le -main.select : ppc64le -main.select_jcl6 : ppc64le -main.derived_cond_pushdown : ppc64le -main.select_pkeycache : ppc64le -main.sp : ppc64le -main.type_float : ppc64le -main.type_newdecimal : ppc64le -rocksdb.type_float : ppc64le -rocksdb.col_opt_not_null : ppc64le -rocksdb.col_opt_null : ppc64le -rocksdb.col_opt_unsigned : ppc64le -innodb.temporary_table_optimization : ppc64le - -rocksdb.bulk_load_errors : armv7l -encryption.innodb-encryption-alter : armv7l -plugins.processlist : armv7l -rocksdb.add_index_inplace : armv7l -rocksdb.bulk_load_unsorted : armv7l -rocksdb.bulk_load_unsorted_rev : armv7l -rocksdb.commit_in_the_middle_ddl : armv7l -rocksdb.concurrent_alter : armv7l -rocksdb.drop_index_inplace : armv7l -rocksdb.rocksdb : armv7l -rocksdb_sys_vars.rocksdb_merge_buf_size_basic : armv7l -rocksdb_sys_vars.rocksdb_merge_combine_read_size_basic : armv7l -rocksdb_sys_vars.rocksdb_merge_tmp_file_removal_delay_ms_basic : armv7l -rocksdb.unique_sec : armv7l - -sys_vars.innodb_ft_result_cache_limit_32 : s390 +sys_vars.slave_parallel_threads_basic : since 10.3.16 - x86_64, i386, s390x, armv7l +rocksdb.2pc_group_commit : since 10.3.16 - x86_64 +rocksdb.read_only_tx : since 10.3.16 - x86_64 +rocksdb.shutdown : since 10.3.16 - x86_64 +rocksdb.index_merge_rocksdb : since 10.3.16 - x86_64 +rocksdb_rpl.mdev12179 : since 10.3.16 - x86_64 +main.gis_notembedded : since 10.3.16 - x86_64, i386, s390x, armv7l +unit.conc_ps_bugs : since 10.3.16 - x86_64, i386, s390x, armv7l +handler.heap : since 10.3.16 - s390x +federated.federatedx_versioning : since 10.3.16 - amrv7l +versioning.partition : since 10.3.16 - amrv7l +versioning.online : since 10.3.16 - amrv7l +versioning.auto_increment : since 10.3.16 - amrv7l +versioning.truncate : since 10.3.16 - amrv7l +versioning.select : since 10.3.16 - amrv7l +versioning.delete : since 10.3.16 - amrv7l +versioning.foreign : since 10.3.16 - amrv7l +versioning.insert : since 10.3.16 - amrv7l +versioning.replace : since 10.3.16 - amrv7l +versioning.select2 : since 10.3.16 - amrv7l +versioning.update : since 10.3.16 - amrv7l +versioning.alter : since 10.3.16 - amrv7l +versioning.commit_id : since 10.3.16 - amrv7l +versioning.trx_id : since 10.3.16 - amrv7l +mariabackup.system_versioning : since 10.3.16 - amrv7l +versioning.insert2 : since 10.3.16 - amrv7l