The following is an excerption from the WL.
1. Change so that MIXED is default format
1.1 to change the default for command line --binlog-format
1.2 to alter global_system_variables.binlog_format calculation
basing on command line --binlog-format parameter and
its default.
2. Change test suite so that more testing is done by MIXED format.
2.1 to check if there are test cases requiring --binlog-foramt=statement via
`source include/have_binlog_format_statement.inc' and affected by
altering the latter to be "mixed".
2.2 to check the content of such vulnerable cases to find if
extending to the mixed does not modify results. In that case simply
substitute source arguments as explained.
2.3 if a test in mixed mode deals with features triggering
row-binlogging then if necessary we can switch explicitly
to statement mode or create another test to run with
non-recommended STATEMENT mode
Particullarily, extracting INSERT DELAYED
binlogging subtest for statement mode is performed, and
the snippet is moved into a separate test file.
Note that since now all three modes verify this use case
through 3 different tests.
No changes in item 3 of HLD appeared to be needed.
mysql-test/extra/binlog_tests/binlog.test:
Moving INSERT DELAYED verification section into separate file. The latter is sourced
from two different files: the current one and a newly created for STATEMENT
mode check.
mysql-test/extra/rpl_tests/rpl_loaddata.test:
require mixed_or_statement
mysql-test/extra/rpl_tests/rpl_stm_000001.test:
require mixed_or_statement
mysql-test/extra/rpl_tests/rpl_stm_charset.test:
require mixed_or_statement
mysql-test/r/binlog_stm_binlog.result:
new result to correspond to MIXED mode.
mysql-test/r/rpl_rbr_to_sbr.result:
result changed
mysql-test/t/archive.test:
require mixed_or_statement
mysql-test/t/binlog_stm_binlog.test:
require exclusive mixed format because of INSERT DELAYED.
mysql-test/t/binlog_stm_blackhole.test:
require mixed_or_statement
mysql-test/t/binlog_stm_ctype_cp932.test:
require mixed_or_statement
mysql-test/t/binlog_stm_ctype_ucs.test:
require mixed_or_statement
mysql-test/t/binlog_stm_drop_tmp_tbl.test:
require mixed_or_statement
mysql-test/t/binlog_stm_innodb_stat.test:
require mixed_or_statement
mysql-test/t/binlog_stm_insert_select.test:
require mixed_or_statement
mysql-test/t/binlog_stm_mix_innodb_myisam.test:
require mixed_or_statement
mysql-test/t/create_select_tmp.test:
require mixed_or_statement
mysql-test/t/ctype_cp932_binlog_stm.test:
require mixed_or_statement
mysql-test/t/date_formats.test:
MIXED case appended to the replace instruction
mysql-test/t/mysqlbinlog.test:
require mixed_or_statement
mysql-test/t/mysqlbinlog2.test:
require mixed_or_statement
mysql-test/t/ndb_multi.test:
require mixed_or_statement
mysql-test/t/rpl000013.test:
require mixed_or_statement
mysql-test/t/rpl_heap.test:
require mixed_or_statement
mysql-test/t/rpl_loaddata_s.test:
require mixed_or_statement
mysql-test/t/rpl_mixed_ddl_dml.test:
require mixed_or_statement
mysql-test/t/rpl_rbr_to_sbr.test:
Rather meaningless line is discarded.
The test does not loose anything without it and without considering the WL.
mysql-test/t/rpl_rewrt_db.test:
require mixed_or_statement
mysql-test/t/rpl_rotate_logs.test:
require mixed_or_statement
mysql-test/t/rpl_stm_EE_err2.test:
require mixed_or_statement
mysql-test/t/rpl_stm_flsh_tbls.test:
require mixed_or_statement
mysql-test/t/rpl_stm_log.test:
require mixed_or_statement
mysql-test/t/rpl_stm_max_relay_size.test:
require mixed_or_statement
mysql-test/t/rpl_stm_multi_query.test:
require mixed_or_statement
mysql-test/t/rpl_stm_mystery22.test:
require mixed_or_statement
mysql-test/t/rpl_stm_no_op.test:
require mixed_or_statement
mysql-test/t/rpl_stm_reset_slave.test:
require mixed_or_statement
mysql-test/t/rpl_stm_until.test:
require mixed_or_statement
mysql-test/t/rpl_temp_table.test:
require mixed_or_statement
mysql-test/t/rpl_trigger.test:
require mixed_or_statement
mysql-test/t/rpl_trunc_temp.test:
require mixed_or_statement
mysql-test/t/user_var-binlog.test:
require mixed_or_statement
sql/mysqld.cc:
Implementation of making BINLOG_FORMAT_MIXED to be the default of
global_system_variables.binlog_format. Not in the case of embedded.
mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
Snippend sourced from two tests to verify INSERT DELAYED in all three binlog formats.
mysql-test/include/have_binlog_format_mixed.inc:
Part of exclusive MIXED format requirement
mysql-test/include/have_binlog_format_mixed_or_statement.inc:
requirement to have mixed or statement. Most of the tests with STATEMENT format indeed
are tolerant to MIXED format to yield the same result files. There are few exception
because of features triggering RBR events when MIXED format.
mysql-test/r/binlog_statement_insert_delayed.result:
BitKeeper file /home/elkin/MySQL/TEAM/FIXES/5.1/wl3368_mixed_default/mysql-test/r/binlog_statement_insert_delayed.result
mysql-test/r/have_binlog_format_mixed.require:
Exclusive MIXED format
mysql-test/t/binlog_statement_insert_delayed.test:
BitKeeper file /home/elkin/MySQL/TEAM/FIXES/5.1/wl3368_mixed_default/mysql-test/t/binlog_statement_insert_delayed.test
sql/log.cc:
Auto merged
sql/sql_class.cc:
Auto merged
mysql-test/r/rpl_switch_stm_row_mixed.result:
Merge with mysql-5.1-new-rpl
mysql-test/t/rpl_switch_stm_row_mixed.test:
Merge with mysql-5.1-new-rpl
Fix to allow the binlog format to be changed between the LOCK and
UNLOCK tables, as well as under MIXED mode.
mysql-test/r/rpl_switch_stm_row_mixed.result:
Result change
mysql-test/t/rpl_switch_stm_row_mixed.test:
Adding test to see that binlog format can be changed when using
LOCK/UNLOCK TABLES both under ROW format and MIXED format.
sql/log.cc:
Removing pre-condition assertion since binlog can now be
statement based.
sql/sql_class.cc:
Adding code to always flush pending event regardless of the binlog
format used. The only exception is if we are inside a stored routine,
where the pending event is never flushed.
mysql-test/r/date_formats.result:
Fix results after merge
mysql-test/r/mysqldump.result:
Fix results after merge
mysql-test/t/disabled.def:
Add randomly-failing test with open bug
mysql-test/t/mysqldump.test:
Clean up test after merge and fix 'End of test' markers
into rama.(none):/home/jimw/my/mysql-5.1-clean
client/mysql.cc:
Auto merged
client/mysqldump.c:
Auto merged
configure.in:
Auto merged
extra/yassl/include/openssl/ssl.h:
Auto merged
extra/yassl/include/yassl_int.hpp:
Auto merged
extra/yassl/src/ssl.cpp:
Auto merged
extra/yassl/src/template_instnt.cpp:
Auto merged
extra/yassl/src/yassl_imp.cpp:
Auto merged
extra/yassl/src/yassl_int.cpp:
Auto merged
include/mysql.h:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/embedded_priv.h:
Auto merged
BitKeeper/deleted/.del-mysql_explain_log.sh~5ddc62808e16bd57:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
libmysqld/libmysqld.c:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/r/func_str.result:
Auto merged
mysql-test/r/mysqldump-max.result:
Auto merged
mysql-test/r/ps.result:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
mysql-test/t/ps.test:
Auto merged
scripts/mysqld_safe.sh:
Auto merged
sql/item_func.h:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_string.h:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/time.cc:
Auto merged
storage/myisam/mi_create.c:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
tests/mysql_client_test.c:
Auto merged
BitKeeper/deleted/.del-have_case_sensitive_file_system.inc:
Delete: mysql-test/include/have_case_sensitive_file_system.inc
BitKeeper/deleted/.del-case_sensitive_file_system.require:
Delete: mysql-test/r/case_sensitive_file_system.require
mysql-test/lib/mtr_cases.pl:
Resolve conflict
mysql-test/mysql-test-run.pl:
Resolve conflict
mysql-test/r/mysqldump.result:
Resolve conflict
mysql-test/t/mysqldump.test:
Resolve conflict
sql/sql_parse.cc:
Resolve conflict
- Add loop in mysqlslap that tries to connect up to 10 times if connect
in thread fails.
client/mysqlslap.c:
Add loop to retry connect 10 times with a small sleep in between.
mysql-test/t/disabled.def:
Remove disabling of testcase
into bodhi.local:/opt/local/work/mysql-5.1-runtime-merge
BitKeeper/etc/ignore:
auto-union
BitKeeper/deleted/.del-libmysqld.dsp~78dc6a589e5a4149:
Auto merged
BitKeeper/deleted/.del-libmysqld.vcproj~a75d5b9a5967dea0:
Auto merged
BitKeeper/deleted/.del-mysqld.dsp~ffdbf2d234e23e56:
Auto merged
BitKeeper/deleted/.del-mysqld.vcproj~6aa7b3f9c3e28fcb:
Auto merged
libmysqld/Makefile.am:
Auto merged
mysql-test/Makefile.am:
Auto merged
mysql-test/r/date_formats.result:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/date_formats.test:
Auto merged
mysql-test/t/init_connect.test:
Auto merged
mysql-test/t/mysqldump.test:
Auto merged
mysql-test/t/view_grant.test:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item.cc:
Auto merged
sql/item_create.cc:
Auto merged
sql/item_create.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_strfunc.cc:
Auto merged
sql/item_strfunc.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_cache.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_trigger.cc:
Auto merged
sql/sql_udf.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/ndb/include/kernel/GlobalSignalNumbers.h:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/ndbapi/ndberror.c:
Auto merged
support-files/mysql.spec.sh:
Auto merged
mysql-test/r/federated.result:
Use local.
mysql-test/r/myisam.result:
Manual merge.
mysql-test/t/federated.test:
Manual merge.
mysql-test/t/myisam.test:
Manual merge.
sql/Makefile.am:
Manual merge.
sql/set_var.cc:
Manual merge.
sql/sql_parse.cc:
Manual merge.
sql/sql_update.cc:
Manual merge.
storage/myisam/mi_create.c:
Manual merge.
- Add prelocking for stored procedures that uses sp or sf
- Update test result for sp_error(reported as bug#21294)
- Make note about new error message from sp-error(bug#17244)
mysql-test/r/sp-error.result:
Update test result(reported as bug#21294)
mysql-test/r/sp_notembedded.result:
Update test result after disabling test case
mysql-test/t/sp-error.test:
Add note about the faulty error message
mysql-test/t/sp_notembedded.test:
Disable test case until bug#17244 has been fixed
sql/sp.cc:
Add prelocking for all stored procedures that uses another sp or sf
sql/sp.h:
Add prelocking for all stored procedures that uses another sp or sf
sql/sql_base.cc:
Add prelocking for all stored procedures that uses another sp or sf
Emit an error instead of doing ASSERT
mysql-test/r/create_not_windows.result:
update result
mysql-test/t/create_not_windows.test:
Add test case for bug #16532: mysql server assert in debug if table definition is removed
sql/sql_table.cc:
it could happen that an user deletes the frm file on OS level.
In addition if the table was already opened, the file system level
check for existance of table.frm will pass but get_cached_table_share()
will return non-NULL value. In this case we will emit the standard
error that the table exist. The error case is quite obscure but error
message is better than a sigabort.
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
mysql-test/mysql-test-run.pl:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
(well, im_options in this case, but using existing bug report)
mysql-test/t/disabled.def:
disable im_options test as it's non-deterministic. reopen bug
- Disable test case until fixed
mysql-test/r/sp.result:
Disable test case until bug#21039 is fixed
mysql-test/t/sp.test:
Disable test case until bug#21039 is fixed
mysql-test/t/rpl_insert.test:
Wait after mysqlslap execution until all INSERT DELAYED operations has completed(i.e there are 5000 records in the table)
into chilla.local:/home/mydev/mysql-5.1-amain
configure.in:
Auto merged
libmysqld/lib_sql.cc:
Auto merged
libmysqld/libmysqld.c:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/ctype_utf8.result:
Auto merged
mysql-test/r/federated.result:
Auto merged
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/gis-rtree.result:
Auto merged
mysql-test/r/gis.result:
Auto merged
mysql-test/r/key.result:
Auto merged
mysql-test/r/myisam.result:
Auto merged
mysql-test/r/symlink.result:
Auto merged
mysql-test/t/ctype_utf8.test:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
mysql-test/t/gis.test:
Auto merged
mysql-test/t/key.test:
Auto merged
mysql-test/t/myisam.test:
Auto merged
scripts/make_binary_distribution.sh:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_geofunc.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_sum.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_trigger.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_create.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_key.c:
Auto merged
storage/ndb/include/kernel/GlobalSignalNumbers.h:
Auto merged
storage/ndb/src/common/debugger/signaldata/SignalNames.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdict/Dbdict.hpp:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/qmgr/QmgrMain.cpp:
Auto merged
storage/ndb/src/ndbapi/NdbScanOperation.cpp:
Auto merged
support-files/mysql.spec.sh:
Auto merged
BitKeeper/deleted/.del-mysqld.vcproj~6aa7b3f9c3e28fcb:
Manual merge
include/my_sys.h:
Manual merge
mysql-test/t/federated.test:
Manual merge
sql/ha_federated.cc:
Manual merge
tests/Makefile.am:
Manual merge
Problem was with handling NULL values in ranges
mysql-test/r/partition_hash.result:
New partition pruning test cases
mysql-test/r/partition_list.result:
New partition pruning test cases
mysql-test/r/partition_pruning.result:
New partition pruning test cases
mysql-test/r/partition_range.result:
New partition pruning test cases
mysql-test/t/partition_hash.test:
New partition pruning test cases
mysql-test/t/partition_list.test:
New partition pruning test cases
mysql-test/t/partition_pruning.test:
New partition pruning test cases
mysql-test/t/partition_range.test:
New partition pruning test cases
sql/opt_range.cc:
Added comment
sql/sql_partition.cc:
Partition pruning didn't handle ranges with NULL values in a proper manner
into neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
mysql-test/r/partition.result:
Auto merged
mysql-test/t/partition.test:
Auto merged
sql/unireg.cc:
Auto merged
BitKeeper/deleted/.del-partition_innodb.result:
Auto merged
BitKeeper/deleted/.del-partition_innodb.test:
Auto merged
into myoffice.izhnet.ru:/usr/home/gluh/MySQL/5.1
mysql-test/r/sp_notembedded.result:
Auto merged
mysql-test/r/strict.result:
Auto merged
mysql-test/t/strict.test:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
sql/handler.h:
manual merge
sql/table.cc:
manual merge
sql/unireg.cc:
manual merge
tests/mysql_client_test.c:
SCCS merged
error in error log when "default is put into it
NODEGROUP string to cater for "default" in it
mysql-test/r/ndb_partition_key.result:
New test case
mysql-test/t/ndb_partition_key.test:
New test case
sql/sql_show.cc:
NODEGROUP string to cater for "default" in it
mysql-test/t/ndb_alter_table.test:
Remove file that the test leaves behind
mysql-test/t/partition.test:
Remove file that the other tests leaves behind
mysql-test/t/rpl_ndb_bank.test:
Remove file that the test leaves behind
mysql-test/t/rpl_ndb_dd_advance.test:
Remove file that the test leaves behind
mysql-test/r/partition_order.result:
Changed a test case to handle ordered index scan reverse order as well
mysql-test/t/partition_order.test:
Changed a test case to handle ordered index scan reverse order as well
sql/ha_myisam.cc:
More debug info
sql/ha_partition.cc:
Introduced partition_index_read_last to ensure we use index_read_last in those
cases towards underlying handler.
Ensured that index_read with HA_READ_PREFIX_LAST, HA_READ_PREFIX_LAST_OR_PREV and
HA_READ_BEFORE_KEY uses ordered index scan in reverse order.
sql/ha_partition.h:
Introduced partition_index_read_last to ensure we use index_read_last in those
cases towards underlying handler.
Ensured that index_read with HA_READ_PREFIX_LAST, HA_READ_PREFIX_LAST_OR_PREV and
HA_READ_BEFORE_KEY uses ordered index scan in reverse order.
into siva.hindu.god:/usr/home/tim/m/bk/merge-51
(which is mysql-5.1-new-maint team tree)
include/my_base.h:
Auto merged
mysql-test/extra/rpl_tests/rpl_loaddata.test:
Auto merged
mysql-test/lib/mtr_cases.pl:
Auto merged
mysql-test/r/rpl_loaddata.result:
Auto merged
mysql-test/r/sp-security.result:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
mysql-test/lib/mtr_report.pl:
merge of mysql-5.1 -> mysql-5.1-new-maint
mysql-test/mysql-test-run.pl:
merge of mysql-5.1 -> mysql-5.1-new-maint
into bodhi.local:/opt/local/work/mysql-5.1-runtime-merge-5.0
mysql-test/r/func_sapdb.result:
Auto merged
mysql-test/r/func_time.result:
Auto merged
mysql-test/r/sp-vars.result:
Auto merged
mysql-test/t/func_sapdb.test:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/field_conv.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_timefunc.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
mysql-test/r/information_schema.result:
Use local
mysql-test/t/information_schema.test:
Manual merge.
sql/sql_lex.h:
Manual merge.
into mysql.com:/home/psergey/mysql-5.1-merge-2
mysql-test/r/range.result:
Auto merged
mysql-test/t/range.test:
Auto merged
sql/opt_range.cc:
Auto merged
into anubis.greendragongames.com:/home/greenman/workspace-mysql/mysql/merge-4.1_2_5.0
client/mysqldump.c:
Auto merged
mysql-test/r/mysqldump.result:
Auto merged