- 21 May, 2019 13 commits
-
-
Sergey Vojtovich authored
Do not reset THD ha_data in spider_close_connection(), cleaner approach is to let ha_close_connection() do it. Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Use thd_get_ha_data()/thd_set_ha_data() which protect against plugin removal until it has THD ha_data. Do not reset THD ha_data in ha_federatedx::disconnect(), cleaner approach is to let ha_close_connection() do it. Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
It was wrong anyway, as it may not get updated by the time created thread reads it. And it was 0 for cached threads. Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
It may be beneficial for slow-path, where new thread is to be created. However it is harmful for fast-path, where thread cache can fulfil request: it caused 2 extra loads of write-contended variables. Also shrink variables scope. Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Removed FD_CLOEXEC setting: already done by mysql_socket_accept(). Moved O_NONBLOCK setting out of accepting loop. Removed blocking acceptance attempt, which was dead code. It was supposed to be executed before the last iteration, however it was actually executed during the last iteration. And it is not correct to block on one socket leaving other sockets unattended anyway. Gives ~5% throughput improvemet in sysbench connect benchmark. Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
Part of MDEV-19515 - Improve connect speed
-
Sergey Vojtovich authored
abort_loop is intended to break accepting connections loop in main thread, however it is being used for other purposes. cache_thread() is governed by kill_cached_threads, no need to check abort_loop here. Check in create_new_thread() is redundant, abort_loop already checked by caller. Part of MDEV-19515 - Improve connect speed
-
Robert Bindar authored
-
Gagan Goel authored
This commit adds a new feature to the server to add comments at the database level. 1024 bytes is the maximum comment length allowed. If the comment length exceeds this limit, a new error/warning code 4144 is thrown, based on whether thd->is_strict_mode() is true/false. The database comment is also added to the db.opt file, as well as to the information_schema.schemata table.
-
- 16 May, 2019 1 commit
-
-
Monty authored
-
- 15 May, 2019 3 commits
-
-
Jan Lindström authored
Make sure that SIGNALs are not overwritten before they are received.
-
Oleksandr Byelkin authored
-
Varun Gupta authored
-
- 14 May, 2019 4 commits
-
-
Sergey Vojtovich authored
Use different signal names, so that subsequent WAIT_FOR is not awaken by previous signal.
-
Oleksandr Byelkin authored
MDEV-19277: Add status variable that gets incremented if connection is aborted prior to authentication MDEV-19282: Log more specific warning with log_warnings=2 if connection is aborted prior to authentication
-
Marko Mäkelä authored
In 62d28f83 the CMake variable IS_BIG_ENDIAN became orphaned. Remove it.
-
Jan Lindström authored
In wsrep_plugins_post_init we iterate all theads and if they are galera appliers (wsrep_applier) we init session variables. However, current_thd was not set and recent changes on session variables require holding LOCK_gloal_system_variables mutex. This is 10.4 version.
-
- 13 May, 2019 5 commits
-
-
Varun Gupta authored
-
Sergey Vojtovich authored
With MDEV-19384 fixed FTWRL releases HANDLER locks early, which allows concurrent threads to go. Test case may get stuck on FTWRL waiting for LOCK TABLES.
-
Monty authored
-
Monty authored
-
Monty authored
- Remove warning about aria_control_file - Write to unique test file Other things: - Fixed typo in aria_chk --help
-
- 11 May, 2019 2 commits
-
-
Varun Gupta authored
So to push index condition for each join tab we have calculate the index condition that can be pushed and then remove this index condition from the original condition. This is done through the function make_cond_remainder. The problem is the function make_cond_remainder does not remove index condition when there is an OR operator. Fixed this by making the function make_cond_remainder to keep in mind of the OR operator. Also updated results for multiple test files which were incorrectly updated by the commit e0c1b3f2 code which was supposed to remove the condition present in the index condition was not getting executed when the condition had OR operator, with AND the pushed index condition was getting removed from where. This problem affects all versions starting from 5.5 but this is a performance improvement, so fixing it in 10.4
-
Monty authored
Problem was that SHOW CREATE didn't remove PAGE_CHECKSUM=1
-
- 10 May, 2019 2 commits
-
-
hygonsoc authored
Signed-off-by: hygonsoc <hygonsoc@gmail.com>
-
Daniel Black authored
For a table column `a`, the above expressions logically equate to false in all cases. With this patch the optimizer knows about this and queries like: SELECT * FROM t1 WHERE a!=a no longer need to evaluate a!=a for every row. The same applies if the expression was `a<a`, or `a>a` An `EXPLAIN SELECT COOUNT(*) FROM t1 WHERE a<a` will show: id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Impossible WHERE Similarly `NOT (a!=a)` is always true. EXPLAIN SELECT COUNT(*) FROM t1 WHERE not (a!=a); id select_type table type possible_keys key key_len ref rows Extra 1 SIMPLE NULL NULL NULL NULL NULL NULL NULL Select tables optimized away
-
- 09 May, 2019 2 commits
-
-
Vladislav Vaintroub authored
With MAX_INDEXIES=64(default), key_map=Bitmap<64> is just a wrapper around ulonglong and thus "trivial" (can be bzero-ed, or memcpy-ed, and stays valid still) With MAX_INDEXES=128, key_map = Bitmap<128> is not a "trivial" type anymore. The implementation uses MY_BITMAP, and MY_BITMAP contains pointers which make Bitmap invalid, when it is memcpy-ed/bzero-ed. The problem in 10.4 is that there are many new key_map members, inside TABLE or KEY, and those are often memcopied and bzeroed The fix makes Bitmap "trivial", by inlining most of MY_BITMAP functionality. pointers/heap allocations are not used anymore.
-
Monty authored
-
- 07 May, 2019 1 commit
-
-
Vladislav Vaintroub authored
-
- 06 May, 2019 5 commits
-
-
Igor Babaev authored
Parenthesis around table names and derived tables should be allowed in FROM clauses and some other context as it was in earlier versions. Returned test queries that used such parenthesis in 10.3 to their original form. Adjusted test results accordingly.
-
Monty authored
The deadlock happened between FTWRL under open HANDLER, LOCK TABLE and DROP DATABASE Fixed by reverting the previous fix for handler open in lock_global_read_lock() Fixed the original (wrong) test case in flush_read_lock.test to be repeatable.
-
Vladislav Vaintroub authored
Windows does atomic writes, as long as they are aligned and multiple of sector size. this is documented in MSDN. Fix innodb.doublewrite test to always use doublewrite buffer, (even if atomic writes are autodetected)
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
Fallback to detecting if TRIM is enabled, if we cannot determine seek penalty.
-
- 05 May, 2019 2 commits
-
-
Marko Mäkelä authored
-
Marko Mäkelä authored
-