into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-marvel
mysys/my_pread.c:
Auto merged
mysys/thr_alarm.c:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_delete.cc:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_load.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
storage/heap/hp_write.c:
Auto merged
mysql-test/t/mysqlbinlog2.test:
SCCS merged
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
sql/event_db_repository.cc:
Auto merged
sql/item.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
client/mysqldump.c:
fixed typo
include/mysql_com.h:
added new constants SYSTEM_CHARSET_MBMAXLEN, NAME_CHAR_LEN, USERNAME_CHAR_LENGTH
increased NAME_LEN, USERNAME_LENGTH
mysql-test/r/create.result:
result fix
mysql-test/r/grant.result:
result fix
mysql-test/r/mysql.result:
result fix
mysql-test/r/sp.result:
result fix
mysql-test/t/create.test:
test case
mysql-test/t/grant.test:
test case
sql/events.cc:
NAME_LEN is replaced with NAME_CHAR_LEN
sql/item_strfunc.h:
fixed calculation of max_length
sql/mysql_priv.h:
check_string_length function is replaced with check_string_byte_length
added new function check_string_char_length
sql/sp.cc:
NAME_LEN is replaced with NAME_CHAR_LEN
sql/sp_head.cc:
NAME_LEN is replaced with NAME_CHAR_LEN
sql/sp_head.h:
changed parameter of 'check_routine_name' function
sql/sql_class.cc:
NAME_LEN is replaced with NAME_CHAR_LEN
sql/share/errmsg.txt:
increased argument lengths according to new constants
sql/sql_parse.cc:
removed unnecessary checks
added function 'check_string_char_length'
sql/sql_plugin.cc:
check that name is not longer than NAME_CHAR_LEN symbols
sql/sql_show.cc:
NAME_LEN is replaced with NAME_CHAR_LEN
sql/sql_table.cc:
check that key name is not longer than NAME_LEN symbols
sql/sql_udf.cc:
check that udf name is not longer than NAME_CHAR_LEN symbols
sql/sql_yacc.yy:
check that user name is not longer than USERNAME_CHAR_LENGTH symbols
sql/table.cc:
check that db or table or column name is not longer than NAME_LEN symbols
storage/innobase/handler/ha_innodb.cc:
removed unnecessary multiplication
tests/mysql_client_test.c:
NAME_LEN is replaced with NAME_CHAR_LEN
"Plugin Server Variables"
Post review cleanups.
sql/mysql_priv.h:
WL2936
move where sql_plugin.h is included earlier so that plugin_ref
declaration is available to sql/structs.h
sql/sql_class.cc:
WL2936 cleanup
remove lock_locals argument for plugin_thdvar_init()
sql/sql_connect.cc:
WL2936 cleanup
redundant call to plugin_thdvar_init()
sql/sql_plugin.cc:
WL2936 cleanup
remove lock_locals argument for plugin_thdvar_init()
renamed st_bookmark member from 'name' to 'key'.
split cleanup_variables() and remove free_memory argument.
sql/sql_plugin.h:
WL2936 cleanup
remove lock_locals argument for plugin_thdvar_init()
sql/structs.h:
WL2936 cleanup
remove ugly conditional compilation, use plugin_ref
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.1-marvel
client/mysql.cc:
Auto merged
client/mysqlbinlog.cc:
Auto merged
BitKeeper/deleted/.del-my_lread.c:
Auto merged
BitKeeper/deleted/.del-my_lwrite.c:
Auto merged
BitKeeper/deleted/.del-raid.cc~488f5fa6538394e1:
Auto merged
BitKeeper/deleted/.del-raid.h~2d2503a66b128ac6:
Auto merged
client/mysqldump.c:
Auto merged
extra/perror.c:
Auto merged
include/my_sys.h:
Auto merged
libmysql/libmysql.c:
Auto merged
libmysqld/libmysqld.c:
Auto merged
mysql-test/r/mysqlbinlog2.result:
Auto merged
mysql-test/r/sp-security.result:
Auto merged
mysql-test/r/view_grant.result:
Auto merged
mysql-test/t/grant.test:
Auto merged
mysql-test/t/sp-security.test:
Auto merged
mysql-test/t/sp.test:
Auto merged
mysql-test/t/sp_trans.test:
Auto merged
mysql-test/t/view_grant.test:
Auto merged
mysys/default.c:
Auto merged
mysys/hash.c:
Auto merged
mysys/mf_iocache.c:
Auto merged
mysys/mf_keycache.c:
Auto merged
mysys/my_alloc.c:
Auto merged
mysys/my_dup.c:
Auto merged
mysys/my_getwd.c:
Auto merged
mysys/my_handler.c:
Auto merged
mysys/my_lib.c:
Auto merged
mysys/my_malloc.c:
Auto merged
mysys/my_pread.c:
Auto merged
mysys/my_read.c:
Auto merged
mysys/my_seek.c:
Auto merged
mysys/my_static.c:
Auto merged
mysys/safemalloc.c:
Auto merged
mysys/thr_alarm.c:
Auto merged
mysys/typelib.c:
Auto merged
sql/handler.cc:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/item_func.h:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/net_serv.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_acl.cc:
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_load.cc:
Auto merged
sql/sql_prepare.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/sql_table.cc:
Auto merged
sql/sql_view.cc:
Auto merged
sql/strfunc.cc:
Auto merged
sql/table.cc:
Auto merged
sql/tztime.cc:
Auto merged
sql/unireg.cc:
Auto merged
sql-common/client.c:
Auto merged
sql-common/my_time.c:
Auto merged
storage/archive/ha_archive.cc:
Auto merged
storage/heap/_check.c:
Auto merged
storage/heap/hp_delete.c:
Auto merged
storage/heap/hp_hash.c:
Auto merged
storage/heap/hp_open.c:
Auto merged
storage/heap/hp_rkey.c:
Auto merged
storage/heap/hp_rrnd.c:
Auto merged
storage/heap/hp_write.c:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/myisam/mi_close.c:
Auto merged
storage/myisam/mi_delete.c:
Auto merged
storage/myisam/mi_dynrec.c:
Auto merged
storage/myisam/mi_keycache.c:
Auto merged
storage/myisam/mi_page.c:
Auto merged
storage/myisam/mi_statrec.c:
Auto merged
storage/myisam/myisamchk.c:
Auto merged
storage/myisammrg/myrg_extra.c:
Auto merged
storage/ndb/src/mgmclient/CommandInterpreter.cpp:
Auto merged
tests/mysql_client_test.c:
Auto merged
mysql-test/r/grant.result:
Merged from 5.0
mysql-test/r/sp.result:
Merged from 5.0
mysql-test/r/sp_trans.result:
Merged from 5.0
mysql-test/t/mysqlbinlog2.test:
Merged from 5.0
mysys/thr_lock.c:
Merged from 5.0
sql/ha_ndbcluster.cc:
Merged from 5.0
sql/log.cc:
Merged from 5.0
sql/mysql_priv.h:
Merged from 5.0
sql/mysqld.cc:
Merged from 5.0
sql/set_var.cc:
Merged from 5.0
sql/sql_db.cc:
Merged from 5.0
sql/sql_insert.cc:
Merged from 5.0
sql/sql_parse.cc:
Merged from 5.0
sql/sql_show.cc:
Merged from 5.0
sql/sql_update.cc:
Merged from 5.0
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.1-merge
client/mysqlbinlog.cc:
Auto merged
mysql-test/extra/binlog_tests/binlog.test:
Auto merged
mysql-test/r/binlog_row_binlog.result:
Auto merged
mysql-test/r/binlog_stm_binlog.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/field.cc:
Auto merged
sql/field.h:
Auto merged
sql/lock.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/slave.cc:
Auto merged
sql/slave.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_select.cc:
Auto merged
sql/table.h:
Auto merged
mysql-test/r/rpl_ndb_log.result:
Manual merge main->rpl 5.1
mysql-test/r/rpl_truncate_7ndb.result:
Manual merge main->rpl 5.1
sql/log.cc:
Manual merge main->rpl 5.1
sql/log_event.cc:
Manual merge main->rpl 5.1
into mysql.com:/nfsdisk1/lars/MERGE/mysql-5.0-merge
sql/mysqld.cc:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_select.cc:
Auto merged
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0-marvel
BitKeeper/deleted/.del-_dynrec.c~48dd758f5a5450df:
Auto merged
BitKeeper/deleted/.del-_page.c~148b1a613d052ee8:
Auto merged
BitKeeper/deleted/.del-_search.c~f509292aa1ff18ff:
Auto merged
BitKeeper/deleted/.del-close.c~fd62629496ee5bcc:
Auto merged
BitKeeper/deleted/.del-delete.c~65ee8daaa75a14b6:
Auto merged
BitKeeper/deleted/.del-my_tempnam.c~a8562f15dad3012f:
Auto merged
BitKeeper/deleted/.del-open.c~95b3b75042fae00a:
Auto merged
BitKeeper/deleted/.del-rkey.c~cc54c6498352f999:
Auto merged
client/mysql.cc:
Auto merged
client/mysqldump.c:
Auto merged
include/my_sys.h:
Auto merged
include/raid.h:
Auto merged
myisam/mi_close.c:
Auto merged
BitKeeper/deleted/.del-sort.c~e2e56b5a37ce86f4:
Auto merged
BitKeeper/deleted/.del-write.c~8f1918b1f6770e54:
Auto merged
myisam/mi_page.c:
Auto merged
myisam/myisamchk.c:
Auto merged
mysys/default.c:
Auto merged
mysys/mf_keycaches.c:
Auto merged
mysys/my_dup.c:
Auto merged
mysys/my_fopen.c:
Auto merged
mysys/my_handler.c:
Auto merged
mysys/my_malloc.c:
Auto merged
mysys/my_static.c:
Auto merged
mysys/my_write.c:
Auto merged
mysys/safemalloc.c:
Auto merged
mysys/tree.c:
Auto merged
mysys/typelib.c:
Auto merged
regex/regexec.c:
Auto merged
sql/item.cc:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
sql/opt_range.cc:
Auto merged
sql/sql_repl.cc:
Auto merged
sql-common/my_time.c:
Auto merged
BitKeeper/deleted/.del-compiler_warnings.supp:
Delete: support-files/compiler_warnings.supp
client/mysqlbinlog.cc:
Manual merge from 4.1.
client/sql_string.cc:
Manual merge from 4.1.
extra/perror.c:
Manual merge from 4.1.
heap/_check.c:
Manual merge from 4.1.
heap/hp_delete.c:
Manual merge from 4.1.
heap/hp_hash.c:
Manual merge from 4.1.
heap/hp_open.c:
Manual merge from 4.1.
heap/hp_rkey.c:
Manual merge from 4.1.
heap/hp_rrnd.c:
Manual merge from 4.1.
heap/hp_write.c:
Manual merge from 4.1.
libmysql/libmysql.c:
Manual merge from 4.1.
libmysqld/libmysqld.c:
Manual merge from 4.1.
myisam/mi_delete.c:
Manual merge from 4.1.
myisam/mi_dynrec.c:
Manual merge from 4.1.
myisam/mi_keycache.c:
Manual merge from 4.1.
myisam/mi_statrec.c:
Manual merge from 4.1.
myisammrg/myrg_extra.c:
Manual merge from 4.1.
mysys/hash.c:
Manual merge from 4.1.
mysys/list.c:
Manual merge from 4.1.
mysys/mf_iocache.c:
Manual merge from 4.1.
mysys/mf_keycache.c:
Manual merge from 4.1.
mysys/my_alloc.c:
Manual merge from 4.1.
mysys/my_fstream.c:
Manual merge from 4.1.
mysys/my_getwd.c:
Manual merge from 4.1.
mysys/my_lib.c:
Manual merge from 4.1.
mysys/my_lread.c:
Manual merge from 4.1.
mysys/my_lwrite.c:
Manual merge from 4.1.
mysys/my_pread.c:
Manual merge from 4.1.
mysys/my_read.c:
Manual merge from 4.1.
mysys/my_realloc.c:
Manual merge from 4.1.
mysys/my_seek.c:
Manual merge from 4.1.
mysys/raid.cc:
Manual merge from 4.1.
mysys/thr_lock.c:
Manual merge from 4.1.
ndb/src/mgmclient/CommandInterpreter.cpp:
Manual merge from 4.1.
sql/ha_archive.cc:
Manual merge from 4.1.
sql/ha_innodb.cc:
Manual merge from 4.1.
sql/ha_ndbcluster.cc:
Manual merge from 4.1.
sql/item_subselect.cc:
Manual merge from 4.1.
sql/log.cc:
Manual merge from 4.1.
sql/log_event.cc:
Manual merge from 4.1.
sql/mysqld.cc:
Manual merge from 4.1.
sql/net_serv.cc:
Manual merge from 4.1.
sql/slave.cc:
Manual merge from 4.1.
sql/sql_cache.cc:
Manual merge from 4.1.
sql/sql_class.cc:
Manual merge from 4.1.
sql/sql_delete.cc:
Manual merge from 4.1.
sql/sql_parse.cc:
Manual merge from 4.1.
sql/sql_prepare.cc:
Manual merge from 4.1.
sql-common/client.c:
Manual merge from 4.1.
sql/sql_select.cc:
Manual merge from 4.1.
sql/sql_table.cc:
Manual merge from 4.1.
sql/sql_update.cc:
Manual merge from 4.1.
sql/strfunc.cc:
Manual merge from 4.1.
sql/table.cc:
Manual merge from 4.1.
sql/tztime.cc:
Manual merge from 4.1.
sql/unireg.cc:
Manual merge from 4.1.
tests/mysql_client_test.c:
Manual merge from 4.1.
"Server variables for plugins"
Post review fixes.
client/mysql.cc:
wl2936 "Plugin server variables" post review fixes
compile fix. app_type is now a void* and it isn't actually used here.
include/my_getopt.h:
wl2936 "Plugin server variables" post review fixes
make app_type into a void*. This also required changes to
client/mysql.cc and storage/ndb/src/mgmsrv/InitConfigFileParser.cpp
in order to compile.
include/my_global.h:
wl2936 "Plugin server variables" post-review fixes
declare compile_time_assert() macro.
(provided by serg)
include/mysql/plugin.h:
wl2936 "Plugin server variables" post review fixes
Add comments
mysys/array.c:
wl2936 "Plugin server variables" post review fixes
mysys/typelib.c:
wl2936 "Plugin server variables" post review fixes
find_typeset() should not alter string
sql/set_var.cc:
wl2936 "Plugin server variables" post review fixes
remove unnecessary code.
sql/sql_class.cc:
wl2936 "Plugin server variables" post review fixes
explicitly declare export style for functions.
sql/sql_lex.cc:
wl2936 "Plugin server variables" post review fixes
enforce that lex::plugins_static_buffer is declared immediately after
lex::plugins.
sql/sql_plugin.cc:
wl2936 "Plugin Server variables" post review fixes
sys_var_pluginvar does not need st_plugin_int at construction.
remove debug code which was accidentially committed.
add comments.
fix mutex lock order.
sql/sql_plugin.h:
wl2936 "Plugin server variables" post review fixes
add comment and macro to compare plugin_refs
sql/table.cc:
wl2936 "plugin server variables" post review fixes
remove unneccessary unlock and variable.
add checks for legacy type validity
storage/ndb/src/mgmsrv/InitConfigFileParser.cpp:
wl2936 "plugin server variables" post review fixes
fix compile failure now that my_option::app_type is a void*
mysys/default.c:
Fixed bug.
ndb/src/mgmclient/CommandInterpreter.cpp:
Added parenthesis around the expression.
sql/mysqld.cc:
Fixed compiler warnings.
Added a missing component in options struct (bug).
sql-common/my_time.c:
Removed garbage.
sql/sql_table.cc:
A possible use of a variable uninitialized.
support-files/compiler_warnings.supp:
BitKeeper file /home/my/bk/mysql-4.1-main/support-files/compiler_warnings.supp
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/51
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/help.result:
Auto merged
mysql-test/t/help.test:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
into mysql_cab_desk.:C:/source/c++/mysql-5.1_BUG_25543
mysql-test/r/rpl_misc_functions.result:
Auto merged
mysql-test/t/rpl_misc_functions.test:
Auto merged
sql/sql_class.cc:
Manual merge of conflicts during push of BUG#25543.
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/mar20/maint/51
sql/sql_class.cc:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dblqh/DblqhMain.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupExecQuery.cpp:
Auto merged
storage/ndb/src/kernel/blocks/dbtup/DbtupGen.cpp:
Auto merged
storage/ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
Auto merged
storage/ndb/src/mgmsrv/ConfigInfo.cpp:
Auto merged
storage/ndb/test/ndbapi/testNodeRestart.cpp:
Auto merged
storage/ndb/test/run-test/daily-basic-tests.txt:
Auto merged
storage/ndb/test/src/UtilTransactions.cpp:
Auto merged
- Problem: data separators were copied to a fixed-size buffer
on the stack; memcpy was used, without bounds checking; a
server crash could result if long FIELDS ENCLOSED BY, etc.,
was given
- Fix: write the separators directly, instead of copying to
a buffer first (in select_export::send_data())
sql/sql_class.cc:
In select_export::send_data(), write data separators
directly, instead of copying into a fixed-size memory
buffer before writing. This avoids a buffer overflow
when very large separators are specified.
- Problem: data separators were copied to a fixed-size buffer
on the stack; memcpy was used, without bounds checking; a
server crash could result if long FIELDS ENCLOSED BY, etc.,
was given
- Fix: write the separators directly, instead of copying to
a buffer first (in select_export::send_data())
Field_bit::pack() and Field_bit::unpack() does not work correctly
Fixing code for Field_bit packing and unpacking to work with arbitrary
pointers instead of requiring Field::ptr
sql/field.cc:
Fixing Field_bit::pack() and Field_bit::unpack() so that they accept
an arbitrary pointer to pack/unpack to/from.
sql/sql_class.cc:
Removing unneeded move_field_offset() nefore packing field.
Field_bit::pack() and Field_bit::unpack() does not work correctly
Fixing code for Field_bit packing and unpacking to work with arbitrary
pointers instead of requiring Field::ptr
into romeo.(none):/home/bk/b22583-mysql-5.1-new-rpl
mysql-test/extra/rpl_tests/rpl_log.test:
Auto merged
mysql-test/r/rpl_ndb_log.result:
Auto merged
mysql-test/r/rpl_row_log.result:
Auto merged
mysql-test/r/rpl_row_log_innodb.result:
Auto merged
mysql-test/r/rpl_stm_log.result:
Auto merged
mysql-test/r/rpl_switch_stm_row_mixed.result:
Auto merged
mysql-test/t/mysqlbinlog.test:
Auto merged
mysql-test/t/rpl_switch_stm_row_mixed.test:
Auto merged
sql/log_event.cc:
Auto merged
sql/sql_class.cc:
Auto merged
mysql-test/r/rpl_row_basic_11bugs.result:
Manual merge.
mysql-test/t/rpl_row_basic_11bugs.test:
Manual merge.
into bodhi.local:/opt/local/work/mysql-5.1-runtime
include/my_global.h:
Auto merged
mysql-test/mysql-test-run.pl:
Auto merged
mysql-test/r/events_scheduling.result:
Auto merged
BitKeeper/deleted/.del-init_db.sql~a77d572c39d5a1f8:
Auto merged
BitKeeper/deleted/.del-mysql_create_system_tables.sh:
Auto merged
mysql-test/r/query_cache.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/events_scheduling.test:
Auto merged
mysql-test/t/grant_cache.test:
Auto merged
mysql-test/t/query_cache.test:
Auto merged
mysql-test/t/view.test:
Auto merged
scripts/mysql_system_tables_fix.sql:
Auto merged
sql/event_db_repository.cc:
Auto merged
sql/event_queue.cc:
Auto merged
sql/field.cc:
Auto merged
sql/handler.cc:
Auto merged
sql/handler.h:
Auto merged
sql/item.cc:
Auto merged
sql/item.h:
Auto merged
sql/item_func.cc:
Auto merged
sql/item_subselect.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/set_var.cc:
Auto merged
sql/sp.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_help.cc:
Auto merged
sql/sql_lex.cc:
Auto merged
sql/sql_lex.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_prepare.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/share/errmsg.txt:
Auto merged
sql/tztime.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
storage/myisam/ha_myisam.cc:
Auto merged
storage/myisam/ha_myisam.h:
Auto merged
mysql-test/r/skip_grants.result:
Manualmerge.
mysql-test/r/sp.result:
Manualmerge.
mysql-test/t/skip_grants.test:
Manualmerge.
mysql-test/t/sp.test:
Manualmerge.
sql/event_data_objects.cc:
Manualmerge.
When rand() is called multiple times inside a stored procedure, the server does
not binlog the correct random seed values.
This patch corrects the problem by resetting rand_used= 0 in
THD::cleanup_after_query() allowing the system to save the random seeds if needed
for each command in a stored procedure body.
However, rand_used is not reset if executing in a stored function or trigger
because these operations are binlogged by call and thus only the calling statement
need detect the call to rand() made by its substatements. These substatements must
not set rand_used to 0 because it would remove the detection of rand() by the
calling statement.
mysql-test/r/rpl_misc_functions.result:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The result file was modified to include the correct processing of the new
additions to the test. The results from execution are written to files on
both the master and the slave. The files are compared to ensure the values
from rand() generated on the master are correctly generated on the slave.
mysql-test/t/rpl_misc_functions.test:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The test was modified to include a test of a stored procedure that calls
the rand() function multiple times.
The results from execution are written to files on both the master and the
slave. The files are compared to ensure the values from rand() generated
on the master are correctly generated on the slave.
sql/sql_class.cc:
Bug #25543 Replication of wrong values if using rand() in stored procedure
The code was modified to reset rand_used so that detection of calls to rand()
will save random seeds if needed by the slave.
When rand() is called multiple times inside a stored procedure, the server does
not binlog the correct random seed values.
This patch corrects the problem by resetting rand_used= 0 in
THD::cleanup_after_query() allowing the system to save the random seeds if needed
for each command in a stored procedure body.
However, rand_used is not reset if executing in a stored function or trigger
because these operations are binlogged by call and thus only the calling statement
need detect the call to rand() made by its substatements. These substatements must
not set rand_used to 0 because it would remove the detection of rand() by the
calling statement.
libmysqld/lib_sql.cc:
Auto merged
sql/protocol.cc:
Auto merged
sql/protocol.h:
Auto merged
sql/set_var.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_prepare.cc:
merge
into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/mrg0306/51
mysql-test/r/trigger.result:
Auto merged
mysql-test/r/view.result:
Auto merged
mysql-test/t/trigger.test:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sp_head.h:
Auto merged
sql/sql_base.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_trigger.cc:
Auto merged
sql/sql_update.cc:
Auto merged
sql/table.cc:
Auto merged
sql/table.h:
Auto merged