Before this patch, failures to write to the log tables (mysql.slow_log
and mysql.general_log) were improperly printed (the time was printed twice),
or not printed at all.
With this patch, failures to write to the log tables is reported in the
error log, for all cases of failures.
mysql-test/r/log_tables.result:
Bug#27858 (Failing to log to a log table doesn't log anything to error log)
mysql-test/t/log_tables.test:
Bug#27858 (Failing to log to a log table doesn't log anything to error log)
sql/log.cc:
Bug#27858 (Failing to log to a log table doesn't log anything to error log)
"DECLARE CURSOR FOR SHOW ..." is a syntax that currently appears to work,
but is untested for some SHOW commands and does not work for other SHOW
commands.
Since this is an un-intended feature that leaked as a result of a coding bug
(in the parser grammar), the correct fix is to fix the grammar to not accept
this construct.
In other words, "DECLARE CURSOR FOR SHOW <other commands that don't work>"
is not considered a bug, and we will not implement other features to make all
the SHOW commands usable inside a cursor just because someone exploited a bug.
mysql-test/r/sp-error.result:
Only allow declaring cursors for SELECT statements to avoid
possible further confusion/problems.
mysql-test/t/information_schema.test:
Only SELECT statements are allowed in cursors.
mysql-test/t/sp-error.test:
Add test case for Bug#29223. Non-SELECT statements in cursors now
yields a parser error.
sql/sql_yacc.yy:
Rework DECLARE CURSOR statement to not allow non-SELECT statements.
mysql-test/include/handler.inc:
Add test case for Bug 31409
mysql-test/r/handler_innodb.result:
Add test case result for InnoDB run of the handler test for Bug 31409
mysql-test/r/handler_myisam.result:
Add test case result for MyISAM run of the handler test for Bug 31409
mysql-test/include/handler.inc:
Add test case for Bug 21587
mysql-test/r/handler_innodb.result:
Add test case result for InnoDB run of the handler test for Bug 21587
mysql-test/r/handler_myisam.result:
Add test case result for MyISAM run of the handler test for Bug 21587
into bodhi.(none):/opt/local/work/mysql-5.1-runtime
mysql-test/include/mix1.inc:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/innodb_mysql.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/t/sp.test:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
libmysql/libmysql.c:
Manual merge.
when used in a VIEW.
The problem was that wrong function (create_tmp_from_item())
was used to create a temporary field for Item_func_sp.
The fix is to use create_tmp_from_field().
mysql-test/r/sp.result:
Update result file.
mysql-test/t/sp.test:
Add a test case for BUG#20550.
sql/item_func.h:
Add a getter for Item_func_sp::sp_result_field.
sql/sql_select.cc:
Use create_tmp_from_field() to create a temporary field
for Item_func_sp.
This actually, fix for the patch for bug-27354. The problem with
the patch was that Item_func_sp::used_tables() was updated, but
Item_func_sp::const_item() was not. So, for Item_func_sp, we had
the following inconsistency:
- used_tables() returned RAND_TABLE, which means that the item
can produce "random" results;
- but const_item() returned TRUE, which means that the item is
a constant one.
The fix is to change Item_func_sp::const_item() behaviour: it must
return TRUE (an item is a constant one) only if a stored function
is deterministic and each of its arguments (if any) is a constant
item.
mysql-test/r/sp.result:
Update result file.
mysql-test/t/sp.test:
Add test cases for BUG-31035, BUG-31191, BUG-31226
sql/item_func.cc:
Make Item::const_item() be consistent with Item::used_tables().
were accidentally removed during a previous rototill of this
code. Fixes bug#27692.
While it can be argued we should strive to provide a 'secure by
default' installation, this happens to be the setup currently
documented in the manual as the default, so defer changes that
improve security out of the box to a co-ordinated effort later
on.
For now, make a note about the test databases and anonymous user
in mysql_install_db and recommend that mysql_secure_installation
be ran for users wishing to remove these defaults.
[..re-commit of previously lost change..]
scripts/mysql_system_tables_data.sql:
Add anonymous accounts.
scripts/mysql_install_db.sh:
Point users at the mysql_secure_installation script.
mysql-test/mysql-test-run.pl:
Add a comment where removing anonymous users.
Add the cleanup by dropping the database 'track' in test "rpl_bug31076".
mysql-test/suite/rpl/r/rpl_bug31076.result:
Fix bug#31150 "Test case does not cleanup":
Drop the database 'track' which was newly created for this test.
mysql-test/suite/rpl/t/rpl_bug31076.test:
Fix bug#31150 "Test case does not cleanup":
Drop the database 'track' which was newly created for this test.
When CREATE TEMPORARY TABLE .. SELECT is invoked from a stored function
which in turn is called from CREATE TABLE SELECT causes a memory leak
because the inner create temporary table overrides the outter extra_lock
reference when locking the table.
The solution is to simply not overrride the extra_lock by only using the
extra_lock for a non-temporary table lock.
mysql-test/r/create.result:
Add test case result for Bug#21136
mysql-test/t/create.test:
Add test case for Bug#21136
sql/sql_insert.cc:
For temporary tables, store the lock data within the select_create class
since tmp tables contents are not replicated. For "real" tables, store
the lock data in the thread extra_lock pointer.
insert_id after succ. mysql_change_user() call.
See also WL 4066.
This bug reveals two problems:
- the problem on the client side which was described originally;
- the problem in protocol / the server side: connection context
on client and server should be like after mysql_real_connect()
and be consistent. The server however just resets character
set variables to the global defaults.
The fix seems to be as follows:
- extend the protocol so that the client be able to send
character set information in COM_CHANGE_USER command;
- change the server so that it understands client character set
in the command;
- change the client:
- reset character set to the default value (which has been
read from the configuration);
- send character set in COM_CHANGE_USER command.
client/client_priv.h:
Declare a function, used in libmysql.c and client.c.
libmysql/libmysql.c:
1. Reset character set on the client in mysql_change_user().
2. Send character set to the server in COM_CHANGE_USER command.
mysql-test/t/mysql_client_test.test:
mysql_client_test.log is used by the test suite.
Use mysql_client_test.out.log to collect mysql_client_test
real output.
sql/sql_parse.cc:
Switch character set in COM_CHANGE_USER.
tests/mysql_client_test.c:
Test case for BUG#30472.
into trift2.:/MySQL/M51/push-5.1
This is mysql-5.1.22-rc.
mysql-test/r/innodb_mysql.result:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
sql/log_event.cc:
Auto merged
sql/sql_select.cc:
Manual merge - the 31001 bug is already fixed.
mysql-test/include/mix1.inc:
Manual merge - should not have conflicted at all.
into trift-lap.fambruehe:/MySQL/M51/antony-5.1
Makefile.am:
Auto merged
configure.in:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
mysql-test/suite/funcs_1/r/innodb__datadict.result:
Use most current version of test results.
mysql-test/suite/funcs_1/r/memory__datadict.result:
Use most current version of test results.
mysql-test/suite/funcs_1/r/myisam__datadict.result:
Use most current version of test results.
mysql-test/suite/funcs_1/r/ndb__datadict.result:
Use most current version of test results.
Always include all sub directories in "make dist"
Removed incorrect comment
configure.in:
Unconditionally list make files in AC_CONFIG_FILES
Removed 'thread_dirs', it is not used
Minor cleanup
compile-dist:
Simplified the configure line needed for "make dist" to get it all
zlib.m4, ssl.m4:
Unconditionally list make files in AC_CONFIG_FILES
Makefile.am:
Removed DIST_SUBDIRS not needed
Don't copy soft links as files into source package
BUILD/compile-dist:
Simplified the configure line needed for "make dist" to get it all
config/ac-macros/ssl.m4:
Unconditionally list make files in AC_CONFIG_FILES
config/ac-macros/zlib.m4:
Unconditionally list make files in AC_CONFIG_FILES
libmysql/Makefile.am:
Removed incorrect comment
Makefile.am:
Always include all sub directories in "make dist"
mysql-test/Makefile.am:
Removed DIST_SUBDIRS not needed
libmysql_r/Makefile.am:
Don't copy soft links as files into source package
libmysqld/Makefile.am:
Don't copy soft links as files into source package
libmysqld/examples/Makefile.am:
Don't copy soft links as files into source package
sql/Makefile.am:
Don't copy soft links as files into source package
extra/Makefile.am:
Always include all sub directories in "make dist"
plugin/Makefile.am:
Always include all sub directories in "make dist"
configure.in:
Unconditionally list make files in AC_CONFIG_FILES
Removed 'thread_dirs', it is not used
Minor cleanup
into pippilotta.erinye.com:/shared/home/df/mysql/build/mysql-5.1-build
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
Auto merged
into trift-lap.fambruehe:/MySQL/M51/antony-5.1
mysql-test/suite/funcs_1/include/ndb_tb2.inc:
Auto merged
mysql-test/suite/funcs_1/r/innodb_views.result:
Auto merged
mysql-test/suite/funcs_1/r/memory_views.result:
Auto merged
mysql-test/suite/funcs_1/r/myisam_views.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_cursors.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_func_view.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_storedproc_07.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_storedproc_08.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_0102.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_03.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_03e.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_0407.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_08.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_09.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_trig_1011ext.result:
Auto merged
mysql-test/suite/funcs_1/r/ndb_views.result:
Auto merged
mysql-test/suite/funcs_1/views/views_master.inc:
Auto merged
sql/ha_partition.h:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
configure.in:
Version is updated already.
sql/ha_partition.cc:
Manual merge of 5.1.22 changes into main.
Row-based replication crashes when replicating from pre-5.1.22 to 5.1.22
due to an uninitialized variable.
sql/log_event.cc:
Initializing m_null_bits to null so that it can be detected that it
was not initialized later.
mysql-test/suite/rpl/r/rpl_bug31076.result:
New BitKeeper file ``mysql-test/suite/rpl/r/rpl_bug31076.result''
mysql-test/suite/rpl/t/rpl_bug31076.test:
New BitKeeper file ``mysql-test/suite/rpl/t/rpl_bug31076.test''
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
mysql-test/r/alter_table.result:
Auto merged
mysql-test/r/create.result:
Auto merged
mysql-test/r/ctype_collate.result:
Auto merged
mysql-test/r/ctype_recoding.result:
Auto merged
mysql-test/r/default.result:
Auto merged
mysql-test/r/gis.result:
Auto merged
mysql-test/r/grant.result:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/r/key.result:
Auto merged
mysql-test/r/mysql.result:
Auto merged
mysql-test/r/ps_1general.result:
Auto merged
mysql-test/r/sp.result:
Auto merged
mysql-test/r/type_enum.result:
Auto merged
mysql-test/r/type_ranges.result:
Auto merged
mysql-test/r/show_check.result:
manual merge
mysql-test/t/information_schema.test:
manual merge
sql/sql_show.cc:
manual merge
added get_field_default_value() function which obtains default value from the field
(used in store_create_info() & get_schema_column_record() functions)
mysql-test/r/alter_table.result:
result fix
mysql-test/r/create.result:
result fix
mysql-test/r/ctype_collate.result:
result fix
mysql-test/r/ctype_recoding.result:
result fix
mysql-test/r/default.result:
result fix
mysql-test/r/gis.result:
result fix
mysql-test/r/grant.result:
result fix
mysql-test/r/information_schema.result:
result fix
mysql-test/r/key.result:
result fix
mysql-test/r/mysql.result:
result fix
mysql-test/r/ps_1general.result:
result fix
mysql-test/r/show_check.result:
result fix
mysql-test/r/sp.result:
result fix
mysql-test/r/type_enum.result:
result fix
mysql-test/r/type_ranges.result:
result fix
mysql-test/t/information_schema.test:
test case
into magare.gmz:/home/kgeorge/mysql/autopush/B30639-5.1-opt
mysql-test/r/select.result:
Auto merged
mysql-test/t/select.test:
Auto merged
sql/sql_lex.cc:
Auto merged
The parser uses ulonglong to store the LIMIT number. This number
then is stored into a variable of type ha_rows. ha_rows is either
4 or 8 byte depending on the BIG_TABLES define from config.h
So an overflow may occur (and LIMIT becomes zero) while storing an
ulonglong value in ha_rows.
Fixed by :
1. Using the maximum possible value for ha_rows on overflow
2. Defining BIG_TABLES for the windows builds (to match the others)
include/config-win.h:
Bug #30639: turn on BIG_TABLES for windows
mysql-test/r/select.result:
Bug #30639: test case
mysql-test/t/select.test:
Bug #30639: test case
sql/sql_lex.cc:
Bug #30639: Use the maximum possible number on overflow
of LIMIT. This is valid because there won't be more rows
anyway.
into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
Auto merged
into trift2.:/MySQL/M51/push-5.1
config/ac-macros/misc.m4:
Auto merged
mysql-test/suite/rpl/r/rpl_row_tabledefs_2myisam.result:
Auto merged
mysql-test/suite/rpl/r/rpl_row_tabledefs_3innodb.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/log_event.h:
Auto merged
sql/rpl_record.cc:
Auto merged
sql/rpl_rli.h:
Auto merged
sql/rpl_utility.cc:
Auto merged
sql/rpl_utility.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
Merge with 5.0-opt.
mysql-test/r/binlog_unsafe.result:
Merge with 5.0-opt.
mysql-test/r/events_bugs.result:
Merge with 5.0-opt.
mysql-test/r/events_trans.result:
Merge with 5.0-opt.
mysql-test/r/sp.result:
Merge with 5.0-opt.
mysql-test/r/sp_gis.result:
Merge with 5.0-opt.
mysql-test/r/xml.result:
Merge with 5.0-opt.
mysql-test/suite/rpl/r/rpl_incident.result:
Merge with 5.0-opt.
mysql-test/suite/rpl/r/rpl_loaddata_fatal.result:
Merge with 5.0-opt.
mysql-test/suite/rpl/r/rpl_udf.result:
Merge with 5.0-opt.
mysql-test/suite/rpl_ndb/r/rpl_ndb_extraCol.result:
Merge with 5.0-opt.
mysql-test/suite/ndb/r/ndb_dd_basic.result:
Merge with 5.0-opt.
mysql-test/suite/ndb/r/ndb_dd_ddl.result:
Merge with 5.0-opt.
mysql-test/suite/ndb/r/ndb_gis.result:
Merge with 5.0-opt.
mysql-test/suite/ndb/r/ndb_row_format.result:
Merge with 5.0-opt.
mysql-test/suite/ndb/r/ndb_single_user.result:
Merge with 5.0-opt.
The optimizer sets index traversal in reverse order only if there are
used key parts that are not compared to a constant.
However using the primary key as an ORDER BY suffix rendered the check
incomplete : going in reverse order must still be used even if
all the parts of the secondary key are compared to a constant.
Fixed by relaxing the check and set reverse traversal even when all
the secondary index keyparts are compared to a const.
Also account for the case when all the primary keys are compared to a
constant.
mysql-test/include/mix1.inc:
Bug #31001: test case
mysql-test/r/innodb_mysql.result:
Bug #31001: test case
sql/sql_select.cc:
Bug #31001:
- account for the case when all the primary key parts are compared
to a constant.
- force test_if_skip_sort_order to go backwards over the key even
when the number of keyparts used is the same as the number of
keyparts equal to a constant. (because of the primary key
suffix).
The optimizer sets index traversal in reverse order only if there are
used key parts that are not compared to a constant.
However using the primary key as an ORDER BY suffix rendered the check
incomplete : going in reverse order must still be used even if
all the parts of the secondary key are compared to a constant.
Fixed by relaxing the check and set reverse traversal even when all
the secondary index keyparts are compared to a const.
Also account for the case when all the primary keys are compared to a
constant.
mysql-test/r/innodb_mysql.result:
Bug #31001: test case
mysql-test/t/innodb_mysql.test:
Bug #31001: test case
sql/sql_select.cc:
Bug #31001:
- account for the case when all the primary key parts are compared
to a constant
- force test_if_skip_sort_order to go backwards over the key even
when the number of keyparts used is the same as the number of
keyparts equal to a constant. (because of the primary key
suffix).