Home - Waterfall Grid T-Grid Console Builders Recent Builds Buildslaves Changesources - JSON API - About

Console View

Categories: connectors experimental galera main
Legend:   Passed Failed Warnings Failed Again Running Exception Offline No data

connectors experimental galera main
Sergei Golubchik
MDEV-30036 NULL pointer dereference in partition_info::set_partition_bitmaps_from_table

remove dead code
Sergei Petrunia
MDEV-29129: Performance regression starting in 10.6: select order by limit ...

The cause of regression was handling for ROWNUM() function.
For queries like


ROWNUM() should be computed before the ORDER BY.
The computation was moved to be before the ORDER BY for any entries in
the select list that had RAND_TABLE_BIT set.

This had a negative impact on queries in form:

  SELECT sp_func() FROM t1 ORDER BY ... LIMIT n

where sp_func() is NOT declared as DETERMINISTIC (and so has

The fix is to require evaluation for sorting only for the ROWNUM()
function. Functions that just have RAND_TABLE_BIT() can be computed
after ORDER BY ... LIMIT is applied.

(think about a possible index that satisfies the ORDER BY clause. In
that case, the the rows would be read in the needed order and we would
stop after reading LIMIT rows, achieving the same effect).
Aleksey Midenkov
InnoDB-wise type comparison and index check

  - Removed wrong type check in fk_prepare_create_table()
  - Self-refs also checked via find_referenced_key()
  - DECIMAL, UUID, INET6 works like in InnoDB

From MySQL doc:

Corresponding columns in the foreign key and the referenced key must
have similar data types. The size and sign of fixed precision types
such as INTEGER and DECIMAL must be the same. The length of string
types need not be the same. For nonbinary (character) string columns,
the character set and collation must be the same.

Index prefixes on foreign key columns are not supported. Consequently,
BLOB and TEXT columns cannot be included in a foreign key because
indexes on those columns must always include a prefix length.
Sergei Golubchik
MDEV-17869 AddressSanitizer: use-after-poison in Item_change_list::rollback_item_tree_changes

it's incorrect to use change_item_tree() to replace arguments
of top-level AND/OR, because they (arguments) are stored in a List,
so a pointer to an argument is in the list_node, and individual
list_node's of top-level AND/OR can be deleted in Item_cond::build_equal_items().
In that case rollback_item_tree_changes() will modify the deleted object.

Luckily, it's not needed to use change_item_tree() for top-level
AND/OR, because the whole top-level item is copied and preserved
in prep_where and prep_on, and restored from there.

So, just don't.

Additionally to the test case in the commit it fixes
* ASAN failure of main.opt_tvc --ps
* ASAN failure of main.having_cond_pushdown --ps
Sergei Golubchik

remove casts. uchar can store 1/0 as good as bool.
Sergei Golubchik
MDEV-29890 Update with inner join false row count result

when creating a temp table field from an actual table field,
these two fields are supposed to be mostly identical
(except for BIT field storage), in particular, temp field should
have the same default as the orig field, even if the sql_mode has
been changed meanwhile (e.g. to include NO_ZERO_DATE)
Sergei Golubchik
MDEV-30016 Virtual columns do not support autoincrement columns

change vcol_upgrade test to use stored gcols
Sergei Golubchik

Helper class to swicth to relaxed checks during field copy.
Aleksey Midenkov
Cleanups and FIXMEs (merge with 409019ddb8c)
Sergei Golubchik

rename to stress that is a specific hack for Item_func_nextval
and should not be used for other items.

If a vcol uses Item_func_nextval, a corresponding table for the sequence
should be added to the prelocking list (in that sense NEXTVAL is not
simply a function, but more like a subquery), see add_internal_tables()
in DML_prelocking_strategy::handle_table(). At the moment it is only
implemented for DEFAULT, not for GENERATED ALWAYS AS, thus the
Aleksey Midenkov
Sergei Golubchik