but not collation.
The problem here was that text literals in a view were always
dumped with character set introducer. That lead to loosing
collation information.
The fix is to dump character set introducer only if it was
in the original query. That is now possible because there
is no problem any more of loss of character set of string
literals in views -- after WL#4052 the view is dumped
in the original character set.
mysql-test/r/case.result:
Update result file.
mysql-test/r/compress.result:
Update result file.
mysql-test/r/ctype_collate.result:
Update result file.
mysql-test/r/date_formats.result:
Update result file.
mysql-test/r/ddl_i18n_koi8r.result:
Update result file.
mysql-test/r/ddl_i18n_utf8.result:
Update result file.
mysql-test/r/fulltext.result:
Update result file.
mysql-test/r/func_crypt.result:
Update result file.
mysql-test/r/func_encrypt.result:
Update result file.
mysql-test/r/func_if.result:
Update result file.
mysql-test/r/func_in.result:
Update result file.
mysql-test/r/func_like.result:
Update result file.
mysql-test/r/func_regexp.result:
Update result file.
mysql-test/r/func_set.result:
Update result file.
mysql-test/r/func_str.result:
Update result file.
mysql-test/r/func_time.result:
Update result file.
mysql-test/r/gis.result:
Update result file.
mysql-test/r/group_min_max.result:
Update result file.
mysql-test/r/mysqldump.result:
Update result file.
mysql-test/r/negation_elimination.result:
Update result file.
mysql-test/r/null.result:
Update result file.
mysql-test/r/select.result:
Update result file.
mysql-test/r/show_check.result:
Update result file.
mysql-test/r/sp-code.result:
Update result file.
mysql-test/r/ssl.result:
Update result file.
mysql-test/r/ssl_compress.result:
Update result file.
mysql-test/r/subselect.result:
Update result file.
mysql-test/r/temp_table.result:
Update result file.
mysql-test/r/type_blob.result:
Update result file.
mysql-test/r/view.result:
Update result file.
mysql-test/suite/binlog/r/binlog_stm_blackhole.result:
Update result file.
mysql-test/suite/rpl/r/rpl_get_lock.result:
Update result file.
mysql-test/suite/rpl/r/rpl_master_pos_wait.result:
Update result file.
mysql-test/t/view.test:
Add a test case for Bug#32538.
sql/item.cc:
Do not dump character set introducer if it was not specified
explicitly in the original query.
sql/item.h:
Add 'cs_specified' property to Item_string.
sql/sql_yacc.yy:
Set Item_string::cs_specified property to TRUE
when character set introducer is explicitly specified.
behave randomly with mysql_change_user.
The problem was that global status variables were not updated
in THD::check_user(), so thread statistics were lost after
COM_CHANGE_USER.
The fix is to update global status variables with the thread ones
before preparing the thread for new user.
mysql-test/r/change_user.result:
Update result file.
mysql-test/t/change_user.test:
Add a test case for Bug#31222: com_% global status counters
behave randomly with mysql_change_user.
sql/sql_class.cc:
Update global status variables when we're handling
COM_CHANGE_USER for a thread.
mysql-test/t/variables.test, because:
- mysql-test/suite/rpl/t/rpl_variables.test does not replicate anything,
so should not be in the rpl suite.
- mysql-test/t/variables.test is the place for testing variable-related
problems and features.
- I will soon commit a patch containing a test case that tests
replication of variables. It would be good if I could call the test case
mysql-test/suite/rpl/t/rpl_variables.test. I'm making place for that now.
mysql-test/t/variables-master.opt:
Rename: mysql-test/suite/rpl/t/rpl_variables-master.opt -> mysql-test/t/variables-master.opt
BitKeeper/deleted/.del-rpl_variables.test:
Delete: mysql-test/suite/rpl/t/rpl_variables.test
BitKeeper/deleted/.del-rpl_variables.result:
Delete: mysql-test/suite/rpl/r/rpl_variables.result
mysql-test/r/variables.result:
Moved mysql-test/suite/rpl/t/rpl_variables.test into
mysql-test/t/variables.test . Result file needs to be updated.
mysql-test/t/variables.test:
Moved mysql-test/suite/rpl/t/rpl_variables.test into
mysql-test/t/variables.test .
The problem is that AFTER UPDATE triggers will fire only if the
new data is different from the old data on the row. The trigger
should fire regardless of whether there are changes to the data.
The solution is to fire the trigger on UPDATE even if there are
no changes to the value (because the value is the same).
mysql-test/r/trigger.result:
Add test case result for Bug#23771
mysql-test/t/trigger.test:
Add test case for Bug#23771
sql/sql_update.cc:
Move the invocation of the after update trigger so that
the trigger will fire even if the records are the same.
into poseidon.ndb.mysql.com:/home/tomas/mysql-5.1-new-ndb-merge
mysql-test/mysql-test-run.pl:
Auto merged
sql/log_event.cc:
Auto merged
mysql-test/suite/rpl_ndb/t/disabled.def:
manual merge
into a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-marvel
client/mysqlcheck.c:
Auto merged
client/mysqltest.c:
Auto merged
include/my_sys.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
storage/myisam/ft_boolean_search.c:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
or trigger crashes server
Under some circumstances a combination of VIEWs, subselects with outer
references and PS/SP/triggers could lead to use of uninitialized memory
and server crash as a result.
Fixed by changing the code in Item_field::fix_fields() so that in cases
when the field is a VIEW reference, we first check whether the field
is also an outer reference, and mark it appropriately before returning.
mysql-test/r/view.result:
Added a test case for bug #33389.
mysql-test/t/view.test:
Added a test case for bug #33389.
sql/item.cc:
In cases when in Item_field::fix_fields() from_field is a view reference,
do not return too early, i.e. before marking the reference as an outer
one when needed.
Added hton_name() and handler->engine_name() and use these when appropriate
KNOWN_BUGS.txt:
Added some of the known bugs
mysql-test/r/maria.result:
Added test for TRANSACTIONAL=1
mysql-test/r/myisam.result:
Added test for TRANSACTIONAL=1
mysql-test/t/maria.test:
Added test for TRANSACTIONAL=1
mysql-test/t/myisam.test:
Added test for TRANSACTIONAL=1
sql/handler.cc:
ha_resolve_storage_engine_name() -> hton_name()
sql/handler.h:
Added hton_name() and handler->engine_name()
sql/set_var.cc:
Use hton_name()
sql/sql_table.cc:
Add warning of TRANSACTIONAL=1 is used with handler that doesn't support it
Indentation fixes
ha_resolve_storage_engine_name() -> hton_name()
sql/sql_tablespace.cc:
ha_resolve_storage_engine_name() -> hton_name()
Indentation fixes
sql/sql_yacc.yy:
ha_resolve_storage_engine_name() -> hton_name()
sql/unireg.cc:
ha_resolve_storage_engine_name() -> hton_name()
Indentation fixes
into dl145h.mysql.com:/data0/mkindahl/mysql-5.1
mysql-test/mysql-test-run.pl:
Auto merged
sql/rpl_rli.cc:
Auto merged
sql/rpl_rli.h:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_binlog.cc:
Auto merged
into janus.mylan:/usr/home/serg/Abk/mysql-maria
mysql-test/mysql-test-run.pl:
Auto merged
sql/log_event.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/share/errmsg.txt:
Auto merged
include/my_base.h:
merged
rpl_ndb_rep_ignore
Reason: previous test, rpl_ndb_2multi_eng, does not sync slave with master
after cleanup, so tables are sometimes left on slave
Fix: sync_slave_with_master
mysql-test/extra/rpl_tests/rpl_ndb_2multi_eng.test:
Wait until drop table is replicated to slave before terminating. (The
extra table caused sporadic errors in the next test case, causing
pushbuild to fail.)
Problem: incorrect sort order for "U+00DF SHARP S".
Fix: changing sort order for U+00DF to be equal to 's',
like the manual says.
mysql-test/r/ctype_latin1_de.result:
Adding test
mysql-test/r/ctype_uca.result:
Adding test
mysql-test/r/ctype_ucs.result:
Adding test
mysql-test/r/ctype_utf8.result:
Adding test
mysql-test/t/ctype_latin1_de.test:
Adding test
mysql-test/t/ctype_uca.test:
Adding test
mysql-test/t/ctype_ucs.test:
Adding test
mysql-test/t/ctype_utf8.test:
Adding test
strings/ctype-utf8.c:
Changing weight for "U+00DF SHARP S"
mysql-test/include/ctype_german.inc:
New BitKeeper file ``mysql-test/include/ctype_german.inc''
Problem was that it did not work with corrupted/crashed tables.
Solution is to disable these commands until WL#4176 is completed
mysql-test/r/partition.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/inc/partition_alter4.inc:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
copy-paste error, changed from REBUILT to REPAIR, as the heading says
mysql-test/suite/parts/r/partition_alter1_innodb.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_alter1_myisam.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_alter2_innodb.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_alter2_myisam.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_basic_innodb.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_basic_myisam.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_engine_innodb.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/r/partition_engine_myisam.result:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Test result
mysql-test/suite/parts/t/disabled.def:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Disabled test since the tested feature is not longer supported
mysql-test/t/partition.test:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
OPTIMIZE PARTITION is not longer supported, waiting for WL#4176
sql/ha_partition.cc:
Bug#20129: ALTER TABLE ... ANALYZE/CHECK/OPTIMIZE/REPAIR PARTITION
Problem was that it did not work with corrupted/crashed tables.
Solution is to disable these commands until WL#4176 is completed
(returning HA_ADMIN_NOT_IMPLEMENTED and
#ifdef'ed the non-reachable code)
because it uses BINLOG statement, which is not supported in embedded mode.
Fix: disable the test in embedded mode.
mysql-test/suite/binlog/t/binlog_base64_flag.test:
Must disable this test when running embedded, since BINLOG statements
don't work. This fixes the pushbuild problem on the debx86-b machine on
https://intranet.mysql.com/secure/pushbuild/showpush.pl?dir=mysql-5.1-new-rpl&order=469
There was no instruction in the test that enforces the slave successfully connect
to the master.
The way the test was been written allowed the slave to had been late for rendezvous
so that about-connecting time queries to the master failed and are error-logged
to had been seen in Warnings of pb.
Fixed with adding a sychronization primitive to the test.
No test case is possible, observe error logs on pb.
Todo: revise need of rpl_report.pl's rules due to failing execution of
queries from get_master_verion_and_clock().
Any test should try to use a synchornization primitive like the current fix
makes and do not let the slave to miss successful connecting.
mysql-test/t/rpl_variables.test:
Completing the test's body with a synch macro to not let
the slave to miss the successful connecting to the master.
Problem: mysqlbinlog does not free memory if an error happens.
Fix: binlog-processing functions do not call exit() anymore. Instead, they
print an error and return an error code. Error codes are propagated all
the way back to main, and all allocated memory is freed on the way.
client/mysqlbinlog.cc:
- New error handling policy: functions processing binlogs don't just
exit() anymore. Instead, they print a message and return an error
status.
- New policy for the global `mysql' and `glob_description_event': these
are not passed as parameters anymore. The global pointer is used
instead.
- More error situations are detected and reported.
- Better error messages: the program never terminates with exit status 1
without explanation any more. Fixed spelling errors. Use consistent
format of messages (a single line beginning with "ERROR: " or
"WARNING: " and ending with "." is printed to stderr.)
- New memory handling: memory is always freed on program termination.
- Better comments: more functions are explained, doxygen is used, and
more precise formulations in some existing comments.
mysql-test/suite/binlog/r/binlog_base64_flag.result:
Result file updated since output format of mysqlbinlog changed while the
test was disabled.
mysql-test/suite/binlog/t/binlog_killed.test:
Mysqlbinlog now works as described when the binlog is open. Hence, the
--force-if-open flag must be passed
mysql-test/suite/binlog/t/binlog_killed_simulate.test:
Mysqlbinlog now works as described when the binlog is open. Hence, the
--force-if-open flag must be passed
mysql-test/suite/binlog/t/disabled.def:
Now that mysqlbinlog cleans up after itself on abnormal termination, we
can enable this test again.
into dipika.(none):/opt/local/work/mysql-5.1-runtime
include/my_sys.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/suite/binlog/r/binlog_row_binlog.result:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/set_var.h:
Auto merged
sql/sql_acl.cc:
Auto merged
sql-common/client.c:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_view.cc:
Auto merged
mysql-test/extra/binlog_tests/binlog.test:
Manual merge of binlog test case for Bug#33798
mysql-test/suite/binlog/r/binlog_row_binlog.result:
Add test case result for Bug#33798
mysql-test/suite/binlog/r/binlog_stm_binlog.result:
Add test case result for Bug#33798
sql/item.cc:
Use new method which accepts a unsigned flag.
into mysql.com:/Users/davi/mysql/mysql-5.1-runtime
mysql-test/r/ps.result:
Auto merged
mysql-test/t/ps.test:
Auto merged
sql/item.cc:
Auto merged
mysql-test/extra/binlog_tests/binlog.test:
Manual merge.
mysql-test/suite/binlog/r/binlog_stm_binlog.result:
Manual merge.
SET column storing procedure has been modified to be 64bit-clean.
mysql-test/r/type_set.result:
Added test case for bug#15409.
mysql-test/t/type_set.test:
Added test case for bug#15409.
sql/field.cc:
Fixed bug#15409.
The Field_set::store(longlong nr,...) method incompletely
calculates a bit mask for the comparison with a given number:
if that number is greater than 0x7F00 0000 0000 0000 (LONGLONG_MAX),
it uses zero bit mask instead of 0xFFFF FFFF FFFF FFFF (ULONGLONG_MAX).
Incomplete expression has been replaced with a set_bits macro call.
into a88-113-38-195.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-marvel
BitKeeper/etc/ignore:
auto-union
client/mysqlcheck.c:
Auto merged
client/mysqldump.c:
Auto merged
client/mysqltest.c:
Auto merged
include/Makefile.am:
Auto merged
include/m_string.h:
Auto merged
include/my_base.h:
Auto merged
include/my_dbug.h:
Auto merged
include/my_global.h:
Auto merged
include/my_sys.h:
Auto merged
libmysql/CMakeLists.txt:
Auto merged
libmysql/Makefile.shared:
Auto merged
mysql-test/lib/mtr_report.pl:
Auto merged
mysys/mf_keycache.c:
Auto merged
sql/gen_lex_hash.cc:
Auto merged
sql/ha_partition.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/lex.h:
Auto merged
sql/log.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_plugin.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged
sql/unireg.cc:
Auto merged
storage/myisam/ft_boolean_search.c:
Auto merged
storage/myisam/ft_nlq_search.c:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/mi_check.c:
Auto merged
storage/myisam/mi_open.c:
Auto merged
storage/myisam/myisampack.c:
Auto merged
storage/myisammrg/ha_myisammrg.cc:
Auto merged
client/mysqlslap.c:
Manual merge with main 5.1 tree.
The unsignedness of large integer user variables was not being
properly preserved when feeded to prepared statements. This was
happening because the unsigned flags wasn't being updated when
converting the user variable is converted to a parameter.
The solution is to copy the unsigned flag when converting the
user variable to a parameter and take the unsigned flag into
account when converting the integer to a string.
mysql-test/r/binlog.result:
Add test case result for Bug#33798
mysql-test/r/ps.result:
Add test case result for Bug#33798
mysql-test/t/binlog.test:
Add test case for Bug#33798
mysql-test/t/ps.test:
Add test case for Bug#33798
sql/item.cc:
Take the unsigned flag into account when converting the
user variable.
The out of memory error was thrown when the sort buffer size were too small.
This led to a user confusion.
Now filesort throws the error message about sort buffer being too small.
mysql-test/t/order_by.test:
Added a test case for the bug#31590: Wrong error message on sort buffer being too small.
mysql-test/r/order_by.result:
Added a test case for the bug#31590: Wrong error message on sort buffer being too small.
sql/filesort.cc:
Bug#31590: Wrong error message on sort buffer being too small.
Now filesort throws the error message about sort buffer being too small
instead of out of memory error.
Pre push fix:
added --sorted_result for consistent results
mysql-test/suite/parts/inc/partition_bit.inc:
Bug#34225: suite/parts test failure
added --sorted_result for consistent results
mysql-test/suite/parts/r/partition_bit_innodb.result:
Bug#34225: suite/parts test failure
added --sorted_result for consistent results
mysql-test/suite/parts/r/partition_bit_myisam.result:
Bug#34225: suite/parts test failure
added --sorted_result for consistent results