summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* move DBUG_END() after my_thread_global_end(), when all threads have already ↵Sergei Golubchik2012-03-261-2/+3
| | | | died.
* a couple of minor post-5.5-merge cleanupsSergei Golubchik2012-03-267-13/+8
| | | | | | | | | | | | | | | include/mysql_com.h: remove "shutdown levels" that aren't shutdown levels from mysql_enum_shutdown_level mysys/my_addr_resolve.c: my_snprintf in 5.5 (but not in 5.3) supports %p sql/item_func.cc: use a method (that exists only in 5.5) instead of directly accessing a member sql/item_subselect.cc: use a method (that exists only in 5.5) instead of directly accessing a member sql/opt_subselect.cc: use a method (that exists only in 5.5) instead of directly accessing a member sql/sql_select.cc: use a method (that exists only in 5.5) instead of directly accessing a member
* mergeVladislav Vaintroub2012-03-253-21/+27
|\
| * Small Windows specific performance fixes:Vladislav Vaintroub2012-03-253-21/+27
| | | | | | | | | | | | | | | | | | | | | | - Use native memcmp() supplied with C runtime instead of hand-unrolled loop ptr_compare_N loop Prior to fix ptr_compare_0() has 3.7% samples in OLTP-RO in-memory. Fix brings this down to 1.8% (all memcmp samples) - Innodb : fix UT_RELAX_CPU to be defined as YieldProcessor, as was also originally intended (but intention was lost in the #ifdef maze This reduces number of ut_delay() samples in profile from 1.5% to 0.5%
* | fix a memory leak in dbugSergei Golubchik2012-03-241-1/+11
|/
* Merge MariaDB 5.3 into latest MariaDB 5.5unknown2012-03-2442-382/+893
|\
| * Merge mariadb 5.3->mariadb 5.5unknown2012-03-2442-382/+893
| |\
| | * Improve filesort performance for small sorts: Don't write pointers to ↵unknown2012-03-242-38/+28
| | | | | | | | | | | | records that we will never use.
| | * Speedup:Michael Widenius2012-03-238-25/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't call update_virtual_fields() if table->vfield is not set - Don't prealloc memory for in open_tables() as this is very seldom used. sql/records.cc: Don't call update_virtual_fields() if table->vfield is not set sql/sql_base.cc: Don't prealloc memory for in open_tables() as this is very seldom used. Don't call update_virtual_fields() if table->vfield is not set sql/sql_delete.cc: Don't call update_virtual_fields() if table->vfield is not set sql/sql_handler.cc: Don't call update_virtual_fields() if table->vfield is not set sql/sql_join_cache.cc: Don't call update_virtual_fields() if table->vfield is not set Move some frequent values to local variables sql/sql_table.cc: Don't call update_virtual_fields() if table->vfield is not set sql/sql_update.cc: Don't call update_virtual_fields() if table->vfield is not set sql/table.cc: Assert if update_virtual_fields is called with wrong parameters
| | * Fixes lp:941889 "JOIN constructors takes a long time in 5.3"Michael Widenius2012-03-233-16/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Remove all references of MAX_TABLES from JOIN struct and make these dynamic - Updated Join_plan_state to allocate just as many elements as it's needed sql/opt_subselect.cc: Optimized version of Join_plan_state sql/sql_select.cc: Set join->positions and join->best_positions dynamicly Don't call update_virtual_fields() if table->vfield is not set. sql/sql_select.h: Remove all references of MAX_TABLES from JOIN struct and Join_plan_state and make these dynamic
| | * Speedups:Michael Widenius2012-03-238-46/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Optimize away calls to hp_rec_hashnr() by cashing hash - Try to get more rows / block (to minimize overhead of HP_PTRS) in HEAP tables. storage/heap/_check.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Print cleanups storage/heap/heapdef.h: Added place to hold calculated hash value for row storage/heap/hp_create.c: Try to get more rows / block (to minimize overhead of HP_PTRS) storage/heap/hp_delete.c: Optimize away calls to hp_rec_hashnr() by cashing hash. storage/heap/hp_hash.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Remove some not needed DBUG_PRINT storage/heap/hp_test2.c: Increased max table size as now heap tables takes a bit more space (a few %) storage/heap/hp_write.c: Optimize away calls to hp_rec_hashnr() by cashing hash. Remove duplicated code More DBUG_PRINT storage/maria/ma_create.c: More DBUG_PRINT
| | * Fixed LP bug #954900.Igor Babaev2012-03-223-1/+139
| | | | | | | | | | | | | | | | | | | | | | | | If the first component of a ref key happened to be a constant appeared after constant row substitution then no store_key element should be created for such a component. Yet create_ref_for_key() erroneously could create such an element that caused construction of invalid ref keys and wrong results for some joins.
| | * Automerge.unknown2012-03-226-27/+41
| | |\
| | * \ mergeSergei Golubchik2012-03-217-233/+17
| | |\ \
| | | * \ mergeSergei Golubchik2012-03-217-233/+17
| | | |\ \
| | | | * | lp:933959 Assertion `0' failed in net_end_statement(THD*) on concurrent ↵Sergei Golubchik2012-03-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | SELECT FROM I_S.INNODB_SYS_INDEXES and ALTER TABLE Workaround: report a generic error if an I_S plugin failed silently.
| | | | * | Fix access to uninitialized variable in innodb error message in case ↵Vladislav Vaintroub2012-03-152-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | WriteFile() fails.
| | | | * | restore my_safe_printf_stderr for "crash-safe sigsegv handler"Sergei Golubchik2012-03-144-231/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | use vsnprintf() use write() on windows, not WriteFile or fwrite() localtime_r is still a problem
| | * | | | mdev-191 SHOW TABLES was unnecessary opening .frm filesSergei Golubchik2012-03-211-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mark the corresponding I_S table as OPTIMIZE_I_S_TABLE, to let the I_S optimizer figure out whether files need to be opened, and don't open the tables unless I_S optimizer says so.
| | * | | | Merge BUG#952372Sergey Petrunya2012-03-214-2/+70
| | |\ \ \ \
| | | * | | | BUG#952372: Server crashes on 2nd execution of PS in find_field_in_tables ↵Sergey Petrunya2012-03-184-2/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with semijoin+materialization - The problem was that convert_subq_to_jtbm() attached the semi-join TABLE_LIST object into the wrong list: they used to attach it to the end of parent_lex->leaf_tables.head()->next_local->...->next_local. This was apparently inccorect, as one can construct an example where JTBM nest is attached to a table that is inside some mergeable VIEW, which breaks (causes crash) for name resolution on the subsequent statement re-execution. - Solution: Attach to the "right" list. The "wording" was copied from st_select_lex::handle_derived.
| | * | | | | Fixed LP bug #954262.Igor Babaev2012-03-204-1/+409
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug in the constructor SEL_IMERGE::SEL_IMERGE could cause huge excessive memory requests.
| | * | | | | BUG#952583: Server crashes in Item_field::fix_after_pullout on INSERT .. SELECTSergey Petrunya2012-03-194-11/+50
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Take into account that there may exist Item_field objects with context==NULL.
* | | | | | | MDEV-15 Log all sql errors.Alexey Botchkov2012-03-2415-79/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | modified for MySQL 5.5. Logger service moved to the plugin/sql_errlog directory to be properly used later. plugin/sql_errlog/sql_errlog.c: Fixes for bugs #956427 (SQL_ERROR_LOG plugin produces bogus warnings about sql-error-log-size-limit value) and #956463 (Server crashes if SQL_ERROR_LOG fails to initialize) they're also MDEV-184 and MDEV-183 The sql_error_log_deinit() should be prepared for the logger_file to be NULL. The logger_file_size_limit upper limit wasn't properly set.
* | | | | | | mdev-200 set session dbug resets the output to stderr.Sergei Golubchik2012-03-235-103/+127
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | it makes "./mtr --debug" unusable revert the mysql fix for bug#46165. implement shared FILE's with reference counting
* | | | | | | MDEV-186 Client programs throw warnings about memory loss when executed with ↵Sergei Golubchik2012-03-2311-27/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | --help or alike suppress these harmless but confusing warnings. fix the program name (MY_INIT) in mysqldump client/mysqldump.c: for backward compatibility, prefix mysqldump error messages with "mysqldump", not with the full path of the executable
* | | | | | | Fix Windows buildVladislav Vaintroub2012-03-221-3/+6
| | | | | | |
* | | | | | | precache results of system tests on WindowsVladislav Vaintroub2012-03-221-0/+2
| | | | | | |
* | | | | | | Fix CMake code to work with older cmake version, such as 2.6.2Vladislav Vaintroub2012-03-221-10/+16
|/ / / / / /
* | | | | | Null merge from 5.3.unknown2012-03-220-0/+0
|\ \ \ \ \ \ | | |_|_|_|/ | |/| | | |
| * | | | | Backport some simple performance patches from 5.5.unknown2012-03-226-27/+41
| |/ / / /
* | | | | Do not use Valgrind client requests in a normal release build, they have a ↵unknown2012-03-221-1/+1
| | | | | | | | | | | | | | | | | | | | small but noticable performance impact.
* | | | | Make Replication filter settings dynamic.Davi Arnaut2012-03-1923-18/+1483
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the slave options --replicate-* dynamic variables so that these options can be changed dynamically while the server is running, which enables users to modify replication filtering rules without having to stop and restart the server. This is accomplished by just requiring that the slave threads are stopped when these options are set dynamically. Since filtering rules are only used by the SQL slave thread, setting them while the thread is not running avoids the need for locking.
* | | | | mergeVladislav Vaintroub2012-03-211-4/+4
|\ \ \ \ \
| * | | | | Fix race condition in rpl_stop_start_slave. after kill connection, wait ↵Vladislav Vaintroub2012-03-211-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | until it is gone in processlist
* | | | | | Few simple performance fixes found with sysbench oltp.lua and Oprofile:unknown2012-03-216-27/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Avoid needless load/stores in my_hash_sort_simple due to possible aliasing - Avoid expensive Join_plan_state constructor in choose_subquery_plan when no subquery - Avoid calling update_virtual_fields for every row when no virtual fields.
* | | | | | (no commit message)Sergei Golubchik2012-03-201-1/+1
|\ \ \ \ \ \
| * | | | | | more MY_INIT(argv[0]) in unittestsSergei Golubchik2012-03-151-1/+1
| | | | | | |
| * | | | | | another fix for --innodb-trx* name conflictSergei Golubchik2012-03-143-2/+7
| | | | | | |
* | | | | | | Fixed lp:947474 "Assertion `table->file->stats.records > 0 || error' failed ↵Michael Widenius2012-03-206-8/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in join_read_const_table on concurrent SELECT and ALTER, constant Aria table" Remove Aria state history for drop/rename mysql-test/suite/maria/r/maria-recovery2.result: Updated old (wrong) test result sql/handler.cc: Fixed wrong argument to implict_commit storage/maria/ha_maria.cc: Ensure that we don't use file->trn if THD_TRN is 0. (This means that implict_commit() has been called and the trn object is not ours anymore) storage/maria/ma_extra.c: Remove Aria state history for drop/rename storage/maria/ma_rename.c: Remove Aria state history for rename storage/maria/ma_state.c: More DBUG_PRINT
* | | | | | | Cleanups:Michael Widenius2012-03-207-62/+98
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Don't use SAFEMALLOC on valgrind builds (slows things down) - Added back lost option from 5.3: debug-mutex-deadlock-detector - Flush pages before taking lock mutex (speeds up closing of Aria tables). BUILD/SETUP.sh: - Don't use SAFEMALLOC on valgrind builds (slows things down) sql/lock.cc: Make default argument explicit (improves readability) sql/mysqld.cc: Removed compiler warnings Sorted debug options alphabetically Added back lost option from 5.3: debug-mutex-deadlock-detector storage/maria/ma_close.c: Flush pages before taking lock mutex (speeds up closing of Aria tables). storage/maria/ma_open.c: More DBUG_PRINT storage/maria/maria_def.h: Better DBUG_PRINT storage/maria/trnman.c: Better DBUG_PRINT
* | | | | | | MergeIgor Babaev2012-03-1744-197/+710
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | |
| * | | | | | Merge 5.3->5.5Igor Babaev2012-03-1744-197/+710
| |\ \ \ \ \ \ | | | |/ / / / | | |/| | | |
| | * | | | | Merge 5.2->5.3unknown2012-03-1417-67/+307
| | |\ \ \ \ \ | | | | |_|/ / | | | |/| | |
| | | * | | | test suite for LP bug#694450unknown2012-03-142-0/+37
| | | | | | |
| | | * | | | mergeVladislav Vaintroub2012-03-122-12/+8
| | | |\ \ \ \ | | | | | |_|/ | | | | |/| |
| | | | * | | LP953714: Fix formatting of the crash messages in signal/exception handlerVladislav Vaintroub2012-03-122-12/+8
| | | | | | |
| | | * | | | LP952607: Do not show MySQL services preinstalled by Dell in the upgrade wizardVladislav Vaintroub2012-03-121-1/+38
| | | | | | |
| | | * | | | Fixed LP bug #930814.Igor Babaev2012-03-093-2/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This bug was introduced into mariadb 5.2 in the December 2010 with the patch that added a new engine property: the ability to support virtual columns. As a result of this bug the information from frm files for tables that contained virtual columns did not appear in the information schema tables.
| | | * | | | Added test case for lp:905782 "Assertion `pageno < ((1ULL) << 40)' failed at ↵Michael Widenius2012-03-092-10/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ma_pagecache.c:3438: pagecache_read or table corruption on INSERT into a ucs2 table" The orignal bug has been fixed earlier