SHA256
1
0
forked from pool/mariadb
mariadb/mariadb-10.2.19-link-and-enable-c++11-atomics.patch

71 lines
2.3 KiB
Diff
Raw Normal View History

Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
Author: Vicențiu Ciorbaru <vicentiu@mariadb.org>
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.
Index: mariadb-10.5.9/configure.cmake
===================================================================
--- mariadb-10.5.9.orig/configure.cmake
+++ mariadb-10.5.9/configure.cmake
@@ -862,7 +862,25 @@ int main()
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
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("
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
+ 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(WITH_VALGRIND)
SET(HAVE_valgrind 1)
Index: mariadb-10.5.9/mysys/CMakeLists.txt
===================================================================
--- mariadb-10.5.9.orig/mysys/CMakeLists.txt
+++ mariadb-10.5.9/mysys/CMakeLists.txt
@@ -154,6 +154,10 @@ TARGET_LINK_LIBRARIES(mysys dbug strings
${LIBNSL} ${LIBM} ${LIBRT} ${CMAKE_DL_LIBS} ${LIBSOCKET} ${LIBEXECINFO})
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
DTRACE_INSTRUMENT(mysys)
+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
+ TARGET_LINK_LIBRARIES(mysys atomic)
+ENDIF()
+
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
IF(HAVE_BFD_H)
TARGET_LINK_LIBRARIES(mysys bfd)
ENDIF(HAVE_BFD_H)
Index: mariadb-10.5.9/sql/CMakeLists.txt
===================================================================
--- mariadb-10.5.9.orig/sql/CMakeLists.txt
+++ mariadb-10.5.9/sql/CMakeLists.txt
@@ -222,6 +222,10 @@ ELSE()
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
SET(MYSQLD_SOURCE main.cc ${DTRACE_PROBES_ALL})
ENDIF()
Accepting request 717132 from home:kstreitova:branches:server:database - 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 OBS-URL: https://build.opensuse.org/request/show/717132 OBS-URL: https://build.opensuse.org/package/show/server:database/mariadb?expand=0&rev=231
2019-07-19 19:38:09 +02:00
+IF (HAVE_GCC_C11_ATOMICS_WITH_LIBATOMIC)
+ TARGET_LINK_LIBRARIES(sql atomic)
+ENDIF()
+
IF(MSVC OR CMAKE_SYSTEM_NAME MATCHES AIX)
SET(libs_to_export_symbols sql mysys dbug strings)
# Create shared library of already compiled object