- 23 Feb, 2010 1 commit
-
-
Sergey Petrunya authored
-
- 21 Feb, 2010 4 commits
-
-
Sergey Petrunya authored
for table elimination in debug builds. (part 2)
-
Sergey Petrunya authored
for table elimination in debug builds.
-
Sergey Petrunya authored
In Item_ref::fix_fields() do invoke mark_as_dependent() for outside references in all cases (see email for more details) sql/item.cc: In Item_ref::fix_fields() do invoke mark_as_dependent() for outside references in all cases. sql/item.h: Change Field_enumerator to enumerate Item_field-s not Field-s. sql/item_subselect.cc: Change Field_enumerator to enumerate Item_field-s not Field-s. sql/opt_table_elimination.cc: Change Field_enumerator to enumerate Item_field-s not Field-s.
-
Sergey Petrunya authored
Don't go into branch that calls upper_refs.empty() more than once per PREPARE or EXECUTE * Avoid crashing when processing references to outside from subquery's HAVING (will explain in more details in email) sql/item.h: * Avoid crashing when processing references to outside from subquery's HAVING (will explain in more details in email) sql/item_subselect.cc: * Better self-recursion protection in Item_subselect::fix_fields. Don't go into branch that calls upper_refs.empty() more than once per PREPARE or EXECUTE
-
- 20 Feb, 2010 1 commit
-
-
Sergey Petrunya authored
prepared statements: re-collect list of upper refs on every PS re-execution.
-
- 17 Feb, 2010 4 commits
-
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
- More test results updates (checked)
-
Sergey Petrunya authored
- Update test results - More comments - Add Item_in_optimizer::transform() which was lost in backport
-
- 15 Feb, 2010 1 commit
-
-
Sergey Petrunya authored
- Factor out subquery code into sql/opt_subselect.{h,cc} - Stop using the term "confluent" (was used due to misreading the dictionary)
-
- 12 Feb, 2010 1 commit
-
-
Sergey Petrunya authored
-
- 11 Feb, 2010 7 commits
-
-
Sergey Petrunya authored
- Variant #3 of the fix. It also = Unifies code with table elimination's = is able to handle FROM-subquery pullout.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
- Fix valgrind failure: do initialize Item::is_expensive_cache.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
XOR conditions are not optimized, and Item_cond_xor therefore acts like type Func_item even though it inherits from Item_cond. A subtle difference between Item_func and Item_cond is that you can get the children Items from the former by calling arguments(), and from the latter by calling argument_list(). However, since Item_cond_xor inherits from Item_cond, arguments() did not return any Items. The fact that Item_cond_xor::arguments() did not return it's children items lead to a problem for make_cond_for_index(); the method accepted that XOR items on unindexed columns were pushed using ICP. ICP evaluation of non-indexed columns does not (and should not) work. The fix for this bug is to make Item_cond_xor return it's children items when the arguments() method is used. This makes Item_cond_xor behave more like Item_func and in turn allows make_cond_for_index() to discover any conflicting children Items. This is a temporary fix and should be removed when Item_cond_xor is optimized.
-
Sergey Petrunya authored
-
Sergey Petrunya authored
process temporary table overflow correctly.
-
- 28 Jan, 2010 1 commit
-
-
Sergey Petrunya authored
- Backport into Maria DB 5.3, part 1
-
- 18 Jan, 2010 1 commit
-
-
Sergey Petrunya authored
- Enable semi-join handling in the join cache code
-
- 17 Jan, 2010 4 commits
-
-
Sergey Petrunya authored
- Fix valgrind failure - Test result fixes (not finished)
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
There are still test failures because of: - Wrong query results in outer join + semi join - EXPLAIN output differences
-
- 01 Jan, 2010 1 commit
-
-
Sergey Petrunya authored
-
- 27 Dec, 2009 1 commit
-
-
Sergey Petrunya authored
- Do call update_used_tables() for new conditions obtained when adding outer join's triggered conditions. Correct values of used_tables() are now needed for condition pushdown. - Update test results mysql-test/suite/pbxt/r/join_outer.result: DS-MRR backport: - Update test results sql/sql_select.cc: DS-MRR backport: fix buildbot valgrind failures: - Do call update_used_tables() for new conditions obtained when adding outer join's triggered conditions. Correct values of used_tables() are now needed for condition pushdown.
-
- 22 Dec, 2009 5 commits
-
-
Igor Babaev authored
-
Igor Babaev authored
-
Sergey Petrunya authored
- Add opt_range_mrr.cc file into source repo mysql-test/r/myisam_mrr.result: Make testcase work for both debug and release mysql-test/t/myisam_mrr.test: Make testcase work for both debug and release sql/Makefile.am: - Add opt_range_mrr.cc file into source repo
-
Sergey Petrunya authored
-
Sergey Petrunya authored
- Make index condition pushdown be controlled by an @@optimizer_switch flag, not by @@engine_condition_pushdown - Make MRR buffer size be controlled by @@mrr_buffer_size, not by @@read_rnd_buffer_size - Move parts of code to separate files - Code cleanup - Add --sorted_result to some SELECTs in tests.
-
- 21 Dec, 2009 2 commits
-
-
Igor Babaev authored
-
Igor Babaev authored
WL#2771 "Block Nested Loop Join and Batched Key Access Join"
-
- 19 Dec, 2009 1 commit
-
-
Sergey Petrunya authored
-
- 16 Dec, 2009 1 commit
-
-
Sergey Petrunya authored
- Fix PBXT test results (PBXT doesn't support MRR or ICP, but we get result diffs because we've also backported a fix that - prints out "Using where" when the table has part of WHERE that it has got from LEFT JOIN's ON expression - Does a better job at removing equalities that are guaranteed to be true by use of ref acccess.
-
- 15 Dec, 2009 4 commits
-
-
Sergey Petrunya authored
-
Sergey Petrunya authored
-
Sergey Petrunya authored
WL#2474 "Multi Range Read: Change the default MRR implementation to implement new MRR interface" WL#2475 "Batched range read functions for MyISAM/InnoDb" "Index condition pushdown for MyISAM/InnoDB" - Adjust test results (checked) - Code cleanup.
-
Sergey Petrunya authored
WL#2474 "Multi Range Read: Change the default MRR implementation to implement new MRR interface" WL#2475 "Batched range read functions for MyISAM/InnoDb" "Index condition pushdown for MyISAM/InnoDB" - Fix valgrind failures
-