summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* MDEV-20401: Server incorrectly auto-sets lower_case_file_system valuebb-10.1-sysprg-MDEV-20421Julius Goryavsky2020-05-122-4/+6
| | | | | | | | Server auto-sets lower_case_file_system value based on default datadir's behavior instead of instead of using the directory specified by the user through the configuration file or command line options. This patch fixes this problem.
* postfix after e3f5789ac0b2 - var/log/stdout.log contains escape sequences.Vladislav Vaintroub2020-05-051-1/+1
|
* MDEV-22273 jUnit patch: xml test result differs from MTR output in case if retryRasmus Johansson2020-05-042-4/+8
|
* MDEV-22270 JUnit patch: test name contains classnameRasmus Johansson2020-05-041-0/+1
|
* MDEV-19092 Server crash when renaming the column whenbb-10.1-MDEV-19092Thirunarayanan Balathandayuthapani2020-05-044-14/+101
| | | | | | | | FOREIGN_KEY_CHECKS is disabled - Referenced index can be null While renaming the referenced column name. In that case, rename the referenced column name in dict_foreign_t and find the equivalent referenced index.
* Merge branch 'merge-pcre' into 10.1Oleksandr Byelkin2020-04-3024-2517/+2544
|\
| * 8.44Oleksandr Byelkin2020-04-3047-2780/+3636
| |
* | Merge remote-tracking branch 'connect/10.1' into 10.1Oleksandr Byelkin2020-04-302-4/+8
|\ \
| * | - Fix ↵Olivier Bertrand2020-03-112-4/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | https://stackoverflow.com/questions/60625778/import-complex-xml-from-multiple-files-in-mariadb/60637429#60637429 Import complex XML from multiple files in MariaDB Some row results are missing and replaced by the last file one. Thats because Nx and Sx column members are not reset when changing file. modified: storage/connect/tabxml.cpp modified: storage/connect/tabxml.h
* | | Merge branch 'merge-tokudb-5.6' into 10.1Oleksandr Byelkin2020-04-301-1/+1
|\ \ \
| * | | 5.6.47-87.0Oleksandr Byelkin2020-04-301-1/+1
| | | |
* | | | Merge branch '5.5' into 10.1Oleksandr Byelkin2020-04-3020-121/+372
|\ \ \ \
| * | | | BUG#30301356 - SOME EVENTS ARE DELAYED AFTER DROPPING EVENTSergei Golubchik2020-04-304-85/+234
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | queues.c cleanup and refactoring. Restore old version of _downhead() (from before cd483c55209) that works well in an average case. Use it for queue_fix(). Move existing specialized version of _downhead() to queue_replace() where it'll be handling the case it was specifically optimized for (moving the element to the end of the queue). And correct it to fix the heap not only down, but also up (this fixes BUG#30301356). Add unit tests. Collateral cosmetic fixes.
| * | | | correct off-by-one error in CONCATSergei Golubchik2020-04-301-1/+1
| | | | | | | | | | | | | | | | | | | | CONCAT_WS didn't have it
| * | | | Bug#30689251 - BACKPORT TO MYSQL-5.6, BUG#29597896 - NULL POINTER ↵Anushree Prakash B2020-04-301-3/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DEREFERENCE IN LIBMYSQL DESCRIPTION: ============ There can be issues if the packets sent by the server are not proper. Certain checks should be performed at the client side while unpacking fields data. FIX: ==== Check for the appropriate fields data and error out if it is not present. RB: 23601
| * | | | Bug#30628268: OUT OF MEMORY CRASHSivert Sorumgard2020-04-301-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The event scheduler has a THD which is used for e.g. keeping track of the timing of the events. Thus, each scheduling of an event will make use of this THD, which in turn allocates memory in the THD's mem root. However, the mem root was never cleared, and hence, the memory occupied would monotonically increase throughout the life time of the server. The root cause was found by Jon Olav Hauglid, and this fix clears the THD's mem root for each event being scheduled. Change-Id: I462d2b9fd9658c9f33ab5080f7cd0e0ea28382df
| * | | | Bug#29915479 RUNNING COM_REGISTER_SLAVE WITHOUT COM_BINLOG_DUMP CAN RESULTS ↵Sergei Golubchik2020-04-305-1/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | IN SERVER EXIT in fact, in MariaDB it cannot, but it can show spurious slaves in SHOW SLAVE HOSTS. slave was registered in COM_REGISTER_SLAVE and un-registered after COM_BINLOG_DUMP. If there was no COM_BINLOG_DUMP, it would never unregister.
| * | | | cleanup: remove dbug keywords that are never usedSergei Golubchik2020-04-291-33/+0
| | | | |
| * | | | Bug#28388217 - SERVER CAN FAIL WHILE REPLICATING CONDITIONAL COMMENTSSergei Golubchik2020-04-292-1/+26
| | | | | | | | | | | | | | | | | | | | test case
| * | | | Bug#28388217 - SERVER CAN FAIL WHILE REPLICATING CONDITIONAL COMMENTSMaheedhar PV2020-04-291-4/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cause: In case of version based condtional comments, if the condition evaluates to false, it is converted to a regular comment for replication by replacing "!" by " ". Nested comment in a conditional comment is replicated as is. Nested comments are supported only in case of conditional comments and when a the comment on slave is no more a conditional comment, the statement execution fails on the slave. Fix: Convert the nested comment, start from "/*" to "(*" and comment end from "*/" to "*)" for replication. Change-Id: I1a8e385a267b2370529eade094f0258fa96886c0
| * | | | don't enable -Werror in ft-indexSergei Golubchik2020-04-291-3/+3
| | | | |
| * | | | Correct the name of a contributorMarko Mäkelä2020-04-251-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | The name was correctly encoded in UTF-8 before commit 0ce12f70ed2eee1b92e2af27e7dda30db544f492.
| * | | | Fix failure for ipv6 not enabledAnel Husakovic2020-04-242-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In case of ipv6 not enabled tests like `main.ipv6, rpl.rpl_ipv6` failed on aarch buildbot. Fix it by following commits 70dcb46e98e6 and 0bae1957dd124f8382a for `10.2`.
| * | | | MDEV-21932 Another attempt to fix the bug .Igor Babaev2020-04-171-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The first patch for the bug was erroneous: it did not take into account the fact that the modified function get_key_scans_params() was called in different contexts. As a result the patch caused a regression bug MDEV-22191. The patch for this bug introduced an extra parameter. Actually we can do without this parameter and use the fourth parameter for the same puropose - to differentiate between the calls of the function for range access and for index merge access. Also removed the call of get_key_scans_params() in the code of the function merge_same_index_scans() as not needed.
| * | | | Fix wrong argument size passed to --parent-pid strncmp checkDisconnect3d2020-04-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This PR fixes wrong size argument passed in `strncmp(arg, "--parent-pid", 10)` as the `"--parent-pid"` string has length of 12. Closes #1502
* | | | | mysql-test-run.pl - fix strict subs in HAVE_WIN32_CONSOLE (#1521)Daniel Black2020-04-301-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix mtr error: Bareword "HAVE_WIN32_CONSOLE" not allowed while "strict subs" in use at mysql-test-run.pl line 387. Execution of mysql-test-run.pl aborted due to compilation errors. Added in e3f5789ac0b23a16bb71e06b05dec9cfec3161f0
* | | | | MDEV-22419 update windows timezone data from using newest ICU sourceVladislav Vaintroub2020-04-302-4/+6
| | | | | | | | | | | | | | | | | | | | Also fix the link to unicode.org repo, it is now on github.
* | | | | mysql-test-run.pl - show remaining test count and estimated time on WindowsVladislav Vaintroub2020-04-291-12/+33
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Port this functionality from to Windows. It requires Win32::Console module, which is already included into Strawberry perl
* | | | | vio: typo on sock{et}_errno in commentDaniel Black2020-04-291-1/+1
| | | | |
* | | | | InnoDB 5.6.48Marko Mäkelä2020-04-2817-218/+1766
|\ \ \ \ \
| * | | | | MDEV-22393 Corruption for SET GLOBAL innodb_ string variablesMarko Mäkelä2020-04-2813-214/+1762
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several MYSQL_SYSVAR_STR parameters that employ both a validate function callback fail to copy the string for saving the validated value. The affected variables include the following: innodb_ft_aux_table innodb_ft_server_stopword_table innodb_ft_user_stopword_table innodb_buffer_pool_filename The test case is an enhanced version of mysql/mysql-server@0b0c30641fd66336e87394ac28587e40864f8af9 and the code changes are inspired by their fixes. We are also importing and adjusting the test innodb_fts.stopword to get coverage for the variable innodb_ft_user_stopword_table. buf_dump(), buf_load(): Protect srv_buf_dump_filename with LOCK_global_system_variables. fts_load_user_stopword(): Minor cleanup fts_load_stopword(): Remove the parameter global_stopword_table. innobase_fts_load_stopword(): Protect innodb_server_stopword_table against concurrent SET GLOBAL.
* | | | | MDEV-22392 Race condition on SET GLOBAL innodb_buffer_pool_evict='uncompressed'Marko Mäkelä2020-04-281-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | innodb_buffer_pool_evict_uncompressed(): Restart the loop when prev_block might not enjoy mutex protection. This is based on mysql/mysql-server@eccaecac070b6747ecf14d6b9150791f8c3e8f6d
* | | | | Remove a duplicated copyright messageMarko Mäkelä2020-04-281-1/+0
| | | | |
* | | | | XtraDB 5.6.47-87.0Marko Mäkelä2020-04-273-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The only change is a change of the version number. As noted in commit 02af6278fb7c7889a02d617eb23e82fe7967abd7 there were no changes to InnoDB between MySQL 5.6.46 and 5.6.47 either.
* | | | | MDEV-7962 wsrep_on() takes 0.14% in OLTP ROMarko Mäkelä2020-04-2720-220/+160
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function wsrep_on() was being called rather frequently in InnoDB and XtraDB. Let us cache it in trx_t and invoke trx_t::is_wsrep() instead. innobase_trx_init(): Cache trx->wsrep = wsrep_on(thd). ha_innobase::write_row(): Replace many repeated calls to current_thd, and test the cheapest condition first.
* | | | | MDEV-22271 Excessive stack memory usage due to WSREP_LOGSergei Golubchik2020-04-272-9/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fix embedded innodb_plugin tests followup for 7198c6ab2dc
* | | | | MDEV-22078 MariaDB-compat missing from MariaDB 10.4 CentOS 8 Yum RepoSergei Golubchik2020-04-271-7/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backport INSALL_SYMLINK cmake macro from 10.3. It'll make libmysqlclient_r.* symlinks to link to the actual shared library file, not to another symlink. As a bonus it'll fix cmake warning about deprecated LOCATION property
* | | | | MDEV-22203: WSREP_ON is unnecessarily expensive to evaluateMarko Mäkelä2020-04-2710-37/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a backport of the applicable part of commit 93475aff8de80a0ef53cbee924bcb70de6e86f2c and commit 2c39f69d34e64a5cf94720e82e78c0ee91bd4649 from 10.4. Before 10.4 and Galera 4, WSREP_ON is a macro that points to a global Boolean variable, so it is not that expensive to evaluate, but we will add an unlikely() hint around it. WSREP_ON_NEW: Remove. This macro was introduced in commit c863159c320008676aff978a7cdde5732678f975 when reverting WSREP_ON to its previous definition. We replace some use of WSREP_ON with WSREP(thd), like it was done in 93475aff8de80a0ef53cbee924bcb70de6e86f2c. Note: the macro WSREP() in 10.1 is equivalent to WSREP_NNULL() in 10.4. Item_func_rand::seed_random(): Avoid invoking current_thd when WSREP is not enabled.
* | | | | Fix clang 10 warningsMarko Mäkelä2020-04-272-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | _ma_fetch_keypage(): Correct an assertion that used to always hold. Thanks to clang -Wint-in-bool-context for flagging this. double_to_datetime_with_warn(): Suppress -Wimplicit-int-float-conversion by adding a cast. LONGLONG_MAX converted to double will actually be LONGLONG_MAX+1.
* | | | | Aria: Avoid unused variables in embedded serverMarko Mäkelä2020-04-271-1/+1
| | | | |
* | | | | MDEV-22271: Follow-up fix of --embeddedMarko Mäkelä2020-04-271-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since commit 7198c6ab2dc8f8286f6732824ab985a76ebaaddc the ./mtr --embedded tests would fail to start innodb_plugin because of an undefined reference to the symbol wsrep_log(). Let us define a stub for that function. The embedded server is never built WITH_WSREP, but there are no separate storage engine builds for the embedded server. Hence, by default, the dynamic InnoDB storage engine plugin would be built WITH_WSREP and it would fail to load into the embedded server library due to a reference to the undefined symbol.
* | | | | MDEV-22349 MTR re-bootstrap modifies environment variable MYSQLD_BOOTSTRAP_CMDElena Stepanova2020-04-231-1/+2
| | | | |
* | | | | Fix GCC 10 -WoverflowMarko Mäkelä2020-04-171-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | maria_page_crc_check_index(): Do not attempt to convert HA_ERR_WRONG_CRC (176) to my_bool (char). On platforms where char is signed, the 176 will be converted to -80. It turns out that the callers only care whether the result is zero. Let us return 1 in this case, like we do in all other error cases.
* | | | | MDEV-22271 Excessive stack memory usage due to WSREP_LOGMarko Mäkelä2020-04-172-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several tests that involve stored procedures fail on 10.4 kvm-asan (clang 10) due to stack overrun. The main contributor to this stack overrun is mysql_execute_command(), which is invoked recursively during stored procedure execution. Rebuilding with cmake -DWITH_WSREP=OFF shrunk the stack frame size of mysql_execute_command() by more than 10 kilobytes in a WITH_ASAN=ON, CMAKE_BUILD_TYPE=Debug build. The culprit turned out to be the macro WSREP_LOG, which is allocating a separate 1KiB buffer for every occurrence. We replace the macro with a function, so that the stack will be allocated only when the function is actually invoked. In this way, no stack space will be wasted by default (when WSREP and Galera are disabled). This backports commit b6c5657ef27de034439b1505a8b4815c263d6455 from MariaDB 10.3.1. Without ASAN, compilers can be smarter and optimize the stack usage. The original commit message mentions that 1KiB was saved on GCC 5.4, and 4KiB on Mac OS X Lion, which presumably uses a clang-based compiler.
* | | | | Merge branch '5.5' into 10.1Varun Gupta2020-04-161-6/+11
|\ \ \ \ \ | |/ / / /
| * | | | Minor fixup to MDEV-22191Varun Gupta2020-04-161-6/+11
| | | | |
* | | | | MDEV-21549 IMPORT TABLESPACE fails to adjust all tablespace ID in root pagesMarko Mäkelä2020-04-152-4/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After MDEV-12353, the consistency check that I originally added for commit 1b9fe0bbac72d49a32863241b2b5081438b5f691 (InnoDB Plugin for MySQL 5.1) started randomly failing. It turns out that the IMPORT TABLESPACE code was always incorrect: it did not update the (redundantly stored) tablespace ID in index tree root pages. It only does that for page headers and BLOB pointers. PageConverter::update_index_page(): Update the tablespace ID in the BTR_SEG_TOP and BTR_SEG_LEAF of index root pages. This is a backport of commit b8b3edff1376dc68c13d819470edfb33c339a64b.
* | | | | mbstream: Remove duplicate definition of datasink_bufferMarko Mäkelä2020-04-151-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For some reason, when mbstream is compiled with GCC 10, ld will fail to link it due to a multiple definition of datasink_buffer. The code appears to have been like that since the very beginning. Let us remove the duplicate dummy definition.
* | | | | mtr: Only old windows patch-2.5.9 needs --binaryDaniel Black2020-04-141-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows GNU patch 2.7.6 is ok without it. So account for the old buildbot version for now. Linux works without it. --binary fails on FreeBSD-12.0: $ patch --version patch 2.0-12u11 FreeBSD $ patch --binary patch: unrecognized option `--binary'
* | | | | Merge 5.5 into 10.1Marko Mäkelä2020-04-145-7/+67
|\ \ \ \ \ | |/ / / /