summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-20496 Assertion `field.is_sane()' failed in ↵Alexander Barkov2019-09-063-0/+47
| | | | Protocol_text::store_field_metadata
* Update server.cnf section to mariadb-10.5Ian Gilfillan2019-09-021-2/+2
| | | | Closed PR#1383
* Merge remote-tracking branch 'origin/bb-mdev-18844' into 10.5Igor Babaev2019-08-3120-251/+4808
|\
| * Merge branch 'mdev-18844' of https://github.com/waynexia/server into mdev-18844bb-mdev-18844Igor Babaev2019-08-311-2/+3
| |
| * (1)mod: counter type from longlong to ha_rowsRuihang Xia2019-08-312-14/+9
| | | | | | | | (2)fix: bug when call create tmp table
| * (1) fix type errorRuihang Xia2019-08-314-5/+3
| | | | | | | | | | (2) remove empty "--error ER_PARSE_ERROR" (3) change three members in class select_unit to protected.
| * MDEV-18844 Implement EXCEPT ALL and INTERSECT ALL operationsWayneXia2019-08-2420-249/+4812
| |
* | MDEV-15777 Use inferred IS NOT NULL predicates in the range optimizerIgor Babaev2019-08-3026-335/+1388
| | | | | | | | | | | | | | This patch introduces the optimization that allows range optimizer to consider index range scans that are built employing NOT NULL predicates inferred from WHERE conditions and ON expressions. The patch adds a new optimizer switch not_null_range_scan.
* | Updated libmarias3 to latest versionMonty2019-08-293-2/+0
| | | | | | | | This fixed a bug that caused the amazon.test to fail
* | MDEV-17048 Inconsistency voting support (#1373)Alexey Yurchenko2019-08-2866-346/+2432
| | | | | | | | | | | | * Collect and pass apply error data to provider * Rollback failed transaction and continue operation if provider returns SUCCESS * MTR tests for inconsistency voting
* | compilation failure Win32Sergei Golubchik2019-08-261-1/+1
| |
* | MDEV-19780 Remove the TokuDB storage engineSergei Golubchik2019-08-242-0/+3
| | | | | | | | disable tokudb, because it's being deprecated by the vendor
* | compilation fix for cmake 2.18Sergei Golubchik2019-08-241-1/+1
| | | | | | | | cmake that old doesn't support VERSION_GREATER_EQUAL
* | Updated result for rocksdb tests after mergeMonty2019-08-234-0/+4
| |
* | Decrease stack space usage of mysql_execute_command()Monty2019-08-233-248/+305
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The extensive usage of stack space, especially when used with ASan (AdressSanitizer) of mysql_execute_command caused the test rpl.rpl_row_sp011 to fail because it did run out of stack. In this test case mysql_execute_command is called recursively for each function all. Changes done: - Changed a few functions that used big local variables to be marked __attribute__ ((noinline)) - Moved sub parts that used big local variables to external functions. - Changed wsrep_commit_empty() from inline to normal function as this used more than 1K of stack space and because there is no reason for this rarely used function to be inline. End result (with gcc 7.4.1 on Intel Xeon): Starting point for stack space usage: gcc -O: 7800 gcc with -fsanitize=address -O (ASan) : 27240 After this patch: gcc -O: 1160 gcc -O0 (debug build) 1584 gcc with -fsanitize=address -O (ASan): 4424 gcc with -fsanitize=address -O2 (ASan): 3874 A 6x improvement and will allow us to run all mtr tests with ASan.
* | Decrease stack space usage of mysql_execute_command()Sergei Golubchik2019-08-232-14/+8
| | | | | | | | | | | | - WSREP_DEBUG called WSREP_LOG which allocated a 1K variable on stack for each macro usage (at least gcc can't reuse the stack space). Move this concatenation to happen compile-time, not run-time.
* | hide have_sanitizer variable in non-ASAN buildsSergei Golubchik2019-08-237-40/+13
| | | | | | | | | | and change its semantics so that it could in the future be used for MSAN, UBSAN, and other sanitizer too.
* | Added asan options to mysql-test-runMonty2019-08-2313-3/+86
| | | | | | | | | | - Leak detection is now enabled by default - Also added to mysql-test suppression files for asan and lsan
* | Fixed issues when running mtr with --valgrindMonty2019-08-2320-76/+299
| | | | | | | | | | | | - Note that some issues was also fixed in 10.2 and 10.4. I also fixed them here to be able to continue with making 10.5 valgrind safe again - Disable connection threads warnings when doing shutdown
* | Removed some warnings from InnoDB when compiled with clangMonty2019-08-238-8/+11
| |
* | Fixed compiler warnings from connect engineMonty2019-08-2323-62/+81
| | | | | | | | | | | | | | | | | | | | - clang complains about register in C++ - Removed not used variables - Fixed bug when printing date in filamdbf.cpp - Added {} to fix warning about dangling else - Changed connect_done_func() to be global to remove conflict with header files - Added extra () around assignment in if
* | Fixed some test that failed randomlyMonty2019-08-234-9/+10
| |
* | Removed some compiler warnings found by clangMonty2019-08-231-2/+2
| | | | | | | | | | | | | | | | - Fixed some unitialized variables - Removed some warnings: -Wno-parentheses-equality gives warnings from macro-expressions -Wno-string-plus-int is not a common problem and it's not trivial to fix it in connect
* | Fixed BUILD scripts for gcc 6.xMonty2019-08-231-2/+10
| | | | | | | | Added also -DTRASH_FREE_MEMORY to valgrind builds
* | move Aria/S3 specific flag into Aria codeSergei Golubchik2019-08-234-6/+3
| | | | | | | | it doesn't belong in include/my_base.h
* | MDEV-20306 Assert when converting encrypted Aria table to S3Monty2019-08-2310-2/+84
| | | | | | | | | | | | | | | | | | | | Changes: - maria_create() now uses a bit in the parameter flags to check if table should be encrypted instead of using maria_encrypted_tables. - Don't encrypt tables that are to be converted to S3 - Added encrypted flag to ARIA_TABLE_CAPABILITIES - maria_chk --description now prints if table is encrypted. Other operations is not allowed on encrypted tables.
* | Fixed assertion Assertion `!table->pos_in_locked_tables' failedMonty2019-08-232-0/+36
| | | | | | | | | | | | | | | | | | MDEV-19591 Assertion `!table->pos_in_locked_tables' failed in tc_release_table upon altering table into S3 under lock. The problem was that thd->open_tables->pos_in_locked_tables was not reset when alter table failed to reopen a locked table.
* | alloc_on_stack: simplify the APISergei Golubchik2019-08-2314-283/+162
| |
* | MDEV-20279 Increase Aria index length limitMonty2019-08-2335-338/+732
|/ | | | | | | | | | | | | | Limit increased from 1000 to 2000. Avoiding stack overflow by only storing keys and pages on the stack in recursive functions if there is plenty of space on it. Other things: - Use less stack space for b-tree operations as we now only allocate as much space as needed instead of always allocating HA_MAX_KEY_LENGTH. - Replaced most usage of my_safe_alloca() in Aria with the stack_alloc interface. - Moved my_setstacksize() to mysys/my_pthread.c
* Removed redundant log_type == LOG_BIN checksSergey Vojtovich2019-08-221-30/+28
|
* Cleanup log_type_arg of MYSQL_BIN_LOG::open()Sergey Vojtovich2019-08-224-11/+7
| | | | It is always LOG_BIN anyway.
* Cleanup MYSQL_LOGSergey Vojtovich2019-08-222-39/+8
| | | | | | Embed MYSQL_LOG::init(). Reduce visibility of MYSQL_LOG::init_and_set_log_file_name(). Cleanup unused mysql_bin_log_file_name() and mysql_bin_log_file_pos().
* MDEV-20384 Assertion `field.is_sane()' failed in ↵Alexander Barkov2019-08-193-0/+51
| | | | Protocol_text::store_field_metadata
* Updated spider result fileMonty2019-08-171-1/+1
| | | | | Kentoku told me that this is ok and that he just had forgot to do that as part of an earlier bug fix
* MDEV-20363 Assertion `is_unsigned() == attr.unsigned_flag' failed in ↵Alexander Barkov2019-08-163-3/+34
| | | | Type_handler_longlong::make_table_field
* Merge 10.4 into 10.5Marko Mäkelä2019-08-16119-1304/+2738
|\
| * Merge 10.3 into 10.4Marko Mäkelä2019-08-1624-247/+563
| |\
| | * Merge 10.2 into 10.3Marko Mäkelä2019-08-164-12/+11
| | |\
| | | * MDEV-19200: shutdown timeout on innodb.undo_truncate_recoverMarko Mäkelä2019-08-163-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Optimize the test by dropping the table early and by using only one undo log thread, so that purge will be doing more useful work and less busy work of suspending and resuming the worker threads. The test used to cause shutdown timeout on 10.4 on buildbot, and for me locally when using --mysqld=--innodb-sync-debug. With these tweaks, it passes for me with --mysqld=--innodb-sync-debug.
| | | * MDEV-8588/MDEV-19740: Restore a conditionMarko Mäkelä2019-08-161-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It looks like the merge of MySQL 5.7.9 to MariaDB 10.2.2 conflicted with earlier changes that were made in MDEV-8588. row_search_mvcc(): If the page is corrupted, avoid invoking btr_cur_store_position(). The caller should not try to fetch the next record after a hard error.
| | * | Silence GCC 9.2.1 -Warray-boundsMarko Mäkelä2019-08-161-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | No memory access violated the bounds of fake_extra_buf[], but GCC does not like the fact that the pointer fake_extra ends up pointing before the array. Allocate a dummy element at the start of fake_extra_buf[] in order to silence the warning.
| | * | Merge 10.2 into 10.3Marko Mäkelä2019-08-155-14/+15
| | |\ \ | | | |/
| | | * MDEV-19740: Remove a bogus conditionMarko Mäkelä2019-08-151-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | This triggered a "may be uninitialized" warning from GCC 9.2.1. The bogus-looking condition was added in 7e916bb86f512ff79f30d809b813608a625ec5ba
| | | * MDEV-19740: Silence a bogus "may be uninitialized" warningMarko Mäkelä2019-08-151-8/+3
| | | |
| | | * MDEV-19740: Fix C++11 violations caught by GCC 9.2.1Marko Mäkelä2019-08-152-7/+19
| | | |
| | | * Disable galera.query_cache as it still fails on bb and azure.Jan Lindström2019-08-151-0/+1
| | | |
| | * | MDEV-20348: DROP TABLE IF EXISTS killed on master but was replicatedSujatha2019-08-153-33/+123
| | |\ \ | | | |/ | | | | | | | | Merge branch '10.2' into 10.3
| | | * MDEV-20348: DROP TABLE IF EXISTS killed on master but was replicatedSujatha2019-08-143-36/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: ======= DROP TABLE IF EXISTS was killed. The table still exists on the master but the DDL was still logged. Analysis: ========= During the execution of DROP TABLE command "ha_delete_table" call is invoked to delete the table. If the query is killed at this point, the kill command is not handled within the code. This results in two issues. 1) The table which is not dropped also gets written into the binary log. 2) The code continues further upon receiving 'KILL QUERY'. Fix: === Upon receiving the KILL command the query should stop its current execution. Tables which were successfully dropped prior to KILL command should be included in the binary log.
| | * | MDEV-20311 row_ins_step accesses unitialized memoryAleksey Midenkov2019-08-152-10/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ins_node_create() does not initialize all members of que_common_t, so zero-init them with mem_heap_zalloc(). Handle out-of-memory correctly. Init insert_node->common.parent to fulfill the contract of thr usage. Free insert_node subtree at row_update_vers_insert() exit.
| | * | MDEV-20351 Window function BIT_OR() OVER (..) return a wrong data typeAlexander Barkov2019-08-153-1/+59
| | | |