- 18 Dec, 2014 1 commit
-
-
Sergey Petrunya authored
generate_derived_keys_for_table() did not work correctly in the case where - it had a potential index on derived table - however, TABLE::check_tmp_key() would disallow creation of this index after looking at its future key parts (because of the key parts exceeding max. index length) - the code would leave a KEYUSE structure that refers to a non-existant index. Depending on further optimizer calculations, this could cause a crash.
-
- 15 Nov, 2014 1 commit
-
-
Alexey Botchkov authored
Fixed the case when a polygon contains a single-point ring.
-
- 13 Nov, 2014 1 commit
-
-
Sergey Petrunya authored
Backport to 5.3: - Don't call index_reader->interrupt_read() if the index reader has returned all rows that matched its keys.
-
- 28 Oct, 2014 4 commits
-
-
Sergey Petrunya authored
-
Sergey Petrunya authored
(Backport to 5.3) (Attempt #2) - Don't attempt to use BKA for materialized derived tables. The table is neither filled nor fully opened yet, so attempt to call handler->multi_range_read_info() causes crash.
-
Sergey Petrunya authored
(Backport to 5.3) (variant #2, with fixed coding style) - Make Mrr_ordered_index_reader::resume_read() restore index position only if it was saved before with Mrr_ordered_index_reader::interrupt_read().
-
Sergey Petrunya authored
- TABLE::create_key_part_by_field() should not set PART_KEY_FLAG in field->flags = The reason is that it is used by hash join code which calls it to create a hash table lookup structure. It doesn't create a real index. = Another caller of the function is TABLE::add_tmp_key(). Made it to set the flag itself. - The differences in join_cache.result could also be observed before this patch: one could put "FLUSH TABLES" before the queries and get exactly the same difference.
-
- 15 Oct, 2014 1 commit
-
-
Igor Babaev authored
After constant row substitution the WHERE condition may be simplified and its multiple equality may be changed. In this case the references to these multiple equalities from the COND_EQUAL objects associated with ON expressions must be updated. Also we have to take into account that this simplification may lead to equalities of the form field=const that are mutually exclusive with some of the equalities in ON expressions.
-
- 09 Sep, 2014 1 commit
-
-
Igor Babaev authored
Avoided exponential recursive calls of JOIN_CACHE::join_records() in the case of non-nested outer joins. A different solution is required to resolve this performance problem for nested outer joins.
-
- 04 Aug, 2014 1 commit
-
-
Igor Babaev authored
-
- 01 Aug, 2014 2 commits
-
-
Sergei Golubchik authored
-
Igor Babaev authored
Do not define a look-up key for a temporary table if its length exceeds the maximum length of such keys.
-
- 28 Jul, 2014 1 commit
-
-
Alexander Barkov authored
MDEV-6302 Wrong result set when using GROUP BY FROM_UNIXTIME(...)+0 Fixed.
-
- 23 Jul, 2014 2 commits
-
-
Sergei Golubchik authored
KILL USER should ignore system threads where sctx->user=sctx->host=NULL
-
Alexander Barkov authored
Item_func_min_max::get_date() did not clear ltime->year when returning a TIME value.
-
- 05 Jun, 2014 1 commit
-
-
Alexander Barkov authored
"have_warnings" was set to an uninialized value when converting a negative number to datetime.
-
- 04 Jun, 2014 1 commit
-
-
Alexander Barkov authored
MDEV-6099 Bad results for DATE_ADD(.., INTERVAL 2000000000000000000.0 SECOND) MDEV-6097 Inconsistent results for CAST(int,decimal,double AS DATETIME) MDEV-6100 No warning on CAST(9000000 AS TIME)
-
- 02 Jun, 2014 3 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
unknown authored
mysql_derived_merge() made correctly working with views.
-
- 01 May, 2014 1 commit
-
-
unknown authored
It is triple bug with one test suite: 1. Incorrect outer table detection 2. Incorrect leaf table processing for multi-update (should be full like for usual updates and inserts) 3. ON condition fix_fields() fould be called for all tables of the query.
-
- 23 Apr, 2014 1 commit
-
-
Alexander Barkov authored
-
- 22 Apr, 2014 1 commit
-
-
Elena Stepanova authored
MariaDB-specific result replacement
-
- 21 Apr, 2014 4 commits
-
-
Elena Stepanova authored
A typo in include file caused the timeout counter to be 10x less than expected. It was fixed in 5.5.20+ along with a bigger change, now also fixing in 5.1-5.3.
-
Alexander Barkov authored
-
Alexander Barkov authored
MDEV-6134 SUBSTRING_INDEX returns wrong result for 8bit character sets when delimiter is not found Recording the forgotten test results.
-
Alexander Barkov authored
-
- 18 Apr, 2014 1 commit
-
-
Alexander Barkov authored
-
- 17 Apr, 2014 1 commit
-
-
Igor Babaev authored
Both bugs are caused by the same problem: the function optimize_cond() should update the value of *cond_equal rather than the value of join->cond_equal, because it is called not only for the WHERE condition, but for the HAVING condition as well.
-
- 11 Apr, 2014 3 commits
- 23 Mar, 2014 1 commit
-
-
Alexander Barkov authored
MDEV-5783 Assertion `0' failed in make_sortkey(SORTPARAM*, uchar*, uchar*) on ORDER BY HEX( UNCOMPRESSED_LENGTH( pk ) )
-
- 21 Mar, 2014 1 commit
-
-
unknown authored
-
- 18 Mar, 2014 1 commit
-
-
Sergey Petrunya authored
-
- 16 Mar, 2014 3 commits
-
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
Sergei Golubchik authored
-
- 15 Mar, 2014 1 commit
-
-
Sergei Golubchik authored
-
- 14 Mar, 2014 1 commit
-
-
unknown authored
MDEV-5446: Assertion `!table || (!table->read_set || bitmap_is_set(table->read_set, field_index))' fails on EXPLAIN EXTENDED with VALUES function field_index should be set correctly for null field created by Item_insert_value::fix_fields().
-