- 26 May, 2005 2 commits
- 25 May, 2005 11 commits
-
-
unknown authored
into mysql.com:/Users/kent/mysql/bk/mysql-5.0 myisammrg/myrg_open.c: Auto merged mysys/my_getwd.c: Auto merged sql/unireg.cc: Auto merged
-
unknown authored
fix from the main 5.0 tree. (Bug #10687) myisammrg/myrg_open.c: Call fn_format() if file has a path. mysys/my_getwd.c: Check for '/' even if it is not FN_LIBCHAR in has_path()
-
unknown authored
sql/item.cc: Move function to make it easier to debug sql/item.h: Move function to make them easier to debug
-
unknown authored
sql/sql_lex.h: Auto merged sql/sql_yacc.yy: Auto merged
-
unknown authored
into mysql.com:/data0/mysqldev/tomas/mysql-5.0-build
-
unknown authored
-
unknown authored
into mysql.com:/home/my/mysql-5.0 sql/sql_base.cc: Auto merged sql/sql_insert.cc: Auto merged
-
unknown authored
We will however give a warning when opening such a table that users should use ALTER TABLE ... FORCE to fix the table. In future release we will fix that REPAIR TABLE will be able to handle this case sql/sql_lex.h: Support for ALTER TABLE ... FORCE sql/sql_table.cc: CHECK TABLE now gives a note if table->s->crashed was set sql/sql_yacc.yy: Support for ALTER TABLE ... FORCE sql/table.cc: Fix that we can read tables with the 'older' decimal format used in 5.0.3 & 5.0.4 (Now we store display length in the .frm table while we previously stored precision) sql/table.h: Store in TABLE_SHARE version number of MySQL where table was created (or checked)
-
unknown authored
Added ASSERT() to detect wrongly packed fields sql/field.h: Fixed comments to right format sql/opt_range.cc: Merged code sql/sql_base.cc: Fixed indentation sql/sql_insert.cc: Fixed comments to right format sql/sql_select.cc: Simplify code sql/unireg.cc: Simply code for calculating key_buff_length Added ASSERT() to detect wrongly packed fields
-
unknown authored
Merge with latest yaSSL, fix compilation error for SSE2 processors. extra/yassl/include/yassl_int.hpp: Merge with latest yaSSL. extra/yassl/src/log.cpp: Merge with latest yaSSL. extra/yassl/src/yassl_int.cpp: Merge with latest yaSSL. extra/yassl/taocrypt/include/integer.hpp: Merge with latest yaSSL. extra/yassl/taocrypt/src/integer.cpp: Fix compilation error for SSE2 processors.
-
unknown authored
innobase_shutdown_for_mysql(): Do very fast shutdown only if srv_fast_shutdown==2, not if srv_fast_shutdown!=0 (Bug #9673) innobase/srv/srv0start.c: innobase_shutdown_for_mysql(): Do very fast shutdown only if srv_fast_shutdown==2, not if srv_fast_shutdown!=0 (Bug #9673)
-
- 24 May, 2005 16 commits
-
-
unknown authored
into xiphis.org:/usr/home/antony/work2/p3-bug7241.6
-
unknown authored
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-bg5860
-
unknown authored
into mysql.com:/home/svoj/devel/mysql/yassl-mysql-5.0
-
unknown authored
-
unknown authored
sql/item.cc: Auto merged sql/item.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_base.cc: Auto merged sql/sql_delete.cc: Auto merged sql/sql_insert.cc: Manual merge sql/sql_update.cc: Manual merge
-
unknown authored
#5860 "Multi-table UPDATE does not activate update triggers" #6812 "Triggers are not activated for INSERT ... SELECT" #8755 "Trigger is not activated by LOAD DATA". This patch also implements proper handling of triggers for special forms of insert like REPLACE or INSERT ... ON DUPLICATE KEY UPDATE. Also now we don't call after trigger in case when we have failed to inserted/update or delete row. Trigger failure should stop statement execution. I have not properly tested handling of errors which happen inside of triggers in this patch, since it is simplier to do this once we will be able to access tables from triggers. mysql-test/r/trigger.result: Added tests for triggers behavior for various non-standard forms of INSERT such as REPLACE and INSERT ... ON DUPLICATE KEY UPDATE. Also added tests for bugs #5860 "Multi-table UPDATE does not activate update triggers", #6812 "Triggers are not activated for INSERT ... SELECT" and #8755 "Trigger is not activated by LOAD DATA". mysql-test/t/trigger.test: Added tests for triggers behavior for various non-standard forms of INSERT such as REPLACE and INSERT ... ON DUPLICATE KEY UPDATE. Also added tests for bugs #5860 "Multi-table UPDATE does not activate update triggers", #6812 "Triggers are not activated for INSERT ... SELECT" and #8755 "Trigger is not activated by LOAD DATA". sql/item.cc: Since it turned out that at trigger loading time we can't say in which buffer TABLE::record[0] or record[1] old version of row will be stored we have to change our approach to binding of Item_trigger_field to Field instances. Now after trigger parsing (in Item_trigger_field::setup_table()) we only find index of proper Field in the TABLE::field array. Then before trigger is invoked we set Table_triggers_list::old_field/new_field so they point to arrays holding Field instances bound to buffers with proper row versions. And as last step in Item_trigger_field::fix_fields() we get pointer to Field from those arrays using saved field index. Item_trigger_field::setup_field()/fix_fields() were changed to implement this approach. sql/item.h: Since it turned out that at trigger loading time we can't say in which buffer TABLE::record[0] or record[1] old version of row will be stored we have to change our approach to binding of Item_trigger_field to Field instances. Now after trigger parsing (in Item_trigger_field::setup_table()) we only find index of proper Field in the TABLE::field array. Then before trigger is invoked we set Table_triggers_list::old_field/new_field so they point to arrays holding Field instances bound to buffers with proper row versions. And as last step in Item_trigger_field::fix_fields() we get pointer to Field from those arrays using saved field index. Item_trigger_field: - Added field_idx member to store index of Field object corresponding to this Item in TABLE::field array. - Added triggers member to be able to access to parent Table_trigger_list object from fix_fields() method. - setup_field() no longer needs to know for which type of event this trigger is, since it does not make decision Field for which buffer (record[0] or record[1] is appropriate for this Item_trigger_field) sql/mysql_priv.h: Added fill_record_n_invoke_before_triggers() methods. They are simple wrappers around fill_record() which invoke proper before trigger right after filling record with values. sql/sql_base.cc: Added fill_record_n_invoke_before_triggers() methods. They are simple wrappers around fill_record() which invoke proper before trigger right after filling record with values. sql/sql_delete.cc: mysql_delete(): Now we stop statement execution if one of triggers failed, we also don't execute after delete trigger if we failed to delete row from the table (We also pass information about which buffer contains old version of row to process_triggers()). multi_delete::send_data()/do_deletes(): Now we also invoke triggers in case of multi-delete. sql/sql_insert.cc: mysql_insert(): Moved invocation of before triggers to fill_record_n_invoke_before_triggers() method. After triggers are now executed as part of write_record(). (as nice side effect now we also stop statement execution if one of triggers fail). write_record(): Invoke after insert trigger after performing insert. Also invoke proper triggers if insert is converted to update or conflicting row is deleted. Cleaned up error handling a bit - no sense to report error via handler::print_error if it was not generated by handler method and was reported before. Also now we will execute after trigger only if we really have written row to the table. select_insert::send_data()/store_values(): We should also execute INSERT triggers for INSERT ... SELECT statement. sql/sql_load.cc: read_fixed_length()/read_sep_field(): We should execute INSERT triggers when processing LOAD DATA statement. Small cleanup in auto-increment related code. Also moved check for thd->killed which is used to abort LOAD DATA in case of problems in 'traditional' mode to better place.. sql/sql_trigger.cc: Since it turned out that at trigger loading time we can't say in which buffer TABLE::record[0] or record[1] old version of row will be stored we have to change our approach to binding of Item_trigger_field to Field instances. Now after trigger parsing (in Item_trigger_field::setup_table()) we only find index of proper Field in the TABLE::field array. Then before trigger is invoked we set Table_triggers_list::old_field/new_field so they point to arrays holding Field instances bound to buffers with proper row versions. And as last step in Item_trigger_field::fix_fields() we get pointer to Field from those arrays using saved field index. Table_triggers_list methods were changed to implement this approach (see also comments for sql_trigger.h). sql/sql_trigger.h: Since it turned out that at trigger loading time we can't say in which buffer TABLE::record[0] or record[1] old version of row will be stored we have to change our approach to binding of Item_trigger_field to Field instances. Now after trigger parsing (in Item_trigger_field::setup_table()) we only find index of proper Field in the TABLE::field array. Then before trigger is invoked we set Table_triggers_list::old_field/new_field so they point to arrays holding Field instances bound to buffers with proper row versions. And as last step in Item_trigger_field::fix_fields() we get pointer to Field from those arrays using saved field index. Changed Table_triggers_list to implement this new approach: - Added record1_field member to store array of Field objects bound to TABLE::record[1] buffer (instead of existing old_field member) - Added new_field member and changed meaning of old_field member. During trigger execution they should point to arrays of Field objects bound to buffers holding new and old versions of row respectively. - Added 'table' member to be able to get access to TABLE instance (for which this trigger list object was created) from process_triggers() method. - Now process_triggers() method sets old_field and new_field members properly before executing triggers body (basing on new old_row_is_record1 parameter value). - Renamed prepare_old_row_accessors_method() to prepare_record1_accessors() Also added has_before_update_triggers() method which allows to check whenever any before update triggers exist for table. sql/sql_update.cc: mysql_update(): Now we invoke before triggers in fill_record_n_invoke_before_triggers() method. Also now we abort statement execution when one of triggers fail. safe_update_on_fly(): When we are trying to understand if we can update first table in multi update on the fly we should take into account that BEFORE UPDATE trigger can change field values. multi_update::send_data()/do_updates() We should execute proper triggers when doing multi-update (in both cases when we do it on the fly and using temporary tables).
-
unknown authored
Use local seach path for "mysql_priv.h" mysqld.dsp: Added the ARCHIVE storage engine to max ha_archive.h: VC6, but not VC7, needs a cast of byte[] to char* to make the compile select the right conversion function in String sql/examples/ha_archive.h: VC6, but not VC7, needs a cast of byte[] to char* to make the compile select the right conversion function in String VC++Files/sql/mysqld.dsp: Added the ARCHIVE storage engine to max sql/examples/ha_archive.cc: Use local seach path for "mysql_priv.h"
-
unknown authored
mysql-test/r/lock.result: Auto merged mysql-test/r/rpl_log.result: Auto merged mysql-test/t/lock.test: Auto merged mysql-test/r/rpl_rotate_logs.result: SCCS merged sql/sql_parse.cc: SCCS merged sql/sql_repl.cc: SCCS merged
-
unknown authored
into xiphis.org:/usr/home/antony/work2/p3-bug7241.5
-
unknown authored
-
unknown authored
after recovery.
-
unknown authored
Only acquire necessary write lock for multi-delete mysql-test/r/lock.result: Test for Bug#7241 mysql-test/t/lock.test: Test for Bug#7241 sql/sql_parse.cc: Bug#7241 Don't acquire write lock on all tables. Make sure to set lock_type on real table_list
-
unknown authored
into mysql.com:/home/gluh/MySQL/Merge/mysql-5.0
-
unknown authored
-
unknown authored
into mysql.com:/home/pem/work/mysql-5.0
-
- 23 May, 2005 11 commits
-
-
unknown authored
-
unknown authored
into bk-internal.mysql.com:/data0/bk/mysql-5.0 BitKeeper/etc/gone: auto-union BitKeeper/etc/logging_ok: auto-union mysql-test/r/lowercase_table.result: Auto merged mysql-test/t/lowercase_table.test: Auto merged mysys/my_open.c: Auto merged
-
unknown authored
BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
-
unknown authored
Memory leak in locally evalutated expressions during SP execution fixed by reusing allocated item slots when possible. Note: No test case added, since the test is a stress test that tries to make the machine to run out of memory. Second attempt, now tested with debug build, valgrind build, max (optimized) build, with and without --debug, --vagrind and --ps-protocol. Errors in trigger and view test with --debug in debug build where present before this patch, and likewise for valgrind warnings for view test in valgrind build with --ps-protocol. sql/item.cc: Init rsize in Item (for SP item reusal). sql/item.h: Addes special new operator for reuse of Items, for SP internal use only. sql/sp_head.cc: Reuse items assigned internally in SPs when possible. sql/sp_rcontext.cc: Reuse items assigned internally in SPs when possible. Moved the local variable assignment here (from sp_head) to avoid duplicated code. sql/sp_rcontext.h: New arg to sp_rcontext::set_item_eval() (and some coding style). sql/sql_class.cc: Adjusted call to new set_item_eval().
-
unknown authored
fixups of test case and comment formatting BitKeeper/deleted/.del-reserved_win_names-master.opt~e56da049a7ce9a5b: ***MISSING TEXT*** mysql-test/r/lowercase_table.result: added my test for bug #9148 to this test case mysql-test/t/lowercase_table.test: added my test for bug #9148 to this test case mysys/my_fopen.c: reformatted comments mysys/my_open.c: reformatted comments
-
unknown authored
Added BLACKHOLE and FEDERATED storage engines for max builds Some preparations for including yaSSL ha_federated.cc: Use local seach path for "mysql_priv.h" sql/ha_federated.cc: Use local seach path for "mysql_priv.h" VC++Files/sql/mysqld.dsp: Added BLACKHOLE and FEDERATED storage engines for max builds Some preparations for including yaSSL
-
unknown authored
-
unknown authored
sql/sql_lex.h: A comment.
-
unknown authored
into neptunus.(none):/home/msvensson/mysql/mysql-5.0-tmp include/my_global.h: Auto merged ndb/src/cw/cpcd/Process.cpp: Auto merged strings/my_vsnprintf.c: Auto merged
-
unknown authored
into mdk10.(none):/home/reggie/bk/mysql-5.0
-
unknown authored
include/my_global.h: Auto merged ndb/src/cw/cpcd/Process.cpp: Auto merged ndb/src/kernel/blocks/ndbfs/AsyncFile.cpp: Auto merged strings/my_vsnprintf.c: Auto merged
-