An error occurred fetching the project authors.
- 22 Jul, 2004 3 commits
-
-
unknown authored
fixed error handling mysql-test/r/view.result: SP variables inside view test mysql-test/t/view.test: SP variables inside view test sql/sql_base.cc: fixed error messages handling sql/sql_yacc.yy: fixed SP variables detecting
-
unknown authored
mysql-test/r/view.result: check 'use index' on view with temporary table mysql-test/t/view.test: check 'use index' on view with temporary table sql/sql_base.cc: privent crash on temporary table
-
unknown authored
sql/sql_base.cc: table_desc can be 0
-
- 21 Jul, 2004 1 commit
-
-
unknown authored
error handling of view initialization fixed (Bug#4599) include/mysqld_error.h: new error message mysql-test/r/view.result: changing of underlaying table test mysql-test/t/view.test: changing of underlaying table test sql/share/czech/errmsg.txt: new error message sql/share/danish/errmsg.txt: new error message sql/share/dutch/errmsg.txt: new error message sql/share/english/errmsg.txt: new error message sql/share/estonian/errmsg.txt: new error message sql/share/french/errmsg.txt: new error message sql/share/german/errmsg.txt: new error message sql/share/greek/errmsg.txt: new error message sql/share/hungarian/errmsg.txt: new error message sql/share/italian/errmsg.txt: new error message sql/share/japanese/errmsg.txt: new error message sql/share/korean/errmsg.txt: new error message sql/share/norwegian-ny/errmsg.txt: new error message sql/share/norwegian/errmsg.txt: new error message sql/share/polish/errmsg.txt: new error message sql/share/portuguese/errmsg.txt: new error message sql/share/romanian/errmsg.txt: new error message sql/share/russian/errmsg.txt: new error message sql/share/serbian/errmsg.txt: new error message sql/share/slovak/errmsg.txt: new error message sql/share/spanish/errmsg.txt: new error message sql/share/swedish/errmsg.txt: new error message sql/share/ukrainian/errmsg.txt: new error message sql/sql_base.cc: error message interception error handling fixed sql/sql_view.cc: comment fixed error message interception sql/table.cc: error message interception sql/table.h: error message interception
-
- 15 Jul, 2004 2 commits
-
-
unknown authored
two TABLE_LIST copy eliminated include/mysqld_error.h: errors of view libmysqld/Makefile.am: new view file mysql-test/r/connect.result: SHOW TABLE show type of table mysql-test/r/ctype_recoding.result: SHOW TABLE show type of table mysql-test/r/drop.result: SHOW TABLE show type of table mysql-test/r/grant.result: new two privileges (CRETEA|SHOW VIEW) mysql-test/r/lowercase_table.result: SHOW TABLE show type of table mysql-test/r/ps_1general.result: SHOW TABLE show type of table mysql-test/r/rename.result: SHOW TABLE show type of table mysql-test/r/rpl000009.result: SHOW TABLE show type of table mysql-test/r/rpl_error_ignored_table.result: SHOW TABLE show type of table mysql-test/r/select.result: SHOW TABLE show type of table mysql-test/r/system_mysql_db.result: SHOW TABLE show type of table new two privileges (CRETEA|SHOW VIEW) mysql-test/t/system_mysql_db_fix.test: removing all system tables scripts/mysql_fix_privilege_tables.sql: new two privileges (CRETEA|SHOW VIEW) sql/Makefile.am: new VIEW related file sql/ha_myisammrg.cc: two TABLE_LIST copy eliminated sql/item.cc: VIEW sql/item.h: VIEW sql/item_subselect.cc: VIEW sql/item_subselect.h: VIEW sql/lex.h: VIEW sql/lock.cc: VIEW sql/mysql_priv.h: VIEW sql/mysqld.cc: VIEW new parameter - sql_updatable_view_key sql/opt_sum.cc: two TABLE_LIST copy eliminated sql/set_var.cc: new parameter - sql_updatable_view_key sql/share/czech/errmsg.txt: errors messages of views sql/share/danish/errmsg.txt: errors messages of views sql/share/dutch/errmsg.txt: errors messages of views sql/share/english/errmsg.txt: errors messages of views sql/share/estonian/errmsg.txt: errors messages of views sql/share/french/errmsg.txt: errors messages of views sql/share/german/errmsg.txt: errors messages of views sql/share/greek/errmsg.txt: errors messages of views sql/share/hungarian/errmsg.txt: errors messages of views sql/share/italian/errmsg.txt: errors messages of views sql/share/japanese/errmsg.txt: errors messages of views sql/share/korean/errmsg.txt: errors messages of views sql/share/norwegian-ny/errmsg.txt: errors messages of views sql/share/norwegian/errmsg.txt: errors messages of views sql/share/polish/errmsg.txt: errors messages of views sql/share/portuguese/errmsg.txt: errors messages of views sql/share/romanian/errmsg.txt: errors messages of views sql/share/russian/errmsg.txt: errors messages of views sql/share/serbian/errmsg.txt: errors messages of views sql/share/slovak/errmsg.txt: errors messages of views sql/share/spanish/errmsg.txt: errors messages of views sql/share/swedish/errmsg.txt: errors messages of views sql/share/ukrainian/errmsg.txt: errors messages of views sql/slave.cc: two TABLE_LIST copy eliminated sql/sp.cc: VIEW sql/sql_acl.cc: VIEW sql/sql_acl.h: VIEW sql/sql_base.cc: VIEW sql/sql_cache.cc: two TABLE_LIST copy eliminated sql/sql_class.h: VIEW sql/sql_db.cc: two TABLE_LIST copy eliminated sql/sql_delete.cc: VIEW sql/sql_derived.cc: VIEW sql/sql_handler.cc: two TABLE_LIST copy eliminated sql/sql_help.cc: two TABLE_LIST copy eliminated sql/sql_insert.cc: VIEW sql/sql_lex.cc: VIEW sql/sql_lex.h: VIEW sql/sql_load.cc: VIEW sql/sql_olap.cc: VIEW sql/sql_parse.cc: two TABLE_LIST copy eliminated VIEW sql/sql_prepare.cc: VIEW sql/sql_rename.cc: two TABLE_LIST copy eliminated sql/sql_select.cc: VIEW sql/sql_show.cc: VIEW sql/sql_table.cc: VIEW sql/sql_union.cc: VIEW sql/sql_update.cc: VIEW sql/sql_yacc.yy: VIEW sql/table.cc: VIEW sql/table.h: VIEW sql/tztime.cc: two TABLE_LIST copy eliminated sql/unireg.h: VIEW tests/client_test.c: VIEW
-
unknown authored
Note: The following tests fails - fulltext (Sergei has promised to fix) - rpl_charset (Guilhem should fix) - rpl_timezone (Dimitray has promised to fix) Sanja needs to check out the calling of close_thread_tables() in sp_head.cc myisam/mi_check.c: After merge fix myisam/sort.c: After merge fix mysql-test/mysql-test-run.sh: Export master socket to mysqltest mysql-test/r/func_group.result: Make result repeatable mysql-test/r/mysqlbinlog.result: After merge fix mysql-test/r/ps_1general.result: After merge fix mysql-test/r/ps_2myisam.result: After merge fix mysql-test/r/ps_3innodb.result: After merge fix mysql-test/r/ps_4heap.result: After merge fix mysql-test/r/ps_5merge.result: After merge fix mysql-test/r/ps_6bdb.result: After merge fix mysql-test/r/rpl_flush_log_loop.result: After merge fix mysql-test/r/rpl_replicate_do.result: After merge fix mysql-test/r/rpl_temporary.result: After merge fix mysql-test/r/rpl_timezone.result: After merge fix Note that this test fails now (Dimitry has promised to fix this) mysql-test/r/rpl_user_variables.result: After merge fix mysql-test/r/select.result: After merge fix mysql-test/r/sp-error.result: After merge fix mysql-test/r/sp-security.result: After merge fix mysql-test/r/sp.result: After merge fix mysql-test/r/user_var.result: After merge fix mysql-test/r/variables.result: After merge fix mysql-test/t/alter_table.test: After merge fix mysql-test/t/derived.test: After merge fix mysql-test/t/func_group.test: Make result repeatable mysql-test/t/grant_cache.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/multi_update.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000015.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000017.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl000018.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl_charset.test: After merge fix mysql-test/t/rpl_heap.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/rpl_rotate_logs.test: Use MASTER_MYSOCK instead of master.sock mysql-test/t/sp-error.test: after merge fix mysql-test/t/sp-security.test: after merge fix mysql-test/t/user_var.test: after merge fix scripts/mysql_fix_privilege_tables.sh: This can now be exectued from the source distribution sql/handler.cc: Cleanup sql/handler.h: More debugging sql/item.h: Indentation fixes sql/item_cmpfunc.cc: After merge fixes sql/opt_range.cc: After merge fixes sql/opt_range.h: After merge fixes sql/sp.cc: After merge fixes sql/sp_head.cc: Remove closing of thread tables in a SP function as this caused a core dump. (Has to be fixed better) sql/sql_base.cc: More debugging sql/sql_handler.cc: After merge fixes (We have to call ha_index_or_rnd_end() before calling close_thread_table()) sql/sql_parse.cc: More debugging sql/sql_prepare.cc: After merge fixes sql/sql_select.cc: After merge fixes
-
- 30 Jun, 2004 1 commit
-
-
unknown authored
Post-merge fixes for nested joins. The join_tab_cmp function in sql_select has been changed. join_nested.result: Post-merge fixes for nested joins. The join_tab_cmp function in sql_select has been changed sql_select.cc: Post-merge fixes for nested joins. Avoided re-execution of eliminate_not_funcs and simplify_joins in optimize_cond. Changed the join_tab_cmp function to take into account the dependent relation. sql_lex.cc, sql_lex.h: Added the first_cond_optimization flag to st_select_lex to avoid re-execution of some optimizations in optimize_cond. sql_base.cc: Post-merge fixes for nested joins. Fixed problems with a proper column list substituted for '*' in queries with natural joins. sql/sql_base.cc: Post-merge fixes for nested joins. Fixed problems with a proper column list substituted for '*' in queries with natural joins. sql/sql_lex.h: Added the first_cond_optimization flag to st_select_lex to avoid re-execution of some optimizations in optimize_cond. sql/sql_lex.cc: Added the first_cond_optimization flag to st_select_lex to avoid re-execution of some optimizations in optimize_cond. sql/sql_select.cc: Post-merge fixes for nested joins. Avoided re-execution of eliminate_not_funcs and simplify_joins in optimize_cond. Changed the join_tab_cmp function to take into account the dependent relation. mysql-test/r/join_nested.result: Post-merge fixes for nested joins. The join_tab_cmp function in sql_select has been changed mysql-test/r/select.result: Post-merge fixes for nested joins. The join_tab_cmp function in sql_select has been changed. mysql-test/r/subselect2.result: Post-merge fixes for nested joins. The join_tab_cmp function in sql_select has been changed.
-
- 25 Jun, 2004 1 commit
-
-
unknown authored
-
- 24 Jun, 2004 1 commit
-
-
unknown authored
Redesigned the handler close functions so that they are usable at different places where waiting for closing tables is done. mysql-test/r/flush_table.result: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Added the test results. mysql-test/t/flush_table.test: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Activated old test case. Added new test cases. sql/mysql_priv.h: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Made mysql_ha_close() more flexible. Removed mysql_ha_closeall(), which closed only one table despite its name. Added mysql_ha_close_list(), which closes the complete list or all tables and does not lock. Removed a duplicate declaration. sql/sql_base.cc: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Added proper close calls before some wait points to avoid deadlocks or infinite loops. sql/sql_handler.cc: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Redesigned the internal function find_table_ptr_by_name(). It can now suppress locking and tells if the requested table has been flushed by itself. Extended mysql_ha_close() so that it can now suppres locking and error reporting. That way it can be used at more places and the old function mysql_ha_closeall() is now obsolete. Added a new function mysql_ha_close_list() which closes a whole list of HANDLER tables or all HANDLER tables, if the list is NULL. Furthermore is can close all 'old' (marked for flush) HANDLER tables. sql/sql_table.cc: bug#3565 - HANDLER and FLUSH TABLE/TABLES deadlock. Replaced the obsolte mysql_ha_closeall() by the new mysql_ha_close().
-
- 18 Jun, 2004 1 commit
-
-
unknown authored
Added basic per-thread time zone functionality (based on public domain elsie-code). Now user can select current time zone (from the list of time zones described in system tables). All NOW-like functions honor this time zone, values of TIMESTAMP type are interpreted as values in this time zone, so now our TIMESTAMP type behaves similar to Oracle's TIMESTAMP WITH LOCAL TIME ZONE (or proper PostgresSQL type). WL#1266 "CONVERT_TZ() - basic time with time zone conversion function". Fixed problems described in Bug #2336 (Different number of warnings when inserting bad datetime as string or as number). This required reworking of datetime realted warning hadling (they now generated at Field object level not in conversion functions). Optimization: Now Field class descendants use table->in_use member instead of current_thd macro. include/my_global.h: Added macro for reading of 32-bit ints stored in network order from unaligned memory location. include/mysqld_error.h: Added error-code for invalid timestamp warning and error-code for wrong or unknown time zone specification. libmysqld/Makefile.am: Added main per-thread time zone support file to libmysqld libmysqld/lib_sql.cc: Added initialization of time zones infrastructure to embedded server. mysql-test/r/connect.result: Updated test result since now mysql database contains more system tables. mysql-test/r/date_formats.result: Now when truncation occurs during conversion to datetime value we are producing Warnings instead of Notes. Also we are giving more clear warnings about this in some cases. mysql-test/r/func_sapdb.result: New warnings about truncation occured during conversion to datetime value added due their better handling. mysql-test/r/func_time.result: New warnings about truncation occured during conversion to datetime value added due their better handling. mysql-test/r/select.result: New warnings about truncation occured during conversion to datetime value added due their better handling. Also tweaked test a bit to made it less ambigious for reader. mysql-test/r/system_mysql_db.result: Updated test result because new system tables holding time zone descriptions were added. mysql-test/r/timezone.result: Updated timezone.test to use new system variable which shows system time zone. Added test of warning which is produced if someone tries to store non-existing (due falling into spring time-gap) datetime value into TIMESTAMP field. mysql-test/r/type_datetime.result: Separated and extended test of values and warnings produced for bad values stored in DATETTIME fields. mysql-test/r/type_time.result: Now we are producing more consistent warning when we are truncating datetime value while storing it in TIME field. mysql-test/r/type_timestamp.result: Separated and extended test of values and warnings produced for bad values stored in TIMESTAMP fields. mysql-test/t/select.test: Updated test to make it less ambigous for reader. mysql-test/t/timezone.test: Updated timezone.test to use new system variable which shows system time zone. Added test of warning which is produced if someone tries to store non-existing (due falling into spring time-gap) datetime value into TIMESTAMP field. mysql-test/t/type_datetime.test: Separated and extended test of values and warnings produced for bad values stored in DATETTIME fields. mysql-test/t/type_timestamp.test: Separated and extended test of values and warnings produced for bad values stored in TIMESTAMP fields. scripts/mysql_create_system_tables.sh: Added creation of tables with time zone descriptions. Also added descriptions of time zones used in tests. scripts/mysql_fix_privilege_tables.sql: Added mysql.time_zone* tables family. sql/Makefile.am: Added files implementing time zone support to server, also added rules for building of mysql_tzinfo_to_sql converter and test_time test. sql/field.cc: Now we are using per-thread time zone for TIMESTAMP <-> whatever conversion. Fixed generation of warnings for datetime types (DATETIME/TIMESTAMP/DATE/...) and any other Field to datetime conversion (now we are generating warnings no in lower level functions like in str_to_TIME() but in Field methods. This allows generate better and more consistent warnings and to reuse code of str_to_TIME() outside of server). Added 3rd parameter to set_warning() method to be able to not increment cut fields but still produce a warning. Also added set_datetime_warning() family of auxiliary methods which allow easier generate datetime related warnings. Also replaced occurences of current_thd with table->in_use member, added asserts for catching all places there we need to set table->in_use accordingly. Renamed fix_datetime() function to number_to_TIME() and moved it to sql/time.cc there it fits better. sql/field.h: Added comment about places where we can use table->in_use member instead of current_thd. Added 3rd parameter to Field::set_warning() method and set_datetime_warning() family of methods. sql/field_conv.cc: Field::set_warning() method with 2 arguments was replaced with more generic set_warning() method with 3 arguments. sql/ha_berkeley.cc: Now we set table->in_use for temporary tables so we have to use table->tmp_table for checking if table is temporary. sql/item.cc: Replaced calls to str_to_time() and str_to_TIME() funcs with their warning generating analogs. sql/item_create.cc: Added creation of CONVERT_TZ function as FUNC_ARG3. sql/item_create.h: Added creation of CONVERT_TZ function as FUNC_ARG3. sql/item_timefunc.cc: Added support of per-thread time zone to NOW-like and FROM_UNIXTIME, UNIX_TIMESTAMP functions. Added support for CONVERT_TZ function. Removed call to str_to_timestamp function which caused non-optimal behavior in certain cases. Replaced calls to str_to_time() function with its warning generating analog. sql/item_timefunc.h: Added support of per-thread time zone to NOW-like and FROM_UNIXTIME, UNIX_TIMESTAMP functions. Added support of CONVERT_TZ function. sql/lex.h: Added support of CONVERT_TZ function. sql/log.cc: Added support for replication of statements depending on time zone. sql/mysql_priv.h: Now including headers with per-thread time zone support functions and classes. Added portable replacement of time_t - my_time_t type. Added time zone as one of query distinguishing parameters for query cache. Fixed declarations of str_to_TIME, str_to_time and my_system_gmt_sec (former my_gmt_sec) since now they have one more out parameter which informs about wrong datetime value or data truncation during conversion. Added warning generating version of str_to_TIME() and str_to_time() functions. Thrown away str_to_datetime/timestamp functions since they are not needed any longer. Added number_to_TIME function. sql/mysqld.cc: Added per-thread time zone support initialization. Added new startup parameter --default-time-zone. sql/set_var.cc: Added support for per-thread time_zone variable. Renamed old timezone variable to system_time_zone. sql/set_var.h: Added support for per-thread time_zone variable. sql/share/czech/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/danish/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/dutch/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/english/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/estonian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/french/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/german/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/greek/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/hungarian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/italian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/japanese/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/korean/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/norwegian-ny/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/norwegian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/polish/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/portuguese/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/romanian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/russian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/serbian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/slovak/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/spanish/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/swedish/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/share/ukrainian/errmsg.txt: Added error message for barking when incorrect time zone name or specifiaction is provided and for warning about invalid TIMESTAMP values (e.g. falling into the spring time-gap). sql/slave.cc: In order to support replication of statements using time zones in 4.1 we should ensure that both master and slave have same default time zone. sql/sql_base.cc: Now we are setting TABLE::in_use member for all tables (which assume calls to Field::store or val_ methods). sql/sql_cache.cc: Added time zone as one more query distinguishing parameter for query cache. sql/sql_class.cc: Added THD::time_zone_used variable indicating that this query uses per thread time zone. sql/sql_class.h: Added per-thread time zone variable. Added THD::time_zone_used variable indicating that this query uses per thread time zone so if this is updating query the time zone should be logged to binlog. sql/sql_insert.cc: We should set TABLE::in_use member pointing to thread which is called INSERT DELAYED and not to worker thread. sql/sql_load.cc: Field::set_warning() now has one more argument now. sql/sql_parse.cc: Resetting THD::time_zone_used variable in the end of query processing. sql/sql_select.cc: Now we are setting TABLE::in_use member for all tables (which assume calls to Field::store or val_ methods). sql/sql_show.cc: Now using per thread time zone for extended show tables. sql/time.cc: Added support for per-thread time zones for TIMESTAMP type and reworked generation of warnings for TIMESTAMP and DATETIME types. (Introduced new TIME_to_timestamp() function. Removed hours normalisation from former my_gmt_sec() since it was not working and not used anywhere now, but breaks parameter constness, added to this function generation of warning if we are falling in spring time-gap. Removed str_to_timestamp and str_to_datetime functions which are no longer used. Moved fix_datetime function from sql/field.cc to this file as number_to_TIME() function. Added out parameter for str_to_TIME and str_to_time functions which indicates if value was truncated during conversion, removed direct generation of warnings from this functions.) sql/unireg.cc: Now we are setting TABLE::in_use member for all tables (which assume calls to Field::store or val_ methods). BitKeeper/etc/ignore: Added sql/test_time sql/mysql_tzinfo_to_sql libmysqld/tztime.cc to the ignore list
-
- 11 Jun, 2004 1 commit
-
-
unknown authored
new file Many files: Nested joins added. sql/item_cmpfunc.h: Nested joins added. sql/item_func.h: Nested joins added. sql/sql_base.cc: Nested joins added. sql/sql_lex.cc: Nested joins added. sql/sql_lex.h: Nested joins added. sql/sql_parse.cc: Nested joins added. sql/sql_select.cc: Nested joins added. sql/sql_select.h: Nested joins added. sql/sql_yacc.yy: Nested joins added. sql/table.h: Nested joins added. mysql-test/r/join_outer.result: Nested joins added. mysql-test/r/select.result: Nested joins added.
-
- 10 Jun, 2004 1 commit
-
-
unknown authored
close table before opening in optimize mysql-test/r/subselect.result: test of EXISTS(SELECT * ...) mysql-test/t/subselect.test: test of EXISTS(SELECT * ...) sql/sql_base.cc: EXISTS(SELECT * ...) sql/sql_table.cc: close table before opening one
-
- 29 May, 2004 1 commit
-
-
unknown authored
-
- 19 May, 2004 1 commit
-
-
unknown authored
mysql-test/r/sp.result: test suite for Bug #2266 mysql-test/t/sp.test: test suite for Bug #2266 sql/item_subselect.cc: made ancestor for Statement (Item_arena) sql/item_subselect.h: made ancestor for Statement (Item_arena) sql/item_sum.cc: made ancestor for Statement (Item_arena) sql/item_sum.h: made ancestor for Statement (Item_arena) sql/mysql_priv.h: reset_stmt_for_execute use PS and SP sql/sp_head.cc: sp_head use Item_arena as ancestor to be PS cleunup compatible SP use PS storing/restoring/cleanup mechanisms cleanup() of SP Items added Items created in temporary memory pool during SP execution saved for normal freeing after SP execution sql/sp_head.h: sp_head use Item_arena sql/sql_base.cc: made ancestor for Statement (Item_arena) results of wild_setup made permanent setup_conds make natural joins expanding only once and store results in PS/SP memory sql/sql_class.cc: made ancestor for Statement (Item_arena) sql/sql_class.h: made ancestor for Statement (Item_arena) method to detect PS preparation added sql/sql_delete.cc: storing where for DELETE and mark first execution sql/sql_derived.cc: use method sql/sql_insert.cc: mark first execution for INSERT sql/sql_lex.cc: flags to correctly make transformations of query and storing them in memory of PS/SP made ancestor for Statement (Item_arena) sql/sql_lex.h: reved variable od SP ol saving data flags to correctly make transformations of query and storing them in memory of PS/SP sql/sql_parse.cc: cleunup unit for any query sql/sql_prepare.cc: made ancestor for Statement (Item_arena) storing where moved to preparation changed interface of reset_stmt_for_execute to use it is SP do not restore where/order by/group by before first execution (but tables and unit can be chenged without execution and should be prepared (subqueries executes on demand)) sql/sql_select.cc: storing where for SELECT/multi-DELETE/... and mark first execution sql/sql_union.cc: made ancestor for Statement (Item_arena) sql/sql_update.cc: storing where for UPDATE and mark first execution
-
- 17 May, 2004 1 commit
-
-
unknown authored
check for field_name (not only for name) in find_item_in_list, to be compatible with item->eq() that is done later mysql-test/r/order_by.result: bug#3681 - order by, distinct, refer to aliased field by name
-
- 14 May, 2004 1 commit
-
-
unknown authored
mysql-test/r/func_gconcat.result: test of Bug #3752 mysql-test/t/func_gconcat.test: test of Bug #3752 sql/sql_base.cc: check of item name presence in find_item_in_list
-
- 05 May, 2004 1 commit
-
-
unknown authored
We didn't use 'only index' for tables of type 'const'. (Bug #3497) mysql-test/r/func_str.result: New testfin mysql-test/r/key.result: New test mysql-test/r/key_primary.result: Update after "We didn't use 'only index' for tables of type 'const'" fix. mysql-test/r/null_key.result: Update after "We didn't use 'only index' for tables of type 'const'" fix. mysql-test/r/subselect.result: Update after "We didn't use 'only index' for tables of type 'const'" fix. mysql-test/t/func_str.test: Updated bug texts Added test for conversion of long string value to integer (Bug #3472) mysql-test/t/key.test: Test of key read with primary key (Bug #3497) sql/item.cc: Added assert sql/sql_base.cc: Fixed crashing bug with alter table when table was in use (Bug #3643) sql/sql_load.cc: Indentation fixes sql/sql_select.cc: We didn't use 'only index' for tables of type 'const'. (Bug #3497)
-
- 04 May, 2004 1 commit
-
-
unknown authored
-
- 15 Apr, 2004 1 commit
-
-
unknown authored
include/my_base.h: Added three new errorcodes to be returned by the handler sql/Makefile.am: Add new files discover.cc, ha_ndbcluster.cc and ha_ndbcluster.h Add include path of NDB files sql/handler.cc: Added variable for keeping track of number of "discovers" Added NDB to list of storage engines Added calls to NDB for commit, rollback etc. Added function ha_discover for discovering a table from handler sql/handler.h: Added NDB to list of storage engines Added vbariable in transaction for keeping a ndb transaction handle sql/lex.h: Changed AND to AND_SYM and OR to OR_SYM to avoid nameclash sql/mysql_priv.h: Added prototypes for new functions readfrm, writefrm and create_table_from_handler sql/mysqld.cc: Added NDB support Disable NDB with --skip-ndbcluster sql/set_var.cc: Add posibilty to show if NDB handler is supported sql/ha_ndbcluster.cc: Add ifdef for whole file for not compiling anything if NDB sholdn't be included Updated timestamp handling to use new vars timestamp_default_now and timestamp_on_update_now sql/sql_base.cc: If frm file is not found on disk, ask handler if it knows about the table. Then retry the open. This new functionality is called "discover" and can be used by any handler. sql/sql_class.h: Added variable for keeping a NDB connection handle sql/sql_table.cc: Before trying to create a table, ask handler if a table with that name already exists. If user said CREATE TABLE IF NOT EXISTS, disocver the table from handler sql/sql_yacc.yy: Add NDBCLUSTER_SYM Change AND to AND_SYM Change OR to OR_SYM sql/table.cc: Fixe for probelm when NullS is returned from bas_ext of a handler.
-
- 07 Apr, 2004 1 commit
-
-
unknown authored
sql/log_event.cc: non_cachable_table flag changed to cacheable_table sql/repl_failsafe.cc: non_cachable_table flag changed to cacheable_table sql/slave.cc: non_cachable_table flag changed to cacheable_table sql/sql_acl.cc: non_cachable_table flag changed to cacheable_table sql/sql_base.cc: non_cachable_table flag changed to cacheable_table sql/sql_cache.cc: non_cachable_table flag changed to cacheable_table sql/sql_help.cc: non_cachable_table flag changed to cacheable_table sql/sql_insert.cc: non_cachable_table flag changed to cacheable_table sql/sql_parse.cc: non_cachable_table flag changed to cacheable_table sql/sql_prepare.cc: renamed DEBUG tag sql/table.h: non_cachable_table flag changed to cacheable_table
-
- 06 Apr, 2004 2 commits
-
-
unknown authored
::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert() Field::val_str simplification, comment include/my_base.h: typos fixed mysql-test/r/myisam.result: alter table enable/disable keys mysql-test/t/help.test: cleanup mysql-test/t/myisam.test: alter table enable/disable keys sql/field.cc: Field::val_str() simplification sql/field.h: Field::val_str() simplification and comment sql/field_conv.cc: Field::val_str() simplification sql/ha_berkeley.cc: ::reset(), HA_FAST_KEY_READ sql/ha_berkeley.h: ::reset(), HA_FAST_KEY_READ sql/ha_heap.cc: ::reset(), HA_FAST_KEY_READ sql/ha_heap.h: ::reset(), HA_FAST_KEY_READ sql/ha_innodb.cc: ::reset(), HA_FAST_KEY_READ sql/ha_innodb.h: ::reset(), HA_FAST_KEY_READ sql/ha_isam.cc: ::reset(), HA_FAST_KEY_READ sql/ha_isam.h: ::reset(), HA_FAST_KEY_READ sql/ha_isammrg.cc: ::reset(), HA_FAST_KEY_READ sql/ha_isammrg.h: ::reset(), HA_FAST_KEY_READ sql/ha_myisam.cc: ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert() sql/ha_myisam.h: ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert() sql/ha_myisammrg.cc: ::reset(), HA_FAST_KEY_READ sql/ha_myisammrg.h: ::reset(), HA_FAST_KEY_READ sql/handler.h: ::reset(), HA_FAST_KEY_READ, disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert() sql/item.cc: Field::val_str() simplification sql/item_sum.cc: Field::val_str() simplification sql/key.cc: Field::val_str() simplification sql/opt_range.cc: Field::val_str() simplification sql/protocol.cc: Field::val_str() simplification sql/records.cc: HA_FAST_KEY_READ sql/sql_acl.cc: Field::val_str() simplification sql/sql_base.cc: ::reset sql/sql_insert.cc: ::reset(), start_bulk_insert(), end_bulk_insert() sql/sql_load.cc: start_bulk_insert(), end_bulk_insert() sql/sql_show.cc: Field::val_str() simplification sql/sql_table.cc: disable_indexes(), enable_indexes(), start_bulk_insert(), end_bulk_insert() sql/table.cc: Field::val_str() simplification
-
unknown authored
Don't add -debug to server version if MYSQL_SERVER_PREFIX is used Indentation cleanups myisam/mi_write.c: Indentation cleanup mysql-test/r/lowercase_table2.result: Fixed test results sql/filesort.cc: Fixed warnings from valgrind (not a bug) sql/ha_myisam.cc: Indentation cleanup sql/mysqld.cc: Don't add -debug to server if MYSQL_SERVER_PREFIX is used sql/sql_base.cc: Indentation cleanup sql/sql_show.cc: Fixed typo in comment sql/sql_table.cc: Indentation cleanup
-
- 04 Apr, 2004 1 commit
-
-
unknown authored
fixed error code in union test mysql-test/t/union.test: right code worr 4.1 error sql/log_event.cc: assign non-cachable for Item status for all stack tables for safety sql/repl_failsafe.cc: assign non-cachable for Item status for all stack tables for safety sql/slave.cc: assign non-cachable for Item status for all stack tables for safety sql/sql_acl.cc: assign non-cachable for Item status for all stack tables for safety sql/sql_base.cc: assign non-cachable for Item status for all stack tables for safety non-cachable status processing sql/sql_cache.cc: assign non-cachable for Item status for all stack tables for safety sql/sql_class.cc: removed ald way to prevent using stack tables for caching Items in PS sql/sql_class.h: removed old way to prevent using stack tables for caching Items in PS sql/sql_help.cc: assign non-cachable for Item status for all stack tables for safety sql/sql_insert.cc: assign non-cachable for Item status for all stack tables for safety removed old way to prevent using stack tables for caching Items in PS sql/table.h: non-cachable for Item status for tables
-
- 03 Apr, 2004 2 commits
-
-
unknown authored
fixed outer joins test of different joins included sql/item.cc: for Item_param we have to have value set instead of fave item fixed sql/sql_base.cc: fixed PS with outer joins tests/client_test.c: test of different types of joins
-
unknown authored
fixed aggregate functions in PS (BUG#3360) mysql-test/r/union.result: 4.1 more correct error sql/item_cmpfunc.h: and_conds do not make fix fields sql/item_sum.cc: storing/restoring argument of aggregate function for prepared statements restoring order list of group_concat for safety sql/item_sum.h: storing/restoring argument of aggregate function for prepared statements layout fix sql/mysql_priv.h: just declaration sql/sql_base.cc: fix_fields() have to be called with temporary memory pool active sql/sql_parse.cc: removed hack with item pointer storing sql/sql_prepare.cc: debug output added removed hack with item pointer storing sql/sql_select.cc: fix_fields now should be called separately sql/sql_union.cc: removed wrong merged check from 4.0 (4.1 have its own protection) sql/table.h: removed hack with item pointer storing tests/client_test.c: new test fo PS
-
- 02 Apr, 2004 1 commit
-
-
unknown authored
Final version of patch. Adds support for specifying of DEFAULT NOW() and/or ON UPDATE NOW() clauses for TIMESTAMP field definition. Current implementation allows only one such field per table and uses several unireg types for storing info about this properties of field. It should be replaced with better implementation when new .frm format is introduced. include/mysqld_error.h: Added error codes for case when we have more than one column with NOW() in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. mysql-test/r/create.result: Added tests for using of DEFAULT NOW() and ON UPDATE NOW() with non-TIMESTAMP fields. mysql-test/r/show_check.result: Updated test results to reflect new default look of TIMESTAMP fields in SHOW CREATE TABLE. mysql-test/r/system_mysql_db.result: Updated test results to reflect new default look of TIMESTAMP fields in SHOW CREATE TABLE. mysql-test/r/type_ranges.result: Updated test results to reflect new default look of TIMESTAMP fields in SHOW COLUMNS. mysql-test/r/type_timestamp.result: Added tests for various DEFAULT and ON UPDATE clauses for TIMESTAMP fields definitions. mysql-test/t/create.test: Added tests for using of DEFAULT NOW() and ON UPDATE NOW() with non-TIMESTAMP fields. mysql-test/t/type_timestamp.test: Added tests for various DEFAULT and ON UPDATE clauses for TIMESTAMP fields definitions. sql/field.cc: Added support for various combinations of DEFAULT and ON UPDATE clauses for TIMESTAMP field. Setting TABLE::timestamp* members for TIMESTAMP fields with auto-set option taking into account their unireg type (which corresponds to various DEFAULT/ON UPDATE values combinations). Replaced TABLE::time_stamp with TABLE::timestamp_default_now/on_update_now couple moved their setup to separate method set_timestamp_offsets(), which now is called from open_table instead of Field_timestamp cons. sql/field.h: Added more unireg types for handling of DEFAULT NOW() and ON UPDATE NOW() for TIMESTAMP fields. Fixed value corresponding to DEFAULT item for TIMESTAMP field. sql/ha_berkeley.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_heap.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_innodb.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_isam.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_isammrg.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_myisam.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/ha_myisammrg.cc: Now TIMESTAMP column with auto-set property could be updated during INSERT or/and UPDATE independently. sql/item_func.h: We need to distinguish NOW() from other function for using in DEFAULT and in ON UPDATE clauses. sql/item_timefunc.h: We need to distinguish NOW() from other function for using in DEFAULT and in ON UPDATE clauses. sql/mysql_priv.h: Added parameter for ON UPDATE value to add_field_to_list() function. sql/share/czech/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/danish/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/dutch/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/english/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/estonian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/french/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/german/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/greek/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/hungarian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/italian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/japanese/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/korean/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/norwegian-ny/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/norwegian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/polish/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/portuguese/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/romanian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/russian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/serbian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/slovak/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/spanish/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/swedish/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/share/ukrainian/errmsg.txt: Added error messages for case when we have more than one column with NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE clause with wrong type. sql/sql_base.cc: Added setup of TABLE::timestamp_default_now/on_update_now pair for each statement to open_table(). sql/sql_insert.cc: Using TABLE::timestamp_default_now/on_update_now pair instead of old TABLE::time_stamp. Added check for case then REPLACE could not be converted to UPDATE because of different DEFAULT/ON UPDATE values for TIMESTAMP field. sql/sql_lex.h: Added member for value used in ON UPDATE clause to st_lex. sql/sql_load.cc: Using TABLE::timestamp_default_now/on_update_now pair instead of old TABLE::time_stamp. We don't need to restore these members since they are set up for each statement in open_table(). sql/sql_parse.cc: Added handling of DEFAULT NOW() and ON UPDATE NOW() clauses for TIMESTAMP fields to add_field_to_list() function. sql/sql_show.cc: Added support for DEFAULT CURRENT_TIMESTAMP (aka NOW() ) and ON UPDATE CURRENT_TIMESTAMP to SHOW CREATE TABLE and SHOW COLUMNS. sql/sql_table.cc: mysql_create_table() function - added check for number of TIMESTAMP fields with auto-set values and replacing of old style TIMESTAMPs with their newer analogs. mysql_alter_table(): Using TABLE::timestamp_default_now/on_update_now pair instead of old TABLE::time_stamp. We don't need to restore these members since they are set up for each statement in open_table(). sql/sql_update.cc: Left only setting of TABLE::timestamp_default_now/on_update_now to 0 since they should be already set up in open_table(). sql/sql_yacc.yy: Added support for DEFAULT NOW() and ON UPDATE NOW() in field definitions. sql/table.h: Replaced TABLE::time_stamp withTABLE::timestamp_default_now/timestamp_on_update_now pair which allows to distinguish TIMESTAMP's with various DEFAULT/ON UPDATE clauses and optimize checks if TIMESTAMP field should be set to NOW() in handlers. sql/unireg.cc: Now we are marking only TIMESTAMP fields with NOW() as default or as on update value as special field for unireg.
-
- 01 Apr, 2004 1 commit
-
-
unknown authored
save moving ON/USING tables conditions to WHERE clause (BUG#2794) sql/sql_base.cc: fix for table/field caching mechanism (global lock of it and right table passed as parameter) save moving ON/USING tables conditions to WHERE clause (BUG#2794) sql/sql_class.cc: lock for using field/table cache in Item name resolution sql/sql_class.h: lock for using field/table cache in Item name resolution sql/sql_insert.cc: lock for using field/table cache in Item name resolution tests/client_test.c: Test of PS queries with ON condition
-
- 31 Mar, 2004 3 commits
-
-
unknown authored
-
unknown authored
table resolution". Added members to Item_ident for storing original db, table and field names since those that set later from Field have shorter life-time than required by prep. stmt. So we need to restore original names in Item_ident::cleanup(). Also now using special construnctor for creation of Item_field from Field object that ensures that table and field name have big enough life-time. "Fix" for bug #2050 "10 to 1 performance drop with server 4.1.1" Clean ups in implementation of caching of field number in table. Added caching of table in which field is found in find_field_in_tables(). sql/item.cc: Added members to Item_ident for storing original db, table and field names since those that set later from Field have shorter life-time than required by prep. stmt. So we need to restore original names in Item_ident::cleanup(). Added Item_ident::cached_table for caching table there we found our field. Added special constructor for creation of Item_field from Field object that ensures that table and field name have big enough life-time. sql/item.h: Added members to Item_ident for storing original db, table and field names since those that set later from Field have shorter life-time than required by prep. stmt. So we need to restore original names in Item_ident::cleanup(). Changed type of Item_ident::cached_field_index from int to uint (and so NO_CACHED_FIELD_INDEX is UINT_MAX now) because we want to save one comparison in find_field_in_table(). Added Item_ident::cached_table for caching table there we found our field. Added special constructor for creation of Item_field from Field object that ensures that table and field name have big enough life-time. sql/mysql_priv.h: Changed type of cached_field_index_ptr from int* to uint* (and so NO_CACHED_FIELD_INDEX is UINT_MAX now) because we want to save one comparison in find_field_in_table(). sql/sql_acl.cc: Changed type of find_field_in_table() paremeter to make it faster. sql/sql_base.cc: find_field_in_table(): small optimization and soime clean ups in caching of field index. find_field_in_tables(): added aggresive caching of table in which field is found in Item_ident::cached_table. insert_fields(): using special construnctor for creation of Item_field from Field object that ensures that table and field name have big enough life-time.
-
unknown authored
Portability fixes client/mysqltest.c: Fixed that if error number 0 is included in --error, we will not generate an error message include/mysql.h: Portability fix mysql-test/mysql-test-run.sh: Portability fix mysql-test/r/heap_btree.result: Portability fix mysql-test/r/rpl_error_ignored_table.result: Portability fix mysql-test/t/heap_btree.test: Portability fix mysql-test/t/rpl_error_ignored_table.test: Portability fix sql/sql_base.cc: simple optimzation sql/sql_yacc.yy: simple optimzation
-
- 30 Mar, 2004 2 commits
-
-
unknown authored
This is to enable table handlers to implement online create/drop index. It consists of some parts: - New default handler methods in handler.h - Split of mysql_alter_table. It decides if only one kind of alteration is to be done (e.g. only create indexes or only drop indexes etc.) It then calls the specialized new handler method if the handler implements it. Otherwise it calls real_alter_table. - The parser sets flags for each alter operation detected in a command. These are used by mysql_alter_table for the decision. - mysql_prepare_table is pulled out of mysql_create_table. This is also used by mysql_create_index to prepare the key structure array for the handler. It is also used by mysql_create_index and mysql_drop_index to prepare a call to mysql_create_frm. - mysql_create_frm is pulled out of rea_create_table for use by mysql_create_index and mysql_drop_index after the index is created/dropped. Thanks to Antony who supplied most of the changes. sql/handler.h: Worklog#1563 - Support of on-line CREATE/DROP INDEX. New virtual handler methods with default implementation and return flags. sql/mysql_priv.h: Worklog#1563 - Support of on-line CREATE/DROP INDEX. New function prototypes. mysql_prepare_table is pulled out of mysql_create_table. It prepares a table structure, which is used by mysql_create_table, mysql_create_index and mysql_drop_index. real_alter_table is pulled out of mysql_alter_table. The latter only looks if the requested operation can be done by specialized functions or else calls real_alter_table, which does the real thing. mysql_add_column and mysql_drop_colunm are for future use. They simply call real_alter_table. mysql_create_frm is pulled out of rea_create_table. It is called also from mysql_create_index and mysql_drop_index after successful create/drop index. mysql_alter_table prototype is extended by the new alter_flags argument. sql/sql_base.cc: Worklog#1563 - Support of on-line CREATE/DROP INDEX. mysql_create_index and mysql_drop_index moved to sql_table.cc. sql/sql_lex.h: Worklog#1563 - Support of on-line CREATE/DROP INDEX. Definitions for the new alter_flags. sql/sql_parse.cc: Worklog#1563 - Support of on-line CREATE/DROP INDEX. Extend the calls to mysql_alter_table by the new alter_flags argument. sql/sql_table.cc: Worklog#1563 - Support of on-line CREATE/DROP INDEX. mysql_prepare_table is pulled out of mysql_create_table. mysql_create_index and mysql_drop_index are changed so that they use the new handler functions if the handler implements them. mysql_add_column and mysql_drop_column are for future use. They simply call real_alter_table. mysql_alter_table only decides which function to use for the requested operation. real_alter_table implements most of what mysql_alter_table did before. sql/sql_yacc.yy: Worklog#1563 - Support of on-line CREATE/DROP INDEX. Set the alter_flags where appropriate. sql/unireg.cc: Worklog#1563 - Support of on-line CREATE/DROP INDEX. mysql_create_frm is pulled out of rea_create_table.
-
unknown authored
ChangeSet 1.1707 04/03/19 12:36:55 ram@gw.mysql.r18.ru +4 -0 Fix for the bug #2976: NATURAL JOIN produces duplicate columns.
-
- 29 Mar, 2004 1 commit
-
-
unknown authored
sql-bench/crash-me.sh: Fixed typo sql/mysql_priv.h: Moved things for embedded library into one section sql/sql_string.cc: Simple optimization
-
- 28 Mar, 2004 1 commit
-
-
unknown authored
Actually it is not a bug but right behavior observed as pefomance degradation after we have forced Item_field::fix_fields() to re-execute each time when we are executing prep stmt. This patch implements small optimization which heals this bad behavior. We are caching field position in TABLE::field array in Item's member and are using this position for speeding up field lookups in fix_fields() in case of its re-execution. sql/item.cc: Added cached_field_index member to Item_ident for caching field position in TABLE::field array for quicker field lookup in case fix_fields() is executed twice. sql/item.h: Added cached_field_index member to Item_ident for caching field position in TABLE::field array for quicker field lookup in case fix_fields() is executed twice. sql/mysql_priv.h: Now find_field_in_table has one more in-out parameter which is used for caching field index in TABLE::field array stored for quicker field look up. sql/sql_acl.cc: Now find_field_in_table has one more in-out parameter which is used for caching field index in TABLE::field array stored for quicker field look up. sql/sql_base.cc: Optimization: Now when we are looking up Field by its name we are caching its position in TABLE::field array in Item_ident::cached_field_index, so when we will call fix_fields() second time for this item (e.g. when we are re-executing prep statement) we can reuse this index to speed up this lookup. sql/table.cc: Now we storing in TABLE::name_hash pointers to elements of TABLE::field array, because this allows easily retrieve index of field in this array when it is looked up by its name. sql/table.h: Added comment claryfying what we store in TABLE::name_hash. BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted
-
- 26 Mar, 2004 1 commit
-
-
unknown authored
-
- 25 Mar, 2004 1 commit
-
-
unknown authored
include/mysql.h: cleanup of load data infile patch libmysql/libmysql.c: cleanup of load data infile patch myisam/mi_search.c: Added missing assert.h mysql-test/r/func_time.result: Make test more secure mysql-test/t/func_time.test: Make test more secure sql/item.cc: restore to use str_value in item::save_in_field sql/item.h: Simple cleanup sql/item_cmpfunc.cc: Safety fix sql/item_cmpfunc.h: Simple optimization sql/item_func.cc: Updated comment sql/sql_base.cc: Simple optimization sql/sql_select.cc: Simple optimization sql/sql_union.cc: safey fixes
-
- 24 Mar, 2004 1 commit
-
-
unknown authored
-
- 20 Mar, 2004 2 commits
-
-
unknown authored
this is better in this case: - imagine user1 has created a temp table - imagine user2 does FLUSH TABLES WITH READ LOCK, then takes a backup, then RESET MASTER then UNLOCK TABLES, like mysqldump --first-slave - then in the binlog you will finally have the DROP TEMPORARY TABLE, but not the CREATE TEMPORARY TABLE, so when you later restore with mysqlbinlog|mysql, mysql will complain that table does not exist. Replication was already protected of this (it processes DROP TEMPORARY TABLE as if there was a IF EXISTS), now I add it directly to the query for mysqlbinlog|mysql to work. mysql-test/r/drop_temp_table.result: result update (query changed)
-
unknown authored
sql/item.cc: removed double_fix & already_fixed in Item_field sql/item.h: added quick_fix_field() for cases when we are sure that no need full fix_field processing fixed neg() method for numeric constants to have the same logic as constant parser Item_null, Item_real, ... are constant which are fixed by creation sql/item_cmpfunc.h: right fix_fields in and_conds call sql/item_func.cc: changed Item_field constructor call fix_field emulation call sql/item_strfunc.cc: correct layout sql/item_subselect.cc: correct layout changed Item_field constructor call sql/item_sum.cc: changed Item_field constructor call sql/item_sum.h: changed Item_field constructor call sql/sql_base.cc: fixed layout right fix_fields calls sql/sql_help.cc: changed Item_field constructor call sql/sql_load.cc: changed Item_field constructor call sql/sql_parse.cc: constant changed sql/sql_select.cc: fixed layout fix_field emulation insted of real fix_fields call sql/sql_show.cc: changed Item_field constructor call sql/sql_union.cc: changed Item_field constructor call double_fix removed sql/sql_update.cc: renamed variable, fixed layout sql/sql_yacc.yy: typo fixed fix_fields emulation calls hegation of numbers fixed
-
- 19 Mar, 2004 1 commit
-
-
unknown authored
Improvement natural join code in the setup_conds(). mysql-test/r/join.result: Fix for the bug #2976: NATURAL JOIN produces duplicate columns mysql-test/r/join_outer.result: Fix for the bug #2976: NATURAL JOIN produces duplicate columns mysql-test/r/select.result: Fix for the bug #2976: NATURAL JOIN produces duplicate columns
-