change the size of core files.
Suppress the 'setrlimit could not change the size of the core files'
warning in mysql-test-run. We do not want core files on some of the
PushBuild hosts, and PushBuild itself does not set --core-files, so
that warning is expected.
mysql-test/lib/mtr_report.pl:
Suppress the 'setrlimit could not change the size of the core files'
warning in mysql-test-run. We do not want core files on some of the
PushBuild machines, and PushBuild itself does not set --core-files, so
that warning is expected.
Fix for the bug#31048 for 64bit platforms.
subselect.test, subselect.result:
Corrected text case for the bug#31048.
mysql-test/t/subselect.test:
Corrected text case for the bug#31048.
mysql-test/r/subselect.result:
Corrected text case for the bug#31048.
sql/opt_range.cc:
Fix for the bug#31048 for 64bit platforms.
FLUSH TABLES WITH READ LOCK fails to properly detect write locked
tables when running under low priority updates.
The problem is that when trying to aspire a global read lock, the
reload_acl_and_cache() function fails to properly check if the thread
has a low priority write lock, which later my cause a server crash or
deadlock.
The solution is to simple check if the thread has any type of the
possible exclusive write locks.
mysql-test/r/flush.result:
Add test case result for Bug#32528
mysql-test/t/flush.test:
Add test case for Bug#32528
sql/sql_parse.cc:
Although it should not matter under LOCK TABLES, use TL_WRITE_ALLOW_WRITE
to emphasize that it should fail in case of any write lock.
into lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge
mysql-test/r/events_bugs.result:
Auto merged
mysql-test/t/information_schema.test:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/mysql-test-run.pl:
added --skip-combination option
mysql-test/lib/mtr_cases.pl:
skip combination code for some conditions
mysql-test/include/have_binlog_format_row_or_statement.inc:
include file
into dl145h.mysql.com:/data0/mkindahl/mysql-5.1-rpl-merge
client/mysql.cc:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/r/mysql.result:
Auto merged
mysql-test/suite/ndb/r/ndb_dd_basic.result:
Auto merged
mysql-test/suite/rpl/r/rpl_extraCol_innodb.result:
Auto merged
mysql-test/suite/rpl/r/rpl_extraCol_myisam.result:
Auto merged
mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
Auto merged
mysql-test/t/ctype_uca.test:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/innodb.test:
Auto merged
mysql-test/t/mysql.test:
Auto merged
mysql-test/t/partition.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/field.cc:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/innodb.result:
Manual merge.
into dl145h.mysql.com:/data0/mkindahl/mysql-5.0-rpl-merge
client/mysql.cc:
Auto merged
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/t/ctype_uca.test:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
mysql-test/t/subselect.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_class.h:
Auto merged
is_last_prefix <= 0, file .\opt_range.cc.
SELECT ... GROUP BY bit field failed with an assertion if the
bit length of that field was not divisible by 8.
sql/key.cc:
Fixed bug #32556.
Copying of "uneven" bits of a bit field was duplicated in the
key_copy() and in the Field_bit::get_key_image().
So, instead of copying of the rest of a bit field,
Field_bit::get_key_image() copied "uneven" bits to key image again,
and the lowest field byte was not copied to key at all.
Duplicated code has been removed from the key_copy function.
mysql-test/t/type_bit.test:
Added test case for bug #32556.
mysql-test/r/type_bit.result:
Added test case for bug #32556.
Problem: setting Item_func_rollup_const::null_value property to argument's null_value
before (without) the argument evaluation may result in a crash due to wrong null_value.
Fix: use is_null() to set Item_func_rollup_const::null_value instead as it evaluates
the argument if necessary and returns a proper value.
mysql-test/r/olap.result:
Fix for bug #32558: group by null-returning expression with rollup causes crash
- test result.
mysql-test/t/olap.test:
Fix for bug #32558: group by null-returning expression with rollup causes crash
- test case.
sql/item_func.h:
Fix for bug #32558: group by null-returning expression with rollup causes crash
- use args[0]->is_null() to obtain Item_func_rollup_const::null_value
instead of args[0]->null_value as it's not set in advance in case of
constant functions.
into five.local.lan:/work/merge/mysql-5.1-build-31610
mysql-test/suite/funcs_1/datadict/datadict_master.inc:
Auto merged
mysql-test/suite/funcs_1/datadict/datadict_show_schema.inc:
Auto merged
mysql-test/suite/funcs_1/datadict/datadict_tables.inc:
Auto merged
mysql-test/suite/funcs_1/r/innodb__datadict.result:
Auto merged
mysql-test/suite/funcs_1/r/memory__datadict.result:
Auto merged
mysql-test/suite/funcs_1/r/myisam__datadict.result:
Auto merged
Bug#31567 "datadict" tests (all engines) fail:
Reference protocol is non-standard build
Bug#30418 "datadict" tests (all engines) fail:
Dependency on the host name for ordering
Modifications:
1. The standard builds (build team) do not contain
the collation 'utf8_general_cs'.
The common developer builds (compuile-....-max)
contain this collation.
Solution fitting to both build variants:
Exclude the collation 'utf8_general_cs' from
result sets.
2. Use mysqltest builtin sorting of result set for
the statement where the hostname affects the
row order.
mysql-test/suite/funcs_1/datadict/datadict_master.inc:
Exclude collation 'utf8_general_cs' from result set.
mysql-test/suite/funcs_1/datadict/datadict_show_schema.inc:
Use mysqltest builtin sorting of result set.
mysql-test/suite/funcs_1/datadict/datadict_tables.inc:
Exclude collation 'utf8_general_cs' from result set.
mysql-test/suite/funcs_1/r/innodb__datadict.result:
Updated results
mysql-test/suite/funcs_1/r/memory__datadict.result:
Updated results
mysql-test/suite/funcs_1/r/myisam__datadict.result:
Updated results
Problem: even if an Item_xml_str_func successor returns NULL, it doesn't have
a corresponding property (maybe_null) set, that leads to a failed assertion.
Fix: set nullability property of Item_xml_str_func.
mysql-test/r/xml.result:
Fix for bug #32557: order by updatexml causes assertion in filesort
- test result.
mysql-test/t/xml.test:
Fix for bug #32557: order by updatexml causes assertion in filesort
- test case.
sql/item_xmlfunc.h:
Fix for bug #32557: order by updatexml causes assertion in filesort
- set Item_xml_str_func::maybe_null.
into magare.gmz:/home/kgeorge/mysql/work/B30788-5.1-opt
mysql-test/r/subselect3.result:
Auto merged
sql/item.h:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/r/subselect.result:
merge of bug 30788 to 5.1-opt
mysql-test/t/subselect.test:
merge of bug 30788 to 5.1-opt
into magare.gmz:/home/kgeorge/mysql/autopush/B30788-5.0-opt
sql/item.h:
Auto merged
sql/sql_select.cc:
Auto merged
mysql-test/r/subselect.result:
merge of 5.0-opt
mysql-test/t/subselect.test:
merge of 5.0-opt
Index lookup does not always guarantee that we can
simply remove the relevant conditions from the WHERE
clause. Reasons can be e.g. conversion errors,
partial indexes etc.
The optimizer was removing these parts of the WHERE
condition without any further checking.
This leads to "false positives" when using indexes.
Fixed by checking the index reference conditions
(using WHERE) when using indexes with sub-queries.
mysql-test/r/subselect.result:
Bug #30788:
- using where
- test case
mysql-test/r/subselect3.result:
Bug #30788: using where
mysql-test/t/subselect.test:
Bug #30788: test case
sql/item.h:
Bug #30788:
- Declare eq() method of Item_cache descendants : this is used in
test_if_ref()
- preserve the field that is being cached for type comparisions
sql/sql_select.cc:
Bug #30788: Don't remove the WHERE when using index lookup
with subqueries.
Problem: caching 00000000-00000099 dates as integer values we're
improperly shifting them up twice in the get_datetime_value().
Fix: don't shift cached DATETIME values up for the second time.
mysql-test/r/type_date.result:
Fix for bug #32021: Using Date 000-00-01 in WHERE causes wrong result
- test result.
mysql-test/t/type_date.test:
Fix for bug #32021: Using Date 000-00-01 in WHERE causes wrong result
- test case.
sql/item.h:
Fix for bug #32021: Using Date 000-00-01 in WHERE causes wrong result
- Item_cache::field_type() method added.
- new Item_cache(enum_field_types) and Item_cache_int(enum_field_types)
constructors added.
sql/item_cmpfunc.cc:
Fix for bug #32021: Using Date 000-00-01 in WHERE causes wrong result
- don't shift cached DATETIME values for the second time in the
get_datetime_value():
creating new Item_cache_int set DATETIME filed type,
check the type before shifting.
In several cases, an error when processing the query would cause mysql to
return to the top level without printing warnings. Fix is to always
print any available warnings before returning to the top level.
client/mysql.cc:
In com_go(), ensure that warnings are printed even if an error
occurred when processing the query. Before this patch, an error
in several places would return to the top level without printing
associated warnings.
Attempt to avoid printing the warning, though, if it's a duplicate
of mysql_error() for the connection handle.
mysql-test/r/mysql.result:
Add test for bug 25146
mysql-test/t/mysql.test:
Add test for bug 25146
mysql-test/mysql-test-run.pl:
updated mtr
mysql-test/include/set_binlog_format_mixed.inc:
set mixed binlog format
mysql-test/include/set_binlog_format_row.inc:
set row binlog format
mysql-test/include/set_binlog_format_statement.inc:
set statement binlog format
only on some occasions
Referencing an element from the SELECT list in a WHERE
clause is not permitted. The namespace of the WHERE
clause is the table columns only. This was not enforced
correctly when resolving outer references in sub-queries.
Fixed by not allowing references to aliases in a
sub-query in WHERE.
mysql-test/include/ps_query.inc:
Bug #32400: fixed old test queries
mysql-test/r/ps_2myisam.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_3innodb.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_4heap.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_5merge.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_6bdb.result:
Bug #32400: fixed old test queries
mysql-test/r/ps_7ndb.result:
Bug #32400: fixed old test queries
mysql-test/r/subselect.result:
Bug #32400: test case
mysql-test/t/subselect.test:
Bug #32400: test case
sql/item.cc:
Bug #32400: don't allow references to aliases in WHERE
tests/mysql_client_test.c:
Bug #32400: fixed old test queries
The problem is that DROP TABLE and other DDL statements failed to
automatically close handlers associated with tables that were marked
for reopen (FLUSH TABLES).
The current implementation fails to properly discard handlers of
dropped tables (that were marked for reopen) because it searches
on the open handler tables list and using the current alias of the
table being dropped. The problem is that it must not use the open
handler tables list to search because the table might have been
closed (marked for reopen) by a flush tables command and also it
must not use the current table alias at all since multiple different
aliases may be associated with a single table. This is specially
visible when a user has two open handlers (using alias) of a same
table and a flush tables command is issued before the table is
dropped (see test case). Scanning the handler table list is also
useless for dropping handlers associated with temporary tables,
because temporary tables are not kept in the THD::handler_tables
list.
The solution is to simple scan the handlers hash table searching
for, and deleting all handlers with matching table names if the
reopen flag is not passed to the flush function, indicating that
the handlers should be deleted. All matching handlers are deleted
even if the associated the table is not open.
mysql-test/include/handler.inc:
Add test case for Bug#31397
mysql-test/r/handler_innodb.result:
Add test case result for Bug#31397
mysql-test/r/handler_myisam.result:
Add test case result for Bug#31397
sql/mysql_priv.h:
Rename flush functions to better match the intent of the caller and
update functions prototypes and remove unused flags.
sql/sql_base.cc:
Rename flush functions to better match the intent of the caller.
sql/sql_class.cc:
Rename the flush functions to better match the intent of the caller.
The hash_free function is moved to the cleanup.
sql/sql_handler.cc:
When dropping tables for a final close, scan the handler's hash table since
the table might not be in the handlers open table list because the table was
marked for reopen or because it's a temporary table.
sql/sql_rename.cc:
Drop handlers associated with tables that are being renamed.
sql/sql_table.cc:
Now that temporary tables are properly removed even when opened
by a SQL HANDLER, enable the assert since this branch can't be taken
outside of SF/trigger/prelocked mode.
mysql-test/lib/mtr_cases.pl:
updated the code for combination
mysql-test/mysql-test-run.pl:
added soft switching of binlog format
mysql-test/lib/mtr_misc.pl:
added new sub mtr_diff_opts
mysql-test/suite/rpl/r/rpl_invoked_features.result:
updated result
mysql-test/suite/rpl/t/rpl_invoked_features.test:
updated test
mysql-test/suite/rpl/t/rpl_misc_functions.test:
updated test
mysql-test/suite/rpl/t/rpl_session_var.test:
updated test
8bit escape characters, termination and enclosed characters
were silently ignored by SELECT INTO query, but LOAD DATA INFILE
algorithm is 8bit-clean, so data was corrupted during
encoding.
sql/sql_class.cc:
Fixed bug #32533.
SELECT INTO OUTFILE encoding was not 8bit clear, it
has been fixed for a symmetry with the LOAD DATA INFILE
decoding algorithm.
mysql-test/t/outfile_loaddata.test:
Added test case for bug #32533.
mysql-test/r/outfile_loaddata.result:
Added test case for bug #32533.