The wrong result set returned by the left join query from
the bug test case happened due to several inconsistencies
and bugs of the legacy mysql code.
The bug test case uses an execution plan that employs a scan
of a materialized IN subquery from the WHERE condition.
When materializing such an IN- subquery the optimizer injects
additional equalities into the WHERE clause. These equalities
express the constraints imposed by the subquery predicate.
The injected equality of the query in the test case happens
to belong to the same equality class, and a new equality
imposing a condition on the rows of the materialized subquery
is inferred from this class. Simultaneously the multiple
equality is added to the ON expression of the LEFT JOIN
used in the main query.
The inferred equality of the form f1=f2 is taken into account
when optimizing the scan of the rows the temporary table
that is the result of the subquery materialization: only the
values of the field f1 are read from the table into the record
buffer. Meanwhile the inferred equality is removed from the
WHERE conditions altogether as a constraint on the fields
of the temporary table that has been used when filling this table.
This equality is supposed to be removed from the ON expression
when the multiple equalities of the ON expression are converted
into an optimal set of equality predicates. It supposed to be
removed from the ON expression as an equality inferred from only
equalities of the WHERE condition. Yet, it did not happened
due to the following bug in the code.
Erroneously the code tried to build multiple equality for ON
expression twice: the first time, when it called optimize_cond()
for the WHERE condition, the second time, when it called
this function for the HAVING condition. When executing
optimize_con() for the WHERE condition a reference
to the multiple equality of the WHERE condition is set
in the multiple equality of the ON expression. This reference
would allow later to convert multiple equalities of the
ON expression into equality predicates. However the
the second call of build_equal_items() for the ON expression
that happened when optimize_cond() was called for the
HAVING condition reset this reference to NULL.
This bug fix blocks calling build_equal_items() for ON
expressions for the second time. In general, it will be
beneficial for many queries as it removes from ON
expressions any equalities that are to be checked for the
WHERE condition.
The patch also fixes two bugs in the list manipulation
operations and a bug in the function
substitute_for_best_equal_field() that resulted
in passing wrong reference to the multiple equalities
of where conditions when processing multiple
equalities of ON expressions.
The code of substitute_for_best_equal_field() and
the code the helper function eliminate_item_equal()
were also streamlined and cleaned up.
Now the conversion of the multiple equalities into
an optimal set of equality predicates first produces
the sequence of the all equalities processing multiple
equalities one by one, and, only after this, it inserts
the equalities at the beginning of the other conditions.
The multiple changes in the output of EXPLAIN
EXTENDED are mainly the result of this streamlining,
but in some cases is the result of the removal of
unneeded equalities from ON expressions. In
some test cases this removal were reflected in the
output of EXPLAIN resulted in disappearance of
“Using where” in some rows of the execution plans.
result
Row subqueries producing no rows were not handled as UNKNOWN
values in row comparison expressions.
That was a result of the following two problems:
1. Item_singlerow_subselect did not mark the resulting row
value as NULL/UNKNOWN when no rows were produced.
2. Arg_comparator::compare_row() did not take into account that
a whole argument may be NULL rather than just individual scalar
values.
Before bug#34384 was fixed, the above problems were hidden
because an uninitialized (i.e. without any stored value) cached
object would appear as NULL for scalar values in a row subquery
returning an empty result. After the fix
Arg_comparator::compare_row() would try to evaluate
uninitialized cached objects.
Fixed by removing the aforementioned problems.
mysql-test/r/row.result:
Added a test case for bug #54190.
mysql-test/r/subselect.result:
Updated the result for a test relying on wrong behavior.
mysql-test/t/row.test:
Added a test case for bug #54190.
sql/item_cmpfunc.cc:
If either of the argument rows is NULL, return NULL as the
result of comparison.
sql/item_subselect.cc:
Adjust null_value for Item_singlerow_subselect depending on
whether a row has been produced by the row subquery.
Arg_comparator initializes 'comparators' array in case of
ROW comparison and does not free this array on destruction.
It leads to memory leaks.
The fix:
-added Arg_comparator::cleanup() method which frees
'comparators' array.
-added Item_bool_func2::cleanup() method which calls
Arg_comparator::cleanup() method
mysql-test/r/ps.result:
test case
mysql-test/r/row.result:
test case
mysql-test/t/ps.test:
test case
mysql-test/t/row.test:
test case
sql/item_cmpfunc.h:
-added Arg_comparator::cleanup() method which frees
'comparators' array.
-added Item_bool_func2::cleanup() method which calls
Arg_comparator::cleanup() method
In case of ROW item each compared pair does not
check if argumet collations can be aggregated and
thus appropiriate item conversion does not happen.
The fix is to add the check and convertion for ROW
pairs.
mysql-test/r/row.result:
test result
mysql-test/t/row.test:
test case
sql/item.cc:
added agg_item_set_converter() function which was a part of
agg_item_charsets() func. The only difference is that
agg_item_set_converter() checks and converts items
using already known collation.
sql/item.h:
added agg_item_set_converter() function
sql/item_cmpfunc.cc:
In case of ROW item each compared pair does not
check if argumet collations can be aggregated and
thus appropiriate item conversion does not happen.
The fix is to add the check and convertion for ROW
pairs.
Assertion `0' failed
If ROW item is a part of an expression that also has
aggregate function calls (COUNT/SUM/AVG...), a
"splitting" with an Item::split_sum_func2 function
is applied to that ROW item.
Current implementation of Item::split_sum_func2
replaces this Item_row with a newly created
Item_aggregate_ref reference to it.
Then the row cache tries to work with the
Item_aggregate_ref object as with the Item_row object:
row cache calls row-emulation methods such as cols and
element_index. Item_aggregate_ref (like it's parent
Item_ref) inherits dummy implementations of those
methods from the hierarchy root Item, and call to
them leads to failed assertions and wrong data
output.
Row-emulation virtual functions (cols, element_index, addr,
check_cols, null_inside and bring_value) of Item_ref have
been overloaded to forward calls to an underlying item
reference.
mysql-test/r/row.result:
Added test case for bug #34620.
mysql-test/t/row.test:
Added test case for bug #34620.
sql/item.h:
Fixed bug #34620.
Row-emulation virtual functions (cols, element_index, addr,
check_cols, null_inside and bring_value) of Item_ref have
been overloaded to forward calls to an underlying item
reference.
- Renamed "Using join cache" to "Using join buffer".
- "Using join buffer" is now printed on the last
table that "reads" from the join buffer cache.
mysql-test/r/archive_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/compress.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ctype_utf8.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/derived.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/distinct.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/func_group.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/func_group_innodb.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/greedy_optimizer.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/group_by.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/group_min_max.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/index_merge_myisam.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/information_schema.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/innodb_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/innodb_mysql.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/join.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/join_nested.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/key_diff.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/myisam.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ndb_condition_pushdown.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ndb_gis.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/range.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/row.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/select.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ssl.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/ssl_compress.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/subselect.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/subselect3.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/union.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
mysql-test/r/view.result:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
sql/sql_select.cc:
Bug #27531: renamed "Using join cache" to "Using join buffer"
and moved to the last table in the batch.
- added join cache indication in EXPLAIN (Extra column).
- prefer filesort over full scan over
index for ORDER BY (because it's faster).
- when switching from REF to RANGE because
RANGE uses longer key turn off sort on
the head table only as the resulting
RANGE access is a candidate for join cache
and we don't want to disable it by sorting
on the first table only.
mysql-test/r/archive_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/compress.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ctype_utf8.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/derived.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/distinct.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/func_group.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/func_group_innodb.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/greedy_optimizer.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/group_by.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/group_min_max.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/index_merge_myisam.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/information_schema.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/innodb_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/innodb_mysql.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/join.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/join_nested.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/key_diff.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/myisam.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/ndb_condition_pushdown.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/ndb_gis.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/range.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/row.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/select.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ssl.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/ssl_compress.result:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over index for ORDER BY.
mysql-test/r/subselect.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/subselect3.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/union.result:
bug #27531: join cache in EXPLAIN
mysql-test/r/view.result:
bug #27531: join cache in EXPLAIN
sql/sql_select.cc:
bug #27531:
- join cache in EXPLAIN.
- prefer filesort over full scan over
index for ORDER BY.
- disable sorting on the first table only
when switching from REF to RANGE.
into moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/key.result:
Auto merged
mysql-test/r/row.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/subselect3.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/key.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_cmpfunc.h:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_subselect.h:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_view.cc:
Auto merged
mysql-test/t/view.test:
Manually merged
sql/sql_lex.h:
Manually merged
into gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-27704
mysql-test/r/subselect.result:
Auto merged
mysql-test/t/row.test:
Auto merged
mysql-test/r/row.result:
Test case updated for Bug#27704 (incorrect comparison
of rows with NULL components).
sql/item_cmpfunc.cc:
Bug#27704: incorrect comparison of rows with NULL components.
sql/item_cmpfunc.h:
Bug#27704: incorrect comparison of rows with NULL components.
Cosmetic fix.
Support for NULL components was incomplete for row comparison,
fixed. Added support for abort_on_null at compare_row() like
in 5.x
sql/item_cmpfunc.h:
Bug#27704: incorrect comparison of rows with NULL components
Added support for abort_on_null at Item_bool_func2
like in 5.x
sql/item_cmpfunc.cc:
Bug#27704: incorrect comparison of rows with NULL components
Support for NULL components was incomplete for row comparison,
fixed. Added support for abort_on_null at compare_row() like
in 5.x
mysql-test/t/row.test:
Test case updated for Bug#27704 (incorrect comparison
of rows with NULL components)
mysql-test/r/row.result:
Test case updated for Bug#27704 (incorrect comparison
of rows with NULL components)
mysql-test/r/subselect.result:
Test case updated for Bug#27704 (incorrect comparison
of rows with NULL components)
into olga.mysql.com:/home/igor/mysql-5.1-opt
mysql-test/r/distinct.result:
Auto merged
mysql-test/r/row.result:
Auto merged
mysql-test/r/select.result:
Auto merged
mysql-test/r/strict.result:
Auto merged
mysql-test/t/select.test:
Auto merged
mysql-test/t/strict.test:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/item_cmpfunc.cc:
Manual merge
are used as arguments of the IN predicate.
Added a function to check compatibility of row expressions. Made sure that this
function to be called for Item_func_in objects by fix_length_and_dec().
mysql-test/r/row.result:
Added a test case for bug #27484.
mysql-test/t/row.test:
Added a test case for bug #27484.
conditions.
When allocating memory for KEY_FIELD/SARGABLE_PARAM structures the
function update_ref_and_keys did not take into account the fact that
a single row equality could be replaced by several simple equalities.
Fixed by adjusting the counter cond_count accordingly for each subquery
when performing substitution of a row equality for simple equalities.
mysql-test/r/row.result:
Added a test case for bug #27154.
mysql-test/t/row.test:
Added a test case for bug #27154.
into dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.1
mysql-test/r/func_gconcat.result:
Auto merged
mysql-test/r/func_group.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/group_by.result:
Auto merged
mysql-test/r/heap_hash.result:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/join_outer.result:
Auto merged
mysql-test/r/olap.result:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/range.result:
Auto merged
mysql-test/r/row.result:
Auto merged
mysql-test/r/subselect.result:
Auto merged
mysql-test/r/type_date.result:
Auto merged
mysql-test/r/union.result:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/func_group.test:
Auto merged
mysql-test/t/func_str.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/view.test:
Auto merged
sql/item.cc:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/opt_range.h:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_list.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/t/sp.test:
SCCS merged
sql/item_cmpfunc.cc:
SCCS merged
sql/sql_select.cc:
SCCS merged
account by the optimizer.
Now all row equalities are converted into conjunctions of
equalities between row elements. They are taken into account
by the optimizer together with the original regular equality
predicates.
mysql-test/r/join_outer.result:
Adjusted results after fix for bug #16081.
mysql-test/r/row.result:
Added a test cases for bug #16081.
mysql-test/t/row.test:
Added a test cases for bug #16081.
sql/sql_list.h:
Corrected the copy constructor for the class base_list.
The previous implementation resulted in creation of an
inconsistent base_list if the source list was empty.
- Make the range-et-al optimizer produce E(#table records after table
condition is applied),
- Make the join optimizer use this value,
- Add "filtered" column to EXPLAIN EXTENDED to show
fraction of records left after table condition is applied
- Adjust test results, add comments
mysql-test/r/archive_gis.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/auto_increment.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/bdb_gis.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/bench_count_distinct.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/binlog_stm_blackhole.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/case.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/cast.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/compress.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ctype_collate.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ctype_cp1250_ch.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/date_formats.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/distinct.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/fulltext.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_compress.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_crypt.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_default.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_encrypt.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_gconcat.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_group.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_if.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_in.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_like.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_math.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_op.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_regexp.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_set.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_str.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_system.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_test.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/func_time.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/gis.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/group_by.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/group_min_max.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/having.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/heap.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/heap_hash.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge_innodb.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/index_merge_ror.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/innodb_gis.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/insert_update.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/join.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/join_nested.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/key_diff.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/myisam.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ndb_gis.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/negation_elimination.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/null.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/olap.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/partition_pruning.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/query_cache.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/row.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/rpl_get_lock.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/rpl_master_pos_wait.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/select.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ssl.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/ssl_compress.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/subselect.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/type_blob.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/union.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/varbinary.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/variables.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/r/view.result:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/ctype_cp1250_ch.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/func_like.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/group_min_max.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/index_merge_ror.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/index_merge_ror_cpk.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/join.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
mysql-test/t/partition_pruning.test:
BUG#14940: Adjust the test results: EXPLAIN EXTENDED now has extra "filtered" column
sql/opt_range.cc:
BUG#14940: Make range/index_merge/group-min-max optimizer produce TABLE::quick_condition_rows -
estimate of #records that will match the table condition.
sql/sql_class.cc:
BUG#14940: Add "filtered" column to output of EXPLAIN EXTENDED
sql/sql_select.cc:
BUG#14940:
- Make the join optimizer to use TABLE::quick_condition_rows=
= E(#table records after filtering with table condition)
- Add "filtered" column to output of EXPLAIN EXTENDED
sql/sql_select.h:
BUG#14940: Added comments
sql/table.h:
BUG#14940: Added comments
mysql-test/r/row.result:
Correct NULL handling in row comporison
mysql-test/t/row.test:
Correct NULL handling in row comporison (BUG#12509)
sql/item_cmpfunc.cc:
stop on NULL comparison only if it is allowed
sql/item_cmpfunc.h:
support optimisation in case of processing WHERE/HAVING, where NULL and FALSE are equal
Fix that mysql.proc works with new VARCHAR fields
Give warnings for wrong zero dates
configure.in:
Don't use -lsupc++ with gcc 3.3 and below as this gives linking problems when linking staticly
mysql-test/r/func_time.result:
New warnings
mysql-test/r/row.result:
Moved code around to get things to work with --ps-protocol
Note that one on warning disappered, but it should appear again when bug #9600 is fixed
mysql-test/r/strict.result:
enabled more tests
Added more tests
mysql-test/r/union.result:
Test that UNION generates correct row format
mysql-test/t/row.test:
Moved test to get things to work with --ps-protocol
mysql-test/t/strict.test:
enabled more tests
Added more tests
mysql-test/t/union.test:
Test that UNION generates correct row format
sql/item.cc:
Removed compiler warning
Simple cleanup
sql/sp.cc:
Fix that mysql.proc works with new VARCHAR fields
sql/time.cc:
Give warnings for wrong zero dates
tests/mysql_client_test.c:
More startup information
CAST() now produces warnings when casting a wrong INTEGER or CHAR values. This also applies to implicite string to number casts. (Bug #5912)
ALTER TABLE now fails in STRICT mode if it generates warnings.
Inserting a zero date in a DATE, DATETIME or TIMESTAMP column during TRADITIONAL mode now produces an error. (Bug #5933)
mysql-test/r/bigint.result:
New warning added
mysql-test/r/cast.result:
Added testing of wrong CAST's of strings to numbers and numbers to strings
mysql-test/r/create.result:
Added test for wrong default values (#5902)
mysql-test/r/func_if.result:
Changed tests to produce less warnings
mysql-test/r/func_misc.result:
New warning
mysql-test/r/func_str.result:
Added missing drop table
Changed test to produce less warnings
New warnings
mysql-test/r/ndb_index_unique.result:
Removed wrong default usage
mysql-test/r/ps_1general.result:
Changed tests to produce less warnings
mysql-test/r/row.result:
New warnings
mysql-test/r/rpl_session_var.result:
Changed tests to produce less warnings
mysql-test/r/strict.result:
New tests for CAST() and zero date handling
mysql-test/r/subselect.result:
Changed tests to produce less warnings
mysql-test/r/type_ranges.result:
Changed tests to produce less warnings
mysql-test/t/cast.test:
Added testing of wrong CAST's of strings to numbers and numbers to strings
mysql-test/t/create.test:
Added test for wrong default values (#5902)
mysql-test/t/func_if.test:
Changed tests to produce less warnings
mysql-test/t/func_str.test:
Added missing drop table
Changed test to produce less warnings
New warnings
mysql-test/t/ndb_index_unique.test:
Removed wrong default usage
mysql-test/t/ps_1general.test:
Changed tests to produce less warnings
mysql-test/t/rpl_session_var.test:
Changed tests to produce less warnings
mysql-test/t/strict.test:
New tests for CAST() and zero date handling
mysql-test/t/subselect.test:
Changed tests to produce less warnings
mysql-test/t/type_ranges.test:
Changed tests to produce less warnings
sql/Makefile.am:
Added new include file
sql/field.cc:
Added warnings for zero dates for DATE, DATETIME and TIMESTAMP
Moved Field_blob::max_length() to a more appropriate position
Changed type for 'level' in set_warning() to avoid casts
sql/field.h:
Changed type for 'level' in set_warning() to avoid casts
sql/field_conv.cc:
Copy date and datetime fields through string in 'traditional' mode to detect zero dates
sql/item.cc:
Removed compiler warnings
Give warnings for wrong CAST of strings -> number
sql/item.h:
Moved Item_string::val_real() and ::val_int() to item.cc
sql/item_row.cc:
Better detection of null values (which doesn't produce warnings)
sql/item_sum.cc:
Better detection of null values (which doesn't produce warnings)
sql/item_timefunc.cc:
Give warnings for wrong CAST of number -> string
sql/my_decimal.cc:
Fixed typo in comment
sql/mysql_priv.h:
Removed prototype for static function
Moved defines for error handling to sql_error.h (to be able to use these in field.h)
sql/mysqld.cc:
Simplify code
sql/sql_class.h:
Moved to sql_error.h
sql/sql_load.cc:
Removed wrong cast
sql/sql_parse.cc:
Fixed wrong printf()
sql/sql_table.cc:
Made mysql_prepare_table() static
Changed references to pointers to make code more readable
ALTER TABLE now aborts if one gets warnings in STRICT mode
sql/time.cc:
Fixed possible wrong call
sql/unireg.cc:
Removed one call to current_thd
Give errors if one uses a wrong DEFAULT value
mysql-test/r/row.result:
fixed error message as it was suggested by Peter Gulutzan
mysql-test/r/subselect.result:
fixed error message as it was suggested by Peter Gulutzan
sql/share/czech/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/danish/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/dutch/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/english/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/estonian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/french/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/german/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/greek/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/hungarian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/italian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/japanese/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/korean/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/norwegian-ny/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/norwegian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/polish/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/portuguese/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/romanian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/russian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/serbian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/slovak/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/spanish/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/swedish/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
sql/share/ukrainian/errmsg.txt:
fixed error message as it was suggested by Peter Gulutzan
bmove_allign -> bmove_align
Added OLAP function ROLLUP
Split mysql_fix_privilege_tables to a script and a .sql data file
Added new (MEMROOT*) functions to avoid calling current_thd() when creating some common objects.
Added table_alias_charset, for easier --lower-case-table-name handling
Better SQL_MODE handling (Setting complex options also sets sub options)
New (faster) assembler string functions for x86
BitKeeper/etc/ignore:
added libmysqld/sql_state.c
client/mysql.cc:
Added SQLSTATE to error messages
Added new function put_error() to be able to clean up some old code.
client/mysqltest.c:
Write ERROR SQLSTATE for all errors
dbug/dbug.c:
Portability fixes
include/m_string.h:
Rename bmove_allign as bmove_align
include/mysql.h:
Added SQLSTATE (for embedded version)
include/mysql_com.h:
Send correct SQLSTATE for the error to the client
libmysql/libmysql.c:
Changed default error state to HY000
Applied code cleanup patch
libmysqld/Makefile.am:
Added sql_state.cc
libmysqld/libmysqld.c:
Added sqlstate
mysql-test/r/analyse.result:
Updated results
mysql-test/r/ansi.result:
Updated results
mysql-test/r/auto_increment.result:
Updated results
mysql-test/r/bdb-deadlock.result:
Updated results
mysql-test/r/bdb.result:
Updated results
mysql-test/r/comments.result:
Updated results
mysql-test/r/create.result:
Updated results
mysql-test/r/ctype_collate.result:
Updated results
mysql-test/r/delayed.result:
Updated results
mysql-test/r/delete.result:
Updated results
mysql-test/r/derived.result:
Updated results
mysql-test/r/distinct.result:
Updated results
mysql-test/r/drop.result:
Updated results
mysql-test/r/err000001.result:
Updated results
mysql-test/r/explain.result:
Updated results
mysql-test/r/flush.result:
Updated results
mysql-test/r/fulltext.result:
Updated results
mysql-test/r/func_gconcat.result:
Updated results
mysql-test/r/func_system.result:
Updated results
mysql-test/r/grant_cache.result:
Updated results
mysql-test/r/group_by.result:
Updated results
mysql-test/r/handler.result:
Updated results
mysql-test/r/heap.result:
Updated results
mysql-test/r/heap_btree.result:
Updated results
mysql-test/r/heap_hash.result:
Updated results
mysql-test/r/innodb.result:
Updated results
mysql-test/r/innodb_handler.result:
Updated results
mysql-test/r/insert_select.result:
Updated results
mysql-test/r/insert_update.result:
Updated results
mysql-test/r/join.result:
Updated results
mysql-test/r/join_outer.result:
Updated results
mysql-test/r/key.result:
Updated results
mysql-test/r/lock.result:
Updated results
mysql-test/r/lock_multi.result:
Updated results
mysql-test/r/merge.result:
Updated results
mysql-test/r/multi_update.result:
Updated results
mysql-test/r/myisam.result:
Updated results
mysql-test/r/null.result:
Updated results
mysql-test/r/olap.result:
Updated results
mysql-test/r/order_by.result:
Updated results
mysql-test/r/packet.result:
Updated results
mysql-test/r/query_cache.result:
Updated results
mysql-test/r/row.result:
Updated results
mysql-test/r/rpl000001.result:
Updated results
mysql-test/r/rpl000009.result:
Updated results
mysql-test/r/rpl_empty_master_crash.result:
Updated results
mysql-test/r/rpl_log.result:
Updated results
mysql-test/r/rpl_replicate_do.result:
Updated results
mysql-test/r/rpl_rotate_logs.result:
Updated results
mysql-test/r/select.result:
Updated results
mysql-test/r/select_safe.result:
Updated results
mysql-test/r/show_check.result:
Updated results
mysql-test/r/sql_mode.result:
Updated results
mysql-test/r/subselect.result:
Updated results
mysql-test/r/temp_table.result:
Updated results
mysql-test/r/truncate.result:
Updated results
mysql-test/r/type_blob.result:
Updated results
mysql-test/r/type_decimal.result:
Updated results
mysql-test/r/type_float.result:
Updated results
mysql-test/r/type_ranges.result:
Updated results
mysql-test/r/union.result:
Updated results
mysql-test/r/update.result:
Updated results
mysql-test/r/user_var.result:
Updated results
mysql-test/r/varbinary.result:
Updated results
mysql-test/r/variables.result:
Updated results
mysql-test/t/ansi.test:
Test of sql_mode
mysql-test/t/derived.test:
Updated results
mysql-test/t/func_system.test:
Make this independen of the MySQL server name
mysql-test/t/lowercase_table.test:
Cleanup
mysql-test/t/olap.test:
A lot of new tests
mysql-test/t/sql_mode.test:
More test for sql_mode
mysql-test/t/subselect.test:
Added a few new tests (to find a bug in the item_ref code)
scripts/Makefile.am:
Added mysql_fix_privilege_tables.sql
scripts/mysql_fix_privilege_tables.sh:
Totally new script. This bascily just pipes mysql_fix_privilege_tables.sql through 'mysql' to 'mysqld'
sql/Makefile.am:
Added sql_state.cc
sql/item.cc:
Extended Item_field::eq() to be able to better match GROUP BY fields on the command line.
Needed for ROLLUP
sql/item.h:
Added function to be able to avoid calling current_thd() when doing new Item.
sql/item_sum.cc:
Moved copy_or_same() and some reset() functions from item_sum.h
Needed to be able to access thd->mem_root.
sql/item_sum.h:
Moved some functions to item_sum.cc
Added make_unique() for ROLLUP
sql/item_uniq.h:
Fixed return value
sql/mysql_priv.h:
Updated MODE flags
sql/mysqld.cc:
Added ANSI as it's own mode
Moved charset_info variables here
Cleaned up handler_count handling (for NT)
Added table_alias_charset, for easier --lower-case-table-name handling
sql/net_serv.cc:
New comment
sql/protocol.cc:
Send SQLSTATE to client
sql/set_var.cc:
Better SQL_MODE handling (Setting complex options also sets sub options)
sql/set_var.h:
Better SQL_MODE handling
sql/sql_base.cc:
Make alias depend on --lower-case-table-names
Make find_item_in_list also check database name
sql/sql_cache.cc:
Indentation cleanup
sql/sql_list.h:
Added safety assert
Addes support of alloc without current_thd()
sql/sql_prepare.cc:
Update after prototype change
sql/sql_select.cc:
Added ROLLUP
sql/sql_select.h:
structures for rollup
sql/sql_show.cc:
Easier SQL_MODE handling
sql/sql_string.cc:
Move CHARSET_INFO to mysqld (to be together with all other global variables)
sql/sql_string.h:
Added function to be able to avoid calling current_thd() when doing new Item.
sql/sql_table.cc:
Simpler --lower-case-table-name handling
sql/sql_union.cc:
Update after prototype change
sql/sql_yacc.yy:
ROLLUP
sql/unireg.h:
bmove_allign ->bmove_align
strings/Makefile.am:
Fix to be able to compile str_test.c
strings/ctype.c:
Removed empty lines
strings/str_test.c:
Added test of bmove_align
strings/strings-x86.s:
Faster bmove_align, bmove_upp and strmake
strings/strings.asm:
move_allg
fixed layout
BitKeeper/etc/ignore:
Added stamp-h2 stamp-h3 stamp-h4 to the ignore list
mysql-test/r/row.result:
test of row with group function
mysql-test/t/row.test:
test of row with group function
sql/item_cmpfunc.cc:
added braces according review
sql/item_func.cc:
fixed layout
sql/item_row.cc:
fixed row item
sql/item_row.h:
fixed row items with group functions
Cleaned up test; Removed wrong DROP TABLE commands and use standard table and database names.
changed store_warning() -> push_warning_print()
BitKeeper/deleted/.del-rpl000016-slave.opt~ef76f85ddcc13b87:
Delete: mysql-test/t/rpl000016-slave.opt
BitKeeper/deleted/.del-sel000001.test~9567c1646058cc:
Delete: mysql-test/t/sel000001.test
BitKeeper/deleted/.del-sel000002.test~9f500639572e18e1:
Delete: mysql-test/t/sel000002.test
BitKeeper/deleted/.del-sel000003.test~63a5512d18cd20a2:
Delete: mysql-test/t/sel000003.test
BitKeeper/deleted/.del-sel000001.result~383913ae4505ec86:
Delete: mysql-test/r/sel000001.result
BitKeeper/deleted/.del-sel000002.result~d1787e6fd5dbc1cc:
Delete: mysql-test/r/sel000002.result
BitKeeper/deleted/.del-sel000003.result~d7b657b1e3a286a7:
Delete: mysql-test/r/sel000003.result
BitKeeper/deleted/.del-sel000031.result~d49aeac63ad7db4d:
Delete: mysql-test/r/sel000031.result
BitKeeper/deleted/.del-sel000031.test~50a19a8e204e99bc:
Delete: mysql-test/t/sel000031.test
BitKeeper/deleted/.del-sel000032.result~6cb30e23cbca9fb0:
Delete: mysql-test/r/sel000032.result
BitKeeper/deleted/.del-sel000032.test~e32da7c3fc4b7ace:
Delete: mysql-test/t/sel000032.test
BitKeeper/deleted/.del-rpl000003.result~68d6ee00beaa011:
Delete: mysql-test/r/rpl000003.result
BitKeeper/deleted/.del-rpl000003.test~b7cfc4c5576fbafd:
Delete: mysql-test/t/rpl000003.test
client/mysql.cc:
Don't yet print information about SQL help
client/mysqltest.c:
Added test options:
--enable_warnings
--disable_warnings
--enable_info
--disable_info
configure.in:
changed version number of shared libraries
mysql-test/include/master-slave.inc:
Don't write warnings on init
mysql-test/r/backup.result:
Updated results
mysql-test/r/bdb.result:
Updated results
mysql-test/r/bigint.result:
Updated results
mysql-test/r/bool.result:
Updated results
mysql-test/r/create.result:
Updated results
mysql-test/r/delete.result:
Updated results
mysql-test/r/derived.result:
Updated results
mysql-test/r/distinct.result:
Updated results
mysql-test/r/drop.result:
Updated results
mysql-test/r/flush.result:
Updated results
mysql-test/r/fulltext.result:
Updated results
mysql-test/r/fulltext_multi.result:
Updated results
mysql-test/r/fulltext_order_by.result:
Updated results
mysql-test/r/func_equal.result:
Updated results
mysql-test/r/func_in.result:
Updated results
mysql-test/r/func_set.result:
Updated results
mysql-test/r/gcc296.result:
Updated results
mysql-test/r/group_by.result:
Updated results
mysql-test/r/innodb-deadlock.result:
Updated results
mysql-test/r/innodb.result:
Updated results
mysql-test/r/innodb_cache.result:
Updated results
mysql-test/r/innodb_handler.result:
Updated results
mysql-test/r/insert.result:
Updated results
mysql-test/r/insert_select.result:
Updated results
mysql-test/r/isam.result:
Updated results
mysql-test/r/join_outer.result:
Updated results
mysql-test/r/key.result:
Updated results
mysql-test/r/merge.result:
Updated results
mysql-test/r/multi_update.result:
Updated results
mysql-test/r/myisam.result:
Updated results
mysql-test/r/null.result:
Updated results
mysql-test/r/null_key.result:
Updated results
mysql-test/r/odbc.result:
Updated results
mysql-test/r/olap.result:
Updated results
mysql-test/r/order_by.result:
Updated results
mysql-test/r/query_cache.result:
Updated results
mysql-test/r/rename.result:
Updated results
mysql-test/r/row.result:
Updated results
mysql-test/r/rpl000001.result:
Updated results
mysql-test/r/rpl000002.result:
Updated results
mysql-test/r/rpl000004.result:
Updated results
mysql-test/r/rpl000005.result:
Updated results
mysql-test/r/rpl000006.result:
Updated results
mysql-test/r/rpl000008.result:
Updated results
mysql-test/r/rpl000009.result:
Updated results
mysql-test/r/rpl000010.result:
Updated results
mysql-test/r/rpl000011.result:
Updated results
mysql-test/r/rpl000012.result:
Updated results
mysql-test/r/rpl000013.result:
Updated results
mysql-test/r/rpl_alter.result:
Updated results
mysql-test/r/rpl_empty_master_crash.result:
Updated results
mysql-test/r/rpl_redirect.result:
Updated results
mysql-test/r/rpl_replicate_do.result:
Updated results
mysql-test/r/rpl_rotate_logs.result:
Updated results
mysql-test/r/rpl_skip_error.result:
Updated results
mysql-test/r/rpl_temporary.result:
Updated results
mysql-test/r/select.result:
Updated results
mysql-test/r/subselect.result:
Updated results
mysql-test/r/temp_table.result:
Updated results
mysql-test/r/type_date.result:
Updated results
mysql-test/r/type_float.result:
Updated results
mysql-test/r/union.result:
Updated results
mysql-test/r/update.result:
Updated results
mysql-test/r/user_var.result:
Updated results
mysql-test/r/varbinary.result:
Updated results
mysql-test/r/variables.result:
Updated results
mysql-test/r/warnings.result:
Updated results
mysql-test/t/alias.test:
Don't write warnings when initializing test
mysql-test/t/alter_table.test:
Don't write warnings when initializing test
mysql-test/t/analyse.test:
Don't write warnings when initializing test
mysql-test/t/auto_increment.test:
Don't write warnings when initializing test
mysql-test/t/backup.test:
Don't write warnings when initializing test
mysql-test/t/bdb-alter-table-1.test:
Don't write warnings when initializing test
mysql-test/t/bdb-crash.test:
Don't write warnings when initializing test
mysql-test/t/bdb-deadlock.test:
Don't write warnings when initializing test
mysql-test/t/bdb.test:
Don't write warnings when initializing test
cleaned up test
mysql-test/t/bdb_cache.test:
Don't write warnings when initializing test
mysql-test/t/bench_count_distinct.test:
Don't write warnings when initializing test
mysql-test/t/bigint.test:
Don't write warnings when initializing test
mysql-test/t/binary.test:
Don't write warnings when initializing test
mysql-test/t/bool.test:
Don't write warnings when initializing test
Changed to use standard table names
mysql-test/t/bulk_replace.test:
Don't write warnings when initializing test
mysql-test/t/case.test:
Don't write warnings when initializing test
mysql-test/t/check.test:
Don't write warnings when initializing test
mysql-test/t/compare.test:
Don't write warnings when initializing test
mysql-test/t/connect.test:
Removed empty line
mysql-test/t/constraints.test:
Don't write warnings when initializing test
mysql-test/t/count_distinct.test:
Don't write warnings when initializing test
mysql-test/t/count_distinct2.test:
Don't write warnings when initializing test
mysql-test/t/create.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/ctype_latin1_de.test:
Don't write warnings when initializing test
mysql-test/t/ctype_many.test:
Don't write warnings when initializing test
mysql-test/t/delayed.test:
Don't write warnings when initializing test
mysql-test/t/delete.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/derived.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/dirty_close.test:
Don't write warnings when initializing test
mysql-test/t/distinct.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/drop.test:
Don't write warnings when initializing test
mysql-test/t/empty_table.test:
Don't write warnings when initializing test
mysql-test/t/err000001.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/explain.test:
Don't write warnings when initializing test
mysql-test/t/flush.test:
Don't write warnings when initializing test
mysql-test/t/foreign_key.test:
Don't write warnings when initializing test
mysql-test/t/fulltext.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_cache.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_distinct.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_left_join.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_multi.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_order_by.test:
Don't write warnings when initializing test
mysql-test/t/fulltext_update.test:
Don't write warnings when initializing test
mysql-test/t/func_concat.test:
Don't write warnings when initializing test
mysql-test/t/func_date_add.test:
Don't write warnings when initializing test
mysql-test/t/func_encrypt.test:
Don't write warnings when initializing test
mysql-test/t/func_equal.test:
Don't write warnings when initializing test
mysql-test/t/func_group.test:
Don't write warnings when initializing test
mysql-test/t/func_if.test:
Don't write warnings when initializing test
mysql-test/t/func_in.test:
Don't write warnings when initializing test
mysql-test/t/func_isnull.test:
Don't write warnings when initializing test
mysql-test/t/func_like.test:
Don't write warnings when initializing test
mysql-test/t/func_regexp.test:
Don't write warnings when initializing test
mysql-test/t/func_set.test:
Don't write warnings when initializing test
Merged test with other tests
mysql-test/t/func_str.test:
Don't write warnings when initializing test
mysql-test/t/func_time.test:
Don't write warnings when initializing test
mysql-test/t/func_timestamp.test:
Don't write warnings when initializing test
mysql-test/t/gcc296.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/grant_cache.test:
Don't write warnings when initializing test
mysql-test/t/group_by.test:
Don't write warnings when initializing test
Cleaned up test
mysql-test/t/handler.test:
Don't write warnings when initializing test
mysql-test/t/having.test:
Don't write warnings when initializing test
mysql-test/t/heap.test:
Don't write warnings when initializing test
mysql-test/t/heap_auto_increment.test:
Don't write warnings when initializing test
mysql-test/t/heap_btree.test:
Don't write warnings when initializing test
mysql-test/t/heap_hash.test:
Don't write warnings when initializing test
mysql-test/t/innodb-deadlock.test:
Don't write warnings when initializing test
mysql-test/t/innodb.test:
Don't write warnings when initializing test
mysql-test/t/innodb_cache.test:
Don't write warnings when initializing test
mysql-test/t/innodb_handler.test:
Don't write warnings when initializing test
mysql-test/t/ins000001.test:
Don't write warnings when initializing test
mysql-test/t/insert.test:
Don't write warnings when initializing test
cleaned up test.
Changed to use standard database and table names
mysql-test/t/insert_select.test:
Don't write warnings when initializing test
Changed to use standard table names
mysql-test/t/insert_update.test:
Don't write warnings when initializing test
mysql-test/t/isam.test:
Don't write warnings when initializing test
cleaned up test
mysql-test/t/join.test:
Don't write warnings when initializing test
mysql-test/t/join_crash.test:
Don't write warnings when initializing test
mysql-test/t/join_outer.test:
Don't write warnings when initializing test
mysql-test/t/key.test:
Don't write warnings when initializing test
mysql-test/t/key_diff.test:
Don't write warnings when initializing test
mysql-test/t/key_primary.test:
Don't write warnings when initializing test
mysql-test/t/keywords.test:
Don't write warnings when initializing test
mysql-test/t/kill.test:
Don't write warnings when initializing test
mysql-test/t/limit.test:
Don't write warnings when initializing test
mysql-test/t/lock.test:
Don't write warnings when initializing test
mysql-test/t/lock_multi.test:
Don't write warnings when initializing test
mysql-test/t/lowercase_table.test:
Don't write warnings when initializing test
mysql-test/t/merge.test:
Don't write warnings when initializing test
cleaned up test
mysql-test/t/multi_update.test:
Don't write warnings when initializing test
mysql-test/t/myisam.test:
Don't write warnings when initializing test
mysql-test/t/null.test:
Don't write warnings when initializing test
mysql-test/t/null_key.test:
Don't write warnings when initializing test
mysql-test/t/odbc.test:
Don't write warnings when initializing test
mysql-test/t/olap.test:
Don't write warnings when initializing test
mysql-test/t/order_by.test:
Don't write warnings when initializing test
mysql-test/t/order_fill_sortbuf.test:
Don't write warnings when initializing test
mysql-test/t/query_cache.test:
Don't write warnings when initializing test
mysql-test/t/raid.test:
Don't write warnings when initializing test
mysql-test/t/range.test:
Don't write warnings when initializing test
mysql-test/t/rename.test:
Don't write warnings when initializing test
mysql-test/t/repair.test:
Don't write warnings when initializing test
mysql-test/t/replace.test:
Don't write warnings when initializing test
mysql-test/t/rollback.test:
Don't write warnings when initializing test
mysql-test/t/row.test:
Don't write warnings when initializing test
mysql-test/t/rpl000001.test:
Don't write warnings when initializing test
mysql-test/t/rpl000002.test:
Don't write warnings when initializing test
mysql-test/t/rpl000004.test:
Don't write warnings when initializing test
mysql-test/t/rpl000005.test:
Don't write warnings when initializing test
mysql-test/t/rpl000006.test:
Don't write warnings when initializing test
mysql-test/t/rpl000008-slave.opt:
Don't write warnings when initializing test
mysql-test/t/rpl000008.test:
Don't write warnings when initializing test
mysql-test/t/rpl000009-slave.opt:
Don't write warnings when initializing test
mysql-test/t/rpl000009.test:
Don't write warnings when initializing test
mysql-test/t/rpl000010.test:
Don't write warnings when initializing test
mysql-test/t/rpl000011.test:
Don't write warnings when initializing test
mysql-test/t/rpl000012.test:
Don't write warnings when initializing test
mysql-test/t/rpl000013.test:
Don't write warnings when initializing test
mysql-test/t/rpl000015.test:
Don't write warnings when initializing test
mysql-test/t/rpl000017.test:
Don't write warnings when initializing test
mysql-test/t/rpl000018.test:
Don't write warnings when initializing test
mysql-test/t/rpl_alter.test:
Don't write warnings when initializing test
mysql-test/t/rpl_empty_master_crash.test:
Don't write warnings when initializing test
mysql-test/t/rpl_redirect.test:
Don't write warnings when initializing test
mysql-test/t/rpl_replicate_do.test:
Don't write warnings when initializing test
mysql-test/t/rpl_rotate_logs.test:
Don't write warnings when initializing test
mysql-test/t/rpl_skip_error.test:
Don't write warnings when initializing test
mysql-test/t/rpl_temporary.test:
Don't write warnings when initializing test
mysql-test/t/sel000033.test:
Don't write warnings when initializing test
mysql-test/t/sel000100.test:
Don't write warnings when initializing test
mysql-test/t/select.test:
Don't write warnings when initializing test
mysql-test/t/select_found.test:
Don't write warnings when initializing test
mysql-test/t/select_safe.test:
Don't write warnings when initializing test
mysql-test/t/show_check.test:
Don't write warnings when initializing test
mysql-test/t/status.test:
Don't write warnings when initializing test
mysql-test/t/subselect.test:
Don't write warnings when initializing test
mysql-test/t/symlink.test:
Don't write warnings when initializing test
mysql-test/t/tablelock.test:
Don't write warnings when initializing test
mysql-test/t/temp_table.test:
Don't write warnings when initializing test
mysql-test/t/truncate.test:
Don't write warnings when initializing test
mysql-test/t/type_blob.test:
Don't write warnings when initializing test
mysql-test/t/type_date.test:
Don't write warnings when initializing test
mysql-test/t/type_datetime.test:
Don't write warnings when initializing test
mysql-test/t/type_decimal.test:
Don't write warnings when initializing test
mysql-test/t/type_enum.test:
Don't write warnings when initializing test
mysql-test/t/type_float.test:
Don't write warnings when initializing test
mysql-test/t/type_ranges.test:
Don't write warnings when initializing test
mysql-test/t/type_set.test:
Don't write warnings when initializing test
mysql-test/t/type_time.test:
Don't write warnings when initializing test
mysql-test/t/type_timestamp.test:
Don't write warnings when initializing test
mysql-test/t/type_uint.test:
Don't write warnings when initializing test
mysql-test/t/type_year.test:
Don't write warnings when initializing test
mysql-test/t/union.test:
Don't write warnings when initializing test
mysql-test/t/update.test:
Don't write warnings when initializing test
mysql-test/t/user_var.test:
Don't write warnings when initializing test
mysql-test/t/varbinary.test:
Don't write warnings when initializing test
mysql-test/t/variables.test:
Don't write warnings when initializing test
mysql-test/t/warnings.test:
Don't write warnings when initializing test
mysys/my_vsnprintf.c:
Safety fix
readline/terminal.c:
Removed compiler warnings
sql/ha_berkeley.cc:
Indentation changes
sql/mysql_priv.h:
Change store_warning -> push_warning_printf
sql/sql_db.cc:
Change store_warning -> push_warning_printf
sql/sql_error.cc:
Change store_warning -> push_warning_printf
sql/sql_table.cc:
Change store_warning -> push_warning_printf
NULL with row (IN)
cardinality error of row inside row
new[]
fixed layout
mysql-test/r/row.result:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
mysql-test/t/row.test:
test of optimized IN with Rows
test of NULL with row
test of cardinality error of row inside row
sql/item_cmpfunc.cc:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
sql/item_cmpfunc.h:
optimized IN with Rows
NULL with row (IN)
cardinality error of row inside row
fixed layout
sql/sql_list.h:
fixed layout
new[]
renamed row item test
mysql-test/r/row.result:
IN with row item without constant optimisation
mysql-test/t/row.test:
IN with row item without constant optimisation
sql/item_cmpfunc.cc:
IN with row item without constant optimisation
sql/item_cmpfunc.h:
IN with row item without constant optimisation
2002-12-07 19:58:05 +02:00
Renamed from mysql-test/r/row_test.result (Browse further)