into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
mysql-test/mysql-test-run.pl:
Auto merged
sql/Makefile.am:
Auto merged
sql/ha_innodb.cc:
Auto merged
ChangeSet@1.2309.1.12, 2006-09-12 15:42:13+02:00, guilhem@gbichot3.local +14 -0
Fixing problems I identified in my auto_increment work pushed in July
(as part of the auto_increment cleanup of WL #3146; ...
The problem is in that show binlog events in indeterministic, row events can be compressed,
so that 2 seconds original delay does not guard from inconsistency.
We syncronize test's current inserted rows counter with system insert delayed thread
per each query.
From another side there is no requirement for binlog to be event per row and then
to verify if binlog has recorded what was recently inserted is better
via reading from it instead of 'show binlog events'.
mysql-test/extra/binlog_tests/binlog_insert_delayed.test:
removing sleeps, syncronizing with system delayed thread per each statement,
note that an insert statement is performed atomically including writing to binlog,
so that concurrent selects are waiting. That's why the wait macro is safe.
mysql-test/r/binlog_row_binlog.result:
new result
mysql-test/include/wait_until_rows_count.inc:
macro implements waiting until a targeted table has a prescribed rows number.
into mysql.com:/users/lthalmann/bkroot/mysql-5.1
client/mysqldump.c:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/sql_show.cc:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
mysql-test/t/ndb_multi.test:
Manual merge
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
BitKeeper/etc/ignore:
auto-union
mysql-test/t/disabled.def:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/Makefile.am:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
into mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
BitKeeper/etc/ignore:
auto-union
mysql-test/r/myisam.result:
Auto merged
mysql-test/t/myisam.test:
Auto merged
sql/sql_select.cc:
Auto merged
into mysql.com:/windows/Linux_space/MySQL/mysql-5.1
mysql-test/t/disabled.def:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/ha_ndbcluster_binlog.cc:
Auto merged
sql/ha_ndbcluster_binlog.h:
Auto merged
sql/sql_show.cc:
Auto merged
mysql-test/lib/mtr_cases.pl:
immediately skip tests that need innodb if mysqld does not support it
mysql-test/mysql-test-run.pl:
Check if innodb is supported
include/mysql_com.h:
Fix for Bug#20208 "Blobs greater than 8K are being truncated to 8K"
sql/filesort.cc:
Added a missing break point.
sql/item.cc:
Made a function of a block of code.
sql/item.h:
Added function string_field_type()
mysql-test/mysql-test-run.pl:
fixed path for udf_example.so when running testsuite on Windows
sql/CMakeLists.txt:
Added missing udf_example
sql/Makefile.am:
Added udf_example files for make dist
sql/udf_example.c:
fix for Windows: Windows doesn't have socket.h and friends
Added replacements for strmov,bzero and memcpy_fixed when compiling standalone.
sql/udf_example.def:
BitKeeper file /home/georg/work/mysql/prod/mysql-5.0-win/sql/udf_example.def
into shellback.(none):/home/msvensson/mysql/mysql-5.1-maint
BitKeeper/etc/ignore:
auto-union
mysql-test/t/disabled.def:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/share/errmsg.txt:
Auto merged
storage/innobase/Makefile.am:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
Fixed udf_example, so tests now can also run udf on win.
sql/udf_example.def:
BitKeeper file /home/georg/work/mysql/prod/mysql-5.1-win/sql/udf_example.def
include/config-win.h:
removed USE_32_BIT_TIME
include/my_time.h:
Fixed size of my_time for Win64 (should be 64bit)
mysql-test/mysql-test-run.pl:
Added windows paths for udf_example
sql/CMakeLists.txt:
Added udf_example.dll
sql/udf_example.c:
Windows doesn't know about socket.h and friends. Use winsock.h instead
Item_substr's results are improperly stored in a temporary table due to
wrongly calculated max_length value for multi-byte charsets if two
arguments specified.
mysql-test/r/ctype_utf8.result:
Fix for bug #20204: "order by" changes the results returned
- test case.
mysql-test/t/ctype_utf8.test:
Fix for bug #20204: "order by" changes the results returned
- test result.
sql/item_strfunc.cc:
Fix for bug #20204: "order by" changes the results returned
- always take into account current mbmaxlen value calculating max_length.
this key does not stop" (version for 5.0 only).
UPDATE statement which WHERE clause used key and which invoked trigger
that modified field in this key worked indefinetely.
This problem occured because in cases when UPDATE statement was
executed in update-on-the-fly mode (in which row is updated right
during evaluation of select for WHERE clause) the new version of
the row became visible to select representing WHERE clause and was
updated again and again.
We already solve this problem for UPDATE statements which does not
invoke triggers by detecting the fact that we are going to update
field in key used for scanning and performing update in two steps,
during the first step we gather information about the rows to be
updated and then doing actual updates. We also do this for
MULTI-UPDATE and in its case we even detect situation when such
fields are updated in triggers (actually we simply assume that
we always update fields used in key if we have before update
trigger).
The fix simply extends this check which is done in check_if_key_used()/
QUICK_SELECT_I::check_if_keys_used() routine/method in such way that
it also detects cases when field used in key is updated in trigger.
As nice side-effect we have more precise and thus more optimal
perfomance-wise check for the MULTI-UPDATE.
Also check_if_key_used()/QUICK_SELECT_I::check_if_keys_used() were
renamed to is_key_used()/QUICK_SELECT_I::is_keys_used() in order to
better reflect that boolean predicate.
Note that this check is implemented in much more elegant way in 5.1
mysql-test/r/trigger.result:
Added test case for bug#20670 "UPDATE using key and invoking trigger that
modifies this key does not stop".
mysql-test/t/trigger.test:
Added test case for bug#20670 "UPDATE using key and invoking trigger that
modifies this key does not stop".
sql/key.cc:
Renamed check_if_key_used() to is_key_used(). Also this routine checks if
key uses field which can be updated by before update trigger defined on the
table. As result we avoid using update-on-the-fly method in cases when trigger
updates part of key which is used by select which filters rows to be updated
and thus avoid infinite updates. By doing such check here we cover both UPDATE
and MULTI-UPDATE cases.
sql/mysql_priv.h:
Renamed check_if_key_used() to is_key_used().
sql/opt_range.cc:
Renamed check_if_key_used()/QUICK_SELECT_I::check_if_keys_used() to
is_key_used()/QUICK_SELECT_I::is_keys_used().
sql/opt_range.h:
Renamed QUICK_SELECT_I::check_if_keys_used() method to is_keys_used(),
also updated comment describing it to reflect its extended semantics
(this change was caused by change in check_if_key_used()/is_key_used()
routine semantics).
sql/sql_trigger.cc:
Introduced Table_triggers_list::is_updated_in_before_update_triggers()
method which is needed for checking if field of subject table can be
changed in before update trigger.
sql/sql_trigger.h:
Table_triggers_list:
Removed has_before_update_triggers() method which is not used any longer.
Added declaration of is_updated_in_before_update_triggers() which is
needed for checking if field of subject table can be changed by before
update trigger.
sql/sql_update.cc:
safe_update_on_fly():
check_if_key_used() routine and check_if_keys_used() method were
renamed to is_key_used()/is_keys_used().
Now cases when trigger updates fields which are part of key used for
filtering rows for update are caught directly in is_key_used().
This also allows to cover both UPDATE and MULTI-UPDATE cases.
into mysql.com:/usr/home/ram/work/mysql-4.1-maint
mysql-test/r/func_time.result:
Auto merged
mysql-test/t/func_time.test:
Auto merged
sql/item_cmpfunc.cc:
Auto merged
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
mysql-test/r/rpl_view.result:
Auto merged
mysql-test/t/rpl_view.test:
Auto merged
sql/sql_yacc.yy:
Auto merged
mysql-test/r/mysqldump.result:
Manual merge, merge trees 5.0->5.1
mysql-test/r/mysqldump.result:
Fix of result file (adding the echo's)
mysql-test/r/rpl_view.result:
Added end of 5.0 echo
mysql-test/t/rpl_view.test:
Added end of 5.0 echo
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
client/mysqldump.c:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
storage/ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
mysql-test/r/mysqldump.result:
Manual merge, merge tree 5.0->5.1
mysql-test/r/rpl_view.result:
Manual merge, merge tree 5.0->5.1
mysql-test/t/mysqldump.test:
Manual merge, merge tree 5.0->5.1
mysql-test/t/rpl_view.test:
Manual merge, merge tree 5.0->5.1
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.1-merge
BitKeeper/etc/ignore:
auto-union
Makefile.am:
Auto merged
client/mysqldump.c:
Auto merged
mysql-test/r/information_schema.result:
Auto merged
mysql-test/t/disabled.def:
Auto merged
sql/CMakeLists.txt:
Auto merged
sql/Makefile.am:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/log.cc:
Auto merged
sql/log_event.cc:
Auto merged
sql/mysql_priv.h:
Auto merged
sql/mysqld.cc:
Auto merged
sql/sp_head.cc:
Auto merged
sql/sql_class.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_insert.cc:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_show.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
sql/table.h:
Auto merged
storage/innobase/handler/ha_innodb.cc:
Auto merged
mysql-test/r/mysqldump.result:
Restoring rpl tree mysqldump test file to main tree test files
mysql-test/r/status.result:
Manual merge
mysql-test/t/mysqldump.test:
Restoring rpl tree mysqldump test file to main tree test files
into mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
ndb/src/kernel/blocks/dbdih/DbdihMain.cpp:
Auto merged
sql/ha_ndbcluster.cc:
Auto merged
sql/sql_class.h:
Auto merged
sql/sql_parse.cc:
Auto merged
sql/sql_yacc.yy:
Auto merged
client/mysqldump.c:
Merge main->rpl
mysql-test/r/mysqldump.result:
Restore of main mysqldump test files in rpl tree (only added echo and one test case for bug 13926)
Printouts not yet added to result file
mysql-test/t/mysqldump.test:
Restore of main mysqldump test files in rpl tree (only added echo and one test case for bug 13926)
into rurik.mysql.com:/home/igor/mysql-5.0-opt
mysql-test/r/ctype_ucs.result:
Auto merged
mysql-test/t/ctype_ucs.test:
Auto merged
sql/field.h:
Auto merged
sql/unireg.cc:
Auto merged