- 20 May, 2008 4 commits
-
-
unknown authored
PREPARE", review fixes: - make the patch follow the specification of WL#4166 and remove the new error that was originally introduced. Now the client never gets an error from reprepare, unless it failed. I.e. even if the statement at hand returns a completely different result set, this is not considered a server error. The C API library, that can not handle this situation, was modified to return a client error. Added additional test coverage. include/errmsg.h: Add a new client side error: now when we automatically reprepare a statement, the new result set may contain a different number of columns. include/mysql_com.h: Add a new server status to be sent to the client if the number of columns in the result set is different. libmysql/errmsg.c: Add a new error message. libmysql/libmysql.c: Make the client library robust against a result set that contains a different number of columns from prepare time. Previously that could never happen, and we simply had an assert. That means in particular that all clients are advised to upgrade with transition to 5.1, if they are using prepared statements C API. Make mysql_stmt_store_result() and mysql_stmt_execute() robust against "broken" statement handles (those that have an error). sql/sql_parse.cc: Clear transient server status flags at start of statement more systematically. sql/share/errmsg.txt: Remove an error that is unused and is not part of any public release. sql/sql_prepare.cc: Instead of returning an error in case the number of result set columns has changed, simply update the client in server status. That will allow modern clients automatically recover from an error. tests/mysql_client_test.c: Add additional coverage to the cases when the number of result set columns changed as a result of reprepare. Cover conversion and truncation of result set columns.
-
unknown authored
into bodhi.(none):/opt/local/work/mysql-5.1-27430 Makefile.am: Auto merged include/my_global.h: Auto merged mysql-test/include/mix1.inc: Auto merged sql/item.cc: Auto merged sql/my_decimal.h: Auto merged sql/mysqld.cc: Auto merged sql/set_var.cc: Auto merged sql/set_var.h: Auto merged sql/sp.cc: Auto merged sql/sp_head.cc: 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_table.cc: Auto merged sql/sql_update.cc: Auto merged sql/share/errmsg.txt: Auto merged sql/sql_yacc.yy: Auto merged libmysqld/CMakeLists.txt: Manual merge. libmysqld/lib_sql.cc: Manual merge. mysql-test/t/disabled.def: Manual merge.
-
unknown authored
into bodhi.(none):/opt/local/work/mysql-5.1-27430 sql/sql_base.cc: Manual merge.
-
unknown authored
PREPARE": rename members, methods, classes to follow the spec (a code review request) sql/mysql_priv.h: enum_metadata_type -> enum_table_ref_type sql/sp_head.cc: Metadata_version_observer -> Reprepare_observer sql/sql_base.cc: metadata -> table_ref sql/sql_class.cc: Replace an abstract interface with a concrete implementation. sql/sql_class.h: enum_metadata_type -> enum_table_ref_type sql/sql_prepare.cc: Move implementation of Execute_observer to sql_class.cc and rename the class to Reprepare_observer. Use getters instead of direct access to the members. sql/table.h: metadata -> table_ref
-
- 19 May, 2008 3 commits
-
-
unknown authored
Add test target to the makefile that will cause all statements to be re-prepared before execution. Makefile.am: Add test-reprepare target. In combination with the --ps-protocol this will cause that every statement in the test suite be re-prepared before execution. sql/sql_base.cc: Re-prepare each statement before execution.
-
unknown authored
into mysql.com:/d2/hf/mysql-5.1-bugteam
-
unknown authored
rpl_innodb_bug28430 disabled mysql-test/suite/rpl/t/disabled.def: rpl_innodb_bug28430 disabled
-
- 18 May, 2008 5 commits
-
-
unknown authored
into host.loc:/work/bk/5.1-bugteam sql/sql_update.cc: Auto merged
-
unknown authored
into host.loc:/work/bk/5.0-bugteam
-
unknown authored
first row or fails with an error: ERROR 1022 (23000): Can't write; duplicate key in table '' The server uses intermediate temporary table to store updated row data. The first column of this table contains rowid. Current server implementation doesn't reset NULL flag of that column even if the server fills a column with rowid. To keep each rowid unique, there is an unique index. An insertion into an unique index takes into account NULL flag of key value and ignores real data if NULL flag is set. So, insertion of actually different rowids may lead to two kind of problems. Visible effect of each of these problems depends on an initial engine type of temporary table: 1. If multiupdate initially creates temporary table as a MyISAM table (a table contains blob columns, and the create_tmp_table function assumes, that this table is large), it inserts only one single row and updates only rows with one corresponding rowid. Other rows are silently ignored. 2. If multiupdate initially creates MEMORY temporary table, fills it with data and reaches size limit for MEMORY tables (max_heap_table_size), multiupdate converts MEMORY table into MyISAM table and fails with an error: ERROR 1022 (23000): Can't write; duplicate key in table '' Multiupdate has been fixed to update the NULL flag of temporary table rowid columns. mysql-test/r/multi_update_tiny_hash.result: Added test case for bug#36676. mysql-test/t/multi_update_tiny_hash-master.opt: Added test case for bug#36676. mysql-test/t/multi_update_tiny_hash.test: Added test case for bug#36676. sql/sql_update.cc: Fixed bug#36676: multiupdate using LEFT JOIN updates only first row or fails with an error: ERROR 1022 (23000): Can't write; duplicate key in table '' The multi_update::send_data method has been modified to reset null bits of fields containing rowids.
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/merge-5.1-bugteam sql/handler.cc: Auto merged configure.in: merge 5.0-bugteam to 5.1-bugteam
-
unknown authored
(Bug#27430) sql/sql_prepare.cc: Fix a simple coding mistake.
-
- 17 May, 2008 2 commits
-
-
unknown authored
"Crash in subquery code when in PS and table DDL changed after PREPARE" include/my_sys.h: Add two new flags for my_error(). These flags help parameterize behavoiur of my_message_sql() sql/item.cc: Update comments. Fix a typo in Item_param::set_param_type_and_swap_value() sql/mysqld.cc: Implement two additional flags for my_error(): - if ME_NO_SP_HANDLER is specified, ignore stored procedure continue/ exit handlers - if ME_NO_WARNING_FOR_ERROR is specified, do not push warning sql/sql_base.cc: Update comments. Rename a few methods. sql/sql_class.h: Update and improve comments. sql/sql_prepare.cc: Update comments. Style changes. sql/table.h: Update comments. Style changes. Rename a few methods. tests/mysql_client_test.c: Zero the bind array, to follow C API requirements.
-
unknown authored
temporary variables of 'long' types were used to store ulong values, that causes init_key_cache to receive distorted parameters sql/handler.cc: Bug #36705 key_buffer_size of >= 2G allocates all availabel virtual memory on 64-bit wondo. types of temporary variables changed to match init_key_cache() parameters
-
- 16 May, 2008 24 commits
-
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-bugteam
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-bugteam
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-bugteam
-
unknown authored
updated the testcase for bug 36011 mysql-test/r/subselect.result: updated the testcase for bug 36011
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/work/B36011-5.1-bugteam sql/sql_select.cc: Auto merged mysql-test/r/subselect.result: merge of bug 36011 to 5.1-bugteam mysql-test/t/subselect.test: merge of bug 36011 to 5.1-bugteam
-
unknown authored
into magare.gmz:/home/kgeorge/mysql/autopush/B36011-take2-5.0-bugteam
-
unknown authored
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/bug36570/my51-bug36570 mysql-test/suite/rpl/t/rpl_sp.test: Auto merged mysql-test/suite/rpl/r/rpl_sp.result: Use local. Needs re-recording.
-
unknown authored
mysql-test/r/ctype_cp932_binlog_stm.result: New offsets because of quote marks. mysql-test/r/mysqlbinlog.result: Re-add variables removed in merge at file-vers 1.47. mysql-test/suite/binlog/r/binlog_database.result: create_string() output changes the quoting and inserts newlines. mysql-test/suite/rpl/r/rpl_innodb_mixed_dml.result: Change in quoting. mysql-test/suite/rpl/r/rpl_sp.result: Adds quotes and newlines in creation of routines in binlog.
-
unknown authored
master also, so that we can visually see the slave is the same. mysql-test/r/rpl_sp.result: SHOW CREATE on master also. mysql-test/t/rpl_sp.test: SHOW CREATE on master also.
-
unknown authored
into mats-laptop.(none):/home/bk/b36197-mysql-5.1-bugteam
-
unknown authored
mysql-test/extra/rpl_tests/rpl_insert_id.test: Moving save and restore of @@global.concurrent_insert into the same session thread. mysql-test/suite/rpl/r/rpl_insert_id.result: Result file change. mysql-test/suite/rpl/t/rpl_insert_id.test: ***MISSING TEXT***
-
unknown authored
with dependent subqueries An IN subquery is executed on EXPLAIN when it's not correlated. If the subquery required a temporary table for its execution not all the internal structures were restored from pointing to the items of the temporary table to point back to the items of the subquery. Fixed by restoring the ref array when a temp tables were used in executing the IN subquery during EXPLAIN EXTENDED. mysql-test/r/subselect.result: Bug #36011: test case mysql-test/t/subselect.test: Bug #36011: test case sql/sql_select.cc: Bug #36011: restore the ref array after execution when there were temp tables.
-
unknown authored
into mysql.com:/Users/davi/mysql/mysql-5.0-bugteam
-
unknown authored
into mysql.com:/Users/davi/mysql/mysql-5.1-bugteam
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/bug36570/my51-bug36570 mysql-test/suite/rpl/t/rpl_sp.test: Auto merged mysql-test/suite/rpl/r/rpl_sp.result: manual merge.
-
unknown authored
mysql-test/r/rpl_sp.result: Add binlog results to show that they're written correctly. mysql-test/t/rpl_sp.test: Add binlog results to show that they're written correctly.
-
unknown authored
into mats-laptop.(none):/home/bkroot/mysql-5.1-bugteam
-
unknown authored
into pcrews-mac-local.local:/Users/pcrews/usr/local/bin/data0/build_work/test_fix/mysql-5.1-bugteam_35744
-
unknown authored
into mats-laptop.(none):/home/bkroot/mysql-5.1-bugteam
-
unknown authored
-
unknown authored
into mats-laptop.(none):/home/bkroot/mysql-5.1-bugteam
-
unknown authored
into host.loc:/work/bk/5.0-bugteam
-
unknown authored
into host.loc:/work/bk/5.1-bugteam sql/item_strfunc.cc: Auto merged
-
- 15 May, 2008 2 commits
-
-
unknown authored
into zippy.cornsilk.net:/home/cmiller/work/mysql/bug36570/my51-bug36570 BitKeeper/deleted/.del-binlog_innodb.result: Auto merged sql/sp_head.cc: Auto merged mysql-test/suite/binlog/r/binlog_stm_ctype_ucs.result: need to re-record. mysql-test/suite/rpl/r/rpl_sp.result: need to re-record. mysql-test/r/mysqlbinlog.result: manual merge. mysql-test/suite/rpl/t/rpl_sp.test: manual merge. sql/sp.cc: manual merge. sql/sp_head.h: manual merge.
-
unknown authored
into pcrews-mac-local.local:/Users/pcrews/usr/local/bin/data0/build_work/test_fix/mysql-5.1-bugteam_35744
-