summaryrefslogtreecommitdiff
path: root/config.h.cmake
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-13785: move defination HAVE_LARGE_PAGES -> HAVE_LINUX_LARGE_PAGESDaniel Black2018-03-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | HAVE_LARGE_PAGES was always Linux but now there is HAVE_SOLARIS_LARGE_PAGES in the code base. Innodb was using HAVE_LINUX_LARGE_PAGES so keep this consistent everywhere. Test plan: $ grep Hugepagesize: /proc/meminfo Hugepagesize: 2048 kB $ sudo sysctl vm.nr_hugepages=1024 vm.nr_hugepages = 1024 $ sudo sysctl kernel.shmmax=$(( 2 * 1024 *1024 * 1024 )) kernel.shmmax = 2147483648 No errors in ouput: $ sql/mysqld --skip-networking --datadir=/tmp/datadir --log-bin=/tmp/datadir/mysqlbin --socket /tmp/s.sock --lc-messages-dir=${PWD}/sql/share --verbose --large-pages=1 2018-03-23 12:51:18 139697428129984 [Note] sql/mysqld (mysqld 10.2.14-MariaDB-log) starting as process 25406 ... 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Mutexes and rw_locks use GCC atomic builtins 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Uses event mutexes 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Compressed tables use zlib 1.2.11 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Using Linux native AIO 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Number of pools: 1 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Using SSE2 crc32 instructions 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Initializing buffer pool, total size = 128M, instances = 1, chunk size = 128M 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Completed initialization of buffer pool 2018-03-23 12:51:18 139696883590912 [Note] InnoDB: If the mysqld execution user is authorized, page cleaner thread priority can be changed. See the man page of setpriority(). 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Highest supported file format is Barracuda. 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: 128 out of 128 rollback segments are active. 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Removed temporary tablespace data file: "ibtmp1" 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Creating shared tablespace for temporary tables 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: Setting file './ibtmp1' size to 12 MB. Physically writing the file full; Please wait ... 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: File './ibtmp1' size is now 12 MB. 2018-03-23 12:51:18 139697428129984 [Note] InnoDB: 5.7.21 started; log sequence number 1620099 2018-03-23 12:51:18 139696713733888 [Note] InnoDB: Loading buffer pool(s) from /tmp/datadir/ib_buffer_pool 2018-03-23 12:51:18 139696713733888 [Note] InnoDB: Buffer pool(s) load completed at 180323 12:51:18 2018-03-23 12:51:18 139697428129984 [Note] Plugin 'FEEDBACK' is disabled. 2018-03-23 12:51:18 139697428129984 [Note] Reading of all Master_info entries succeded 2018-03-23 12:51:18 139697428129984 [Note] Added new Master_info '' to hash table 2018-03-23 12:51:18 139697428129984 [Note] sql/mysqld: ready for connections. Version: '10.2.14-MariaDB-log' socket: '/tmp/s.sock' port: 0 Source distribution $ grep -i huge /proc/25406/smaps | grep -v ' 0 kB' Private_Hugetlb: 8192 kB Private_Hugetlb: 2048 kB $ grep huge /proc/25406/numa_maps 7f0d74400000 default file=/SYSV00000000\040(deleted) huge 7f0dbd200000 default file=/SYSV00000000\040(deleted) huge dirty=4 N0=4 kernelpagesize_kB=2048 7f0dc5600000 default file=/SYSV00000000\040(deleted) huge 7f0dd1200000 default file=/SYSV00000000\040(deleted) huge dirty=1 N0=1 kernelpagesize_kB=2048 $ grep Huge /proc/meminfo AnonHugePages: 0 kB ShmemHugePages: 0 kB HugePages_Total: 940 HugePages_Free: 935 HugePages_Rsvd: 177 HugePages_Surp: 0 Hugepagesize: 2048 kB Ran again with --memlock (note needs ulimit -l > size) $ grep Huge /proc/meminfo AnonHugePages: 0 kB ShmemHugePages: 0 kB HugePages_Total: 940 HugePages_Free: 758 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB $ grep huge /proc/26020/numa_maps 7fe870400000 default file=/SYSV00000000\040(deleted) huge dirty=62 N0=62 kernelpagesize_kB=2048 7fe8b3a00000 default file=/SYSV00000000\040(deleted) huge dirty=66 N0=66 kernelpagesize_kB=2048 7fe8bd600000 default file=/SYSV00000000\040(deleted) huge dirty=53 N0=53 kernelpagesize_kB=2048 7fe8c8400000 default file=/SYSV00000000\040(deleted) huge dirty=1 N0=1 kernelpagesize_kB=2048 $ grep -i huge /proc/26020/smaps | grep -v ' 0 kB' Private_Hugetlb: 126976 kB Private_Hugetlb: 135168 kB Private_Hugetlb: 108544 kB Private_Hugetlb: 2048 kB
* Merge branch 'github/10.1' into 10.2Sergei Golubchik2018-02-061-0/+1
|\
| * Merge branch 'github/10.0' into 10.1Sergei Golubchik2018-02-021-0/+1
| |\
| | * Merge remote-tracking branch '5.5' into 10.0Vicențiu Ciorbaru2018-01-241-0/+1
| | |\
| | | * MDEV-14229: Stack trace is not resolved for shared objectsVicențiu Ciorbaru2018-01-191-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Resolving a stacktrace including functions in dynamic libraries requires us to look inside the libraries for the symbols. Addr2line needs to be started with the correct binary for each address on the stack. To do this, figure out which library it is using dladdr, then if the addr2line binary was started with a different binary, fork it again with the correct one. We only have one addr2line process running at any point during the stacktrace resolving step. The maximum number of forks for addr2line should generally be around 6. One for server stacktrace code, one for plugin code, one when going back into server code, one for pthread library, one for libc, one for the _start function in the server. More can come up if plugin calls server function which goes back to a plugin, etc.
* | | | Merge 10.1 into 10.2Marko Mäkelä2017-05-231-17/+0
|\ \ \ \ | |/ / /
| * | | Merge 10.0 into 10.1Marko Mäkelä2017-05-231-17/+0
| |\ \ \ | | |/ /
| | * | MDEV-10788 Not able to compile source with -DBUILD_CONFIG=mysql_release ↵Sergei Golubchik2017-05-191-17/+0
| | | | | | | | | | | | | | | | | | | | | | | | -DCMAKE_BUILD_TYPE=Debug fix incorrect merge, 831b531895 was not fully merged into 10.0
* | | | Merge branch '10.1' into 10.2Sergei Golubchik2017-03-301-1/+0
|\ \ \ \ | |/ / /
| * | | Merge 10.0 into 10.1Marko Mäkelä2017-03-091-1/+0
| |\ \ \ | | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | Also, implement MDEV-11027 a little differently from 5.5 and 10.0: recv_apply_hashed_log_recs(): Change the return type back to void (DB_SUCCESS was always returned). Report progress also via systemd using sd_notifyf().
| | * | Merge branch '5.5' into 10.0Vicențiu Ciorbaru2017-03-031-1/+0
| | |\ \ | | | |/
| | | * MDEV-10788 Not able to compile source with -DBUILD_CONFIG=mysql_release ↵Sergei Golubchik2017-02-271-18/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -DCMAKE_BUILD_TYPE=Debug It's too plainful to require <my_config.h> to be included first for third-party storage engines. And anyway, some source files might not include <my_config.h> at all, so there is no guarantee that all parts of the binary will see identical definitions of system structures (e.g. struct stat). Define _FILE_OFFSET_BITS on the compiler's command line instead.
| | | * MDEV-9024 Build fails with VS2015Sergei Golubchik2016-02-061-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cherry-pick f1daf9ce from 10.0 branch ------------------------------------- Fix build failures caused by new C runtime library - isnan, snprintf, struct timespec are now defined, attempt to redefine them leads - P_tmpdir, tzname are no more defined - lfind() and lsearch() in lf_hash.c had to be renamed, declaration conflicts with some C runtime functions with the same name declared in a header included by stdlib.h Also fix couple of annoying warnings : - remove #define NOMINMAX from config.h to avoid "redefined" compiler warnings(NOMINMAX is already in compile flags) - disable incremental linker in Debug as well (feature not used much and compiler crashes often) Also simplify package building with Wix, require Wix 3.9 or later (VS2015 is not compatible with old Wix 3.5/3.6)
| | * | Merge MDEV-9112 into 10.0Kristian Nielsen2016-02-011-1/+1
| | |\ \ | | | |/ | | | | | | | | | | | | Conflicts: configure.cmake
* | | | MDEV-11195: Correct enablement of NUMA in innodb/xtradbDaniel Black2016-11-011-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No -DHAVE_LIBNUMA=1 was passed to the source compile (and the global include/my_config.h wasn't used). This also is Linux only so corrected the cmake macro. Fixed indenting in cmake macro. Removed NUMA defination from include/my_config.h as its only in the storage engine. Thanks Elena Stepanova and Vladislav Vaintroub for the detailed list of bugs/questions. Signed-off-by: Daniel Black <daniel.black@au.ibm.com>
* | | | MDEV-10829: Enable Innodb NUMA interleaveDaniel Black2016-09-231-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Code was already existing within the innobase/xtradb storage engines however without this cmake code it was never enabled. num.cmake heavily based off work by Annamalai Gurusami <annamalai.gurusami@oracle.com> Signed-off-by: Daniel Black <daniel.black@au.ibm.com>
* | | | MDEV-9872 - Add common optimized CRC32 function interfaceSergey Vojtovich2016-08-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Move crc32-vpmsum to extra. Compile static crc32-vpmsum instead of adding sources directly. Make use of crc32-vpmsum via my_checksum(). Based on contribution by Daniel Black.
* | | | Merge commit 'd5822a3ad0657040114cdc185c6387b9eb3a12b2' into 10.2Monty2016-04-281-0/+1
|\ \ \ \ | |/ / /
| * | | Some POWER specific optimizationsYasufumi Kinoshita2016-03-311-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#18842925 : SET THREAD PRIORITY IN INNODB MUTEX SPINLOOP Like "pause" instruction for hyper-threading at Intel CPUs, POWER has special instructions only for hinting priority of hardware-threads. Approved by Sunny in rb#6256 Backport of the 5.7 fix - https://github.com/mysql/mysql-server/commit/c92102a6ef0f280bfb56e5585fca0d0cdcc34890 (excluded cache line size patch) Suggestion by Stewart Smith
* | | | cleanup: remove a couple of unused cmake checks and definesSergei Golubchik2016-02-061-2/+0
| | | |
* | | | Merge branch '10.1' into 10.2Monty2016-02-061-0/+2
|\ \ \ \ | |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: VERSION cmake/plugin.cmake config.h.cmake configure.cmake plugin/server_audit/server_audit.c sql/sql_yacc.yy
| * | | Merge MDEV-9112 into 10.1Kristian Nielsen2016-02-011-1/+1
| |\ \ \ | | | |/ | | |/| | | | | | | | | | | | | Conflicts: config.h.cmake configure.cmake
| | * | MDEV-9112: Non-blocking client API missing on non-x86 platformsGeorg Richter2016-02-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The check for UCONTEXT in cmake was somehow become broken, disabling the fallback to ucontext. This caused the non-blocking client API to not be available for non-x86 platforms, on which no hand-crafted assembler implementation of my_context is available.
* | | | Merge remote-tracking branch 'origin/10.1' into 10.2Alexander Barkov2015-12-291-0/+4
|\ \ \ \ | |/ / /
| * | | Merge branch '10.0' into 10.1Sergei Golubchik2015-12-211-1/+2
| |\ \ \ | | | |/ | | |/|
| | * | Merge branch '5.5' into 10.0Sergei Golubchik2015-12-211-1/+1
| | |\ \ | | | |/
| | | * MDEV-9249 MariaDB un-buildable on linux64: fails @ "error: ↵Sergei Golubchik2015-12-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ‘ERR_remove_state’ was not declared in this scope" when linking against OpenSSL 1.0.2e ERR_remove_state is deprecated, use ERR_remove_thread_state if possible
| | * | Fixed failing test cases and compiler warnings found by buildbotMonty2015-11-241-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Added some extra command to rpl_start_stop to ensure that the IO thread has connected to the master before we shut down the server. - if signal returns signalhandler_t, use this with the alarm code - Added missing tests to sys_vars - Fixed some possible overflow bugs in tabxml.cpp
* | | | cmake: remove unused checks, options, and symbolsSergei Golubchik2015-11-231-104/+2
|/ / /
* | | Merge branch '10.0' into 10.1Sergei Golubchik2015-11-191-1/+8
|\ \ \ | |/ /
| * | Fixed buildbot failures on Solaris 64 bitMonty2015-11-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rpl/rpl_mdev382 ; Wrong replace in show_binlog_events2.inc binlog/database ; Different error on Solaris if file exists mroonga/repair_table_no_index_file ; Different system error on Solaris partition_not_blackhole ; Different error on Solaris partition_myisam ; Different error on Solaris Some other failures in mroonga was because have_32bit.inc didn't correctly detect 64 bits on Solaris. Fixed using DEFAULT_MACHINE instead of MACHINE_TYPE for Sys_version_compile_machine.
| * | MDEV-9024 Build fails with VS2015Vladislav Vaintroub2015-11-061-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix build failures caused by new C runtime library - isnan, snprintf, struct timespec are now defined, attempt to redefine them leads - P_tmpdir, tzname are no more defined - lfind() and lsearch() in lf_hash.c had to be renamed, declaration conflicts with some C runtime functions with the same name declared in a header included by stdlib.h Also fix couple of annoying warnings : - remove #define NOMINMAX from config.h to avoid "redefined" compiler warnings(NOMINMAX is already in compile flags) - disable incremental linker in Debug as well (feature not used much and compiler crashes often) Also simplify package building with Wix, require Wix 3.9 or later (VS2015 is not compatible with old Wix 3.5/3.6)
* | | dbug: correct trace for DBUG_RETURN(func()); -- gcc onlySergei Golubchik2015-11-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | when func1 calls func2 from DBUG_RETURN, dbug shows the trace as | > func1 | < func1 | > func2 | < func2 because DBUG_LEAVE happens before func2(). Change that to invoke DBUG_LEAVE when the local variable goes out of scope. This uses gcc specific __attribute__((cleanup)).
* | | MDEV-9021: MYSQLD SEGFAULTS WHEN BUILT USING --WITH-MAX-INDEXES=128Nirbhay Choubey2015-11-091-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The bitmap implementation defines two template Bitmap classes. One optimized for 64-bit (default) wide bitmaps while the other is used for all other widths. In order to optimize the computations, Bitmap<64> class has defined its own member functions for bitmap operations, the other one, however, relies on mysys' bitmap implementation (mysys/my_bitmap.c). Issue 1: In case of non 64-bit Bitmap class, intersect() wrongly reset the received bitmap while initialising a new local bitmap structure (bitmap_init() clears the bitmap buffer) thus, the received bitmap was getting cleared. Fixed by initializing the local bitmap structure by using a temporary buffer and later copying the received bitmap to the initialised bitmap structure. Issue 2: The non 64-bit Bitmap class had the Iterator missing which caused compilation failure. Also added a cmake variable to hold the MAX_INDEXES value when supplied from the command prompt. (eg. cmake .. -DMAX_INDEXES=128U). Checks have been put in place to trigger build failure if MAX_INDEXES value is greater than 128. Test modifications: * Introduced include/have_max_indexes_[64|128].inc to facilitate skipping of tests for which the output differs with different MAX_INDEXES. * Introduced include/max_indexes.inc which would get modified by cmake to reflect the MAX_INDEXES value used to build the server. This file simply sets an mtr variable '$max_indexes' to show the MAX_INDEXES value, which will then be consumed by the above introduced include file. * Some tests (portions), dependent on MAX_INDEXES value, have been moved to separate test files.
* | | MDEV-427/MDEV-5713 Add systemd script with notify functionalityDaniel Black2015-10-121-0/+1
| | |
* | | MDEV-8901: InnoDB: Punch hole is incorrecty done also to log files causing ↵Jan Lindström2015-10-061-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | assertion and database corruption Analysis: Problem is that punch hole does not know the actual page size of the page and does the page belong to an data file or to a log file. Fix: Pass down the file type and page size to os layer to be used when trim is called. Also fix unsafe null pointer access to actual write_size.
* | | MDEV-6756: map a linux pid (child pid) to a connection id shown in the ↵Oleksandr Byelkin2015-09-171-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | output of SHOW PROCESSLIST Added tid (thread ID) for system where it is present. ps -eL -o tid,pid,command shows the thread on Linux
* | | Merge tag 'mariadb-10.0.20' into 10.1Sergei Golubchik2015-06-271-13/+13
|\ \ \ | |/ /
| * | MDEV-7398 mysqld segfaults on FreeBSD 10.1 i386 when built with clang 3.4Sergei Golubchik2015-06-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in cmake tests let's treat clang like gcc (same options, same builtins) in many cases. * don't check the compiler when * testing for -fvisibility=hidden support * testing for HAVE_ABI_CXA_DEMANGLE * testing for HAVE_GCC_ATOMIC_BUILTINS * when removing options with string(replace) * when running ${CC} --version (ignore the error instead) * run ABI checks for clang * use "canonical" gcc flags for clang * fix groonga too Also: * add cmake detection for gcc __atomic_* builtins. they might be supported (__ATOMIC_SEQ_CST is defined), but not for all operand sizes. In particular, 64-bit atomic load is problematic on i386 * cache check results for Windows * remove the test for HAVE_CXXABI_H (HAVE_ABI_CXA_DEMANGLE is suffifient)
| * | Merge branch '5.5' into 10.0Sergei Golubchik2015-06-111-12/+12
| |\ \ | | |/
| | * MDEV-8243 configure defines to empty string, not 1Alexander Barkov2015-06-041-12/+12
| | |
* | | my_aes_encrypt_gcm() and my_aes_decrypt_gcm()Sergei Golubchik2015-06-021-1/+1
| | |
* | | MDEV-6479 stack traces in 10.1Sergei Golubchik2015-02-281-0/+1
| | | | | | | | | | | | | | | | | | Take into account that PIE binaries are loaded at some offset, so addresses cannot be directly resolved with addr2line. Find this offset and subtract it before resolving an address.
* | | cmake-time detection for EVP_aes_128_ctr()Sergei Golubchik2015-02-101-0/+1
| | | | | | | | | | | | because old openssl versions (e.g. on labrador) don't have it
* | | MDEV-7437 remove suport for "atomics" with rwlocksSergei Golubchik2015-01-131-1/+0
| | |
* | | Merge branch '10.1' into bb-10.1-mergeSergei Golubchik2014-12-031-0/+2
|\ \ \
| * | | Fix compiler failure on fallocate function and used flags.Jan Lindström2014-12-031-0/+2
| | | |
* | | | Merge branch '10.0' into bb-10.1-mergeSergei Golubchik2014-12-021-0/+17
|\ \ \ \ | |/ / / |/| / / | |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: .bzrignore VERSION cmake/plugin.cmake debian/dist/Debian/control debian/dist/Ubuntu/control mysql-test/r/join_outer.result mysql-test/r/join_outer_jcl6.result mysql-test/r/null.result mysql-test/r/old-mode.result mysql-test/r/union.result mysql-test/t/join_outer.test mysql-test/t/null.test mysql-test/t/old-mode.test mysql-test/t/union.test packaging/rpm-oel/mysql.spec.in scripts/mysql_config.sh sql/ha_ndbcluster.cc sql/ha_ndbcluster_binlog.cc sql/ha_ndbcluster_cond.cc sql/item_cmpfunc.h sql/lock.cc sql/sql_select.cc sql/sql_show.cc sql/sql_update.cc sql/sql_yacc.yy storage/innobase/buf/buf0flu.cc storage/innobase/fil/fil0fil.cc storage/innobase/include/srv0srv.h storage/innobase/lock/lock0lock.cc storage/tokudb/CMakeLists.txt storage/xtradb/buf/buf0flu.cc storage/xtradb/fil/fil0fil.cc storage/xtradb/include/srv0srv.h storage/xtradb/lock/lock0lock.cc support-files/mysql.spec.sh
| * | 5.5 mergeSergei Golubchik2014-11-191-2/+6
| |\ \ | | |/
| | * MDEV-6862 "#error <my_config.h>" and third-party librariesSergei Golubchik2014-11-101-2/+6
| | | | | | | | | | | | | | | only enforce the include order if SAFE_MUTEX is defined (that is, in MariaDB source builds in debug mode)