- 22 Feb, 2012 1 commit
-
-
Sergey Petrunya authored
-
- 21 Feb, 2012 1 commit
-
-
Sergei Golubchik authored
-
- 20 Feb, 2012 4 commits
-
-
Sergey Petrunya authored
- MySQL 5.5 introduced caching of constant items by means of wrapping them in Item_cache_XXX objects. If a subquery was wrapped in this cache, it could end up being pushed down by ICP. - The fix is to add Item_cache::walk() which lets ICP to see that the cache item has a subquery inside it, and disable pushdown for this case.
-
Sergey Petrunya authored
- In MySQL 5.5, print_join() was re-worked to print "FROM dual" when all tables are constant. This change didn't work together with table elimination.
-
Vladislav Vaintroub authored
-
Sergei Golubchik authored
"relocation R_X86_64_PC32 against `handler_index_cond_check' can not be used when making a shared object; recompile with -fPIC" don't use visibility=hidden for external functions
-
- 21 Feb, 2012 4 commits
-
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
mysql-test/suite/innodb_plugin/t/innodb_gis.test: Don't run test if innodb_plugin isn't used.
-
- 20 Feb, 2012 17 commits
-
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
sql/signal_handler.cc: Added missing signal values.
-
Michael Widenius authored
Fixed supression in mysql-test-run so it also works on windows. mysql-test/mysql-test-run.pl: Fixed supression so it also works on windows. mysql-test/valgrind.supp: More general handling of memory loss in dlclose (backported from 5.2) sql/signal_handler.cc: Added newlines around link to how to do bug reports
-
Vladislav Vaintroub authored
-
Vladislav Vaintroub authored
"safe exception patch". Remove misleading comments suggesting about signal() Windows, the routine here is part of a exception handler, and sig parameter is an exception code.
-
Sergey Petrunya authored
- In mi_rkey(), do correct handling of case where mi_yield_and_check_if_killed() detects that the thread was killed (all other similar functions in MyISAM/Aria have slightly different code and do not have this problem). - Also fixed assignment in DBUG_ASSERT - this is 2nd variant of the fix: = make .result file smaller = run KILLable statements in a separate connection, otherwise we could end up trying to KILL the final "DROP TABLE" statement
-
Michael Widenius authored
mysql-test/suite/innodb/t/innodb_bug51920.test: Add another possible connect error
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
-
Michael Widenius authored
Fixed README with link to source Merged InnoDB change to XtraDB README: Added information of where to find MariaDB code storage/archive/ha_archive.cc: Removed memset() of rows, a MariaDB checksum's doesn't touch not used data.
-
Michael Widenius authored
This happend when you have more than 1024 open Aria tables during checkpoint. mysql-test/mysql-test-run.pl: Fixed that variable names are consistent between external and internal server. mysql-test/suite/maria/suite.pm: Test for aria-block-size instead of 'aria' as 'aria' is not set for embedded server. This should be ok for aria tests, as aria is never disabled for these. storage/maria/ma_checkpoint.c: Fixed bug when there are more than 1024 open Aria tables during checkpoint.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
BUG#933407: Valgrind warnings in mark_as_null_row with materialization+semijoin, STRAIGHT_JOIN, impossible WHERE - In return_zero_rows(), don't call mark_as_null_row() for semi-join materialized tables, because 1) they may have been already freed, and 2)there is no real need to call mark_as_null_row() for them.
-
- 19 Feb, 2012 2 commits
-
-
Igor Babaev authored
This bug is the result of an incomplete/inconsistent change introduced into 5.3 code when the cond_equal parameter were added to the function optimize_cond. The change was made during a merge from 5.2 in October 2010. The bug could affect only queries with HAVING.
-
Igor Babaev authored
An outer join query with a semi-join subquery could return a wrong result if the optimizer chose to materialize the subquery. It happened because when substituting for the best field into a ref item used to build access keys not all COND_EQUAL objects that could be employed at substitution were checked. Also refined some code in the function check_join_cache_usage to make it safer.
-
- 17 Feb, 2012 4 commits
-
-
Sergei Golubchik authored
common icp callback in the handler.cc. It can also increment status counters, without making the engine dependent on the exact THD layout (that is different in embedded).
-
Sergei Golubchik authored
-
Igor Babaev authored
This bug led to wrong values of the use_count fields in some SEL_ARG trees that triggered complains on the server side when executing the test case for LP bug 800184 if a debug build of the server was used. This was the result of the incomplete fix for bug 800184. To complete it the following corrections had to be made: - the copy constructor for SEL_TREE must call the new function incr_refs_all() instead of the function incr_refs(), because references to next key parts from any SEL_ARG tree belonging to the list of the first key part has to be adjusted. - the method and_sel_tree of the class SEL_IMERGE must use the copy constructor of the SEL_TREE class to make a copy of its second argument before it ANDs it with any SEL_TREE tree from the processed SEL_IMERGE object.
-
Igor Babaev authored
The bug was fixed with the code back-ported from the patch for LP bug 800184 pushed into mariadb-5.3.
-
- 16 Feb, 2012 3 commits
-
-
Sergey Petrunya authored
timestamp: Thu 2011-12-01 15:12:10 +0100 Fix for Bug#13430436 PERFORMANCE DEGRADATION IN SYSBENCH ON INNODB DUE TO ICP When running sysbench on InnoDB there is a performance degradation due to index condition pushdown (ICP). Several of the queries in sysbench have a WHERE condition that the optimizer uses for executing these queries as range scans. The upper and lower limit of the range scan will ensure that the WHERE condition is fulfilled. Still, the WHERE condition is part of the queries' condition and if ICP is enabled the condition will be pushed down to InnoDB as an index condition. Due to the range scan's upper and lower limits ensure that the WHERE condition is fulfilled, the pushed index condition will not filter out any records. As a result the use of ICP for these queries results in a performance overhead for sysbench. This overhead comes from using resources for determining the part of the condition that can be pushed down to InnoDB and overhead in InnoDB for executing the pushed index condition. With the default configuration for sysbench the range scans will use the primary key. This is a clustered index in InnoDB. Using ICP on a clustered index provides the lowest performance benefit since the entire record is part of the clustered index and in InnoDB it has the highest relative overhead for executing the pushed index condition. The fix for removing the overhead ICP introduces when running sysbench is to disable use of ICP when the index used by the query is a clustered index. When WL#6061 is implemented this change should be re-evaluated.
-
Sergey Petrunya authored
-
unknown authored
-
- 15 Feb, 2012 4 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
unknown authored
-
unknown authored
-