- 14 Dec, 2005 2 commits
- 08 Dec, 2005 1 commit
-
-
unknown authored
to Crash": the bug was that due to non-standard name resolution precedence in stored procedures (See Bug#5967) a stored procedure variable took precedence over a table column when the arguments for VALUES() function were resolved. The implementation of VALUES() function was not designed to work with Item_splocal and crashed. VALUES() function is non-standard. It can refer to, and is meaningful for, table columns only. The patch disables SP variables as possible arguments of VALUES() function. mysql-test/r/sp.result: Test results fixed (Bug#15441). Also make sure that the recently added test cases follow sp.test internal tests standard. mysql-test/t/sp.test: Add a test case for Bug#15441 "Running SP causes Server to Crash". sql/item.cc: Cleanup Item_insert_value::fix_fields(). sql/item.h: Add a comment for Item_insert_value. sql/sql_yacc.yy: Actual fix for Bug#15441 "Running SP causes Server to Crash": we should not allow VALUES() function to reference SP variables.
-
- 07 Dec, 2005 27 commits
-
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-merges sql/sql_parse.cc: Auto merged
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-merges
-
unknown authored
-
unknown authored
mysql-test/t/sp-vars.test: Rename: mysql-test/sp-vars.test -> mysql-test/t/sp-vars.test
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-merges sql/sp_head.cc: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-merges sql/sp.cc: Auto merged sql/sp_head.cc: Auto merged sql/sp_head.h: Auto merged
-
unknown authored
into mysql.com:/home/jimw/my/mysql-5.0-release
-
unknown authored
into mysql.com:/opt/local/work/mysql-5.0-root sql/sql_parse.cc: Auto merged
-
unknown authored
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-merges
-
unknown authored
into mysql.com:/home/alik/Documents/AllProgs/MySQL/devel/5.0-sp-vars-merge-2 mysql-test/r/sp.result: Auto merged mysql-test/t/sp.test: Auto merged sql/field.cc: Auto merged sql/item.cc: Auto merged sql/item.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/sp_head.cc: Merge.
-
unknown authored
according to the standard. The idea is to use Field-classes to implement stored routines variables. Also, we should provide facade to Item-hierarchy by Item_field class (it is necessary, since SRVs take part in expressions). The patch fixes the following bugs: - BUG#8702: Stored Procedures: No Error/Warning shown for inappropriate data type matching; - BUG#8768: Functions: For any unsigned data type, -ve values can be passed and returned; - BUG#8769: Functions: For Int datatypes, out of range values can be passed and returned; - BUG#9078: STORED PROCDURE: Decimal digits are not displayed when we use DECIMAL datatype; - BUG#9572: Stored procedures: variable type declarations ignored; - BUG#12903: upper function does not work inside a function; - BUG#13705: parameters to stored procedures are not verified; - BUG#13808: ENUM type stored procedure parameter accepts non-enumerated data; - BUG#13909: Varchar Stored Procedure Parameter always BINARY string (ignores CHARACTER SET); - BUG#14161: Stored procedure cannot retrieve bigint unsigned; - BUG#14188: BINARY variables have no 0x00 padding; - BUG#15148: Stored procedure variables accept non-scalar values; mysql-test/r/ctype_ujis.result: Explicitly specify correct charset. mysql-test/r/schema.result: Drop our test database to not affect this test if some test left it cause of failure. mysql-test/r/show_check.result: Drop our test database to not affect this test if some test left it cause of failure. mysql-test/r/skip_name_resolve.result: Ignore columns with unpredictable values. mysql-test/r/sp-big.result: Add cleanup statement. mysql-test/r/sp-dynamic.result: Add cleanup statements. mysql-test/r/sp.result: Update result file. mysql-test/r/sum_distinct-big.result: Update result file. mysql-test/r/type_newdecimal-big.result: Update result file. mysql-test/t/ctype_ujis.test: Explicitly specify correct charset. mysql-test/t/schema.test: Drop our test database to not affect this test if some test left it cause of failure. mysql-test/t/show_check.test: Drop our test database to not affect this test if some test left it cause of failure. mysql-test/t/skip_name_resolve.test: Ignore columns with unpredictable values. mysql-test/t/sp-big.test: Add cleanup statement. mysql-test/t/sp-dynamic.test: Add cleanup statements. mysql-test/t/sp.test: Non-scalar values prohibited for assignment to SP-vars; polishing. mysql-test/t/type_newdecimal-big.test: Update type specification so that the variables can contain the large values used in the test. sql/field.cc: Extract create_field::init() to initialize an existing instance of create_field from new_create_field(). sql/field.h: Extract create_field::init() to initialize an existing instance of create_field from new_create_field(). sql/item.cc: - Introduce a new class: Item_sp_variable -- a base class of stored-routine-variables classes; - Introduce Item_case_expr -- an Item, which is used to access to the expression of CASE statement; sql/item.h: - Introduce a new class: Item_sp_variable -- a base class of stored-routine-variables classes; - Introduce Item_case_expr -- an Item, which is used to access to the expression of CASE statement; sql/item_func.cc: Pass the Field (instead of Item) for the return value of a function to the function execution routine. sql/item_func.h: Pass the Field (instead of Item) for the return value of a function to the function execution routine. sql/mysql_priv.h: Move create_virtual_tmp_table() out of sql_select.h. sql/sp.cc: Use create_result_field() instead of make_field(). sql/sp_head.cc: - Add a function to map enum_field_types to Item::Type; - Add sp_instr_push_case_expr instruction -- an instruction to push CASE expression into the active running context; - Add sp_instr_pop_case_expr instruction -- an instruction to pop CASE expression from the active running context; - Adapt the SP-execution code to using Fields instead of Items for SP-vars; - Use create_field structure for field description instead of a set of members. sql/sp_head.h: - Add a function to map enum_field_types to Item::Type; - Add sp_instr_push_case_expr instruction -- an instruction to push CASE expression into the active running context; - Add sp_instr_pop_case_expr instruction -- an instruction to pop CASE expression from the active running context; - Adapt the SP-execution code to using Fields instead of Items for SP-vars; - Use create_field structure for field description instead of a set of members. sql/sp_pcontext.cc: - Change rules to assign an index of SP-variable: use transparent index; - Add an operation to retrieve a list of defined SP-vars from the processing context recursively. sql/sp_pcontext.h: - Change rules to assign an index of SP-variable: use transparent index; - Add an operation to retrieve a list of defined SP-vars from the processing context recursively. sql/sp_rcontext.cc: - Change rules to assign an index of SP-variable: use transparent index; - Use a tmp virtual table to store SP-vars instead of Items; - Provide operations to work with CASE expresion. sql/sp_rcontext.h: - Change rules to assign an index of SP-variable: use transparent index; - Use a tmp virtual table to store SP-vars instead of Items; - Provide operations to work with CASE expresion. sql/sql_class.cc: - Reflect Item_splocal ctor changes; - Item_splocal::get_offset() has been renamed to get_var_idx(). sql/sql_class.h: Polishing. sql/sql_parse.cc: Extract create_field::init() to initialize an existing instance of create_field from new_create_field(). sql/sql_select.cc: Take care of BLOB columns in create_virtual_tmp_table(). sql/sql_select.h: Move create_virtual_tmp_table() out of sql_select.h. sql/sql_trigger.cc: Use boolean constants for boolean type instead of numerical ones. sql/sql_yacc.yy: Provide an instance of create_field for each SP-var. mysql-test/include/sp-vars.inc: The definitions of common-procedures, which are created under different circumstances. mysql-test/r/sp-vars.result: Result file for the SP-vars test. mysql-test/sp-vars.test: A new test for checking SP-vars functionality.
-
unknown authored
current SP tables locking make impossible view security" with main tree. mysql-test/r/sp-error.result: Fixed test result after merging fix for bug #11555 "Stored procedures: current SP tables locking make impossible view security" with main tree.
-
unknown authored
into mysql.com:/data0/mysqldev/my/mysql-5.0
-
unknown authored
configure.in: Bump version number following release clone-off
-
unknown authored
into mysql.com:/space/my/mysql-5.0
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-bg11555-2 mysql-test/r/view.result: Auto merged mysql-test/t/sp-error.test: Auto merged sql/sp_head.cc: Auto merged mysql-test/r/sp-error.result: SCCS merged
-
unknown authored
into mysql.com:/space/my/mysql-5.0
-
unknown authored
into mysql.com:/home/dlenev/src/mysql-5.0-bg11555-2 mysql-test/r/sp-error.result: Auto merged mysql-test/r/view.result: Auto merged mysql-test/t/view.test: Auto merged sql/sp_head.cc: Auto merged sql/sql_trigger.h: Auto merged sql/sp.cc: Manual merge. sql/sp.h: Manual merge. sql/sql_base.cc: Manual merge.
-
unknown authored
into mysql.com:/space/my/mysql-5.0-merg BitKeeper/triggers/post-commit: Auto merged
-
unknown authored
impossible view security". We should not expose names of tables which are explicitly or implicitly (via routine or trigger) used by view even if we find that they are missing. So during building of list of prelocked tables for statement we track which routines (and therefore tables for these routines) are used from views. We mark elements of LEX::routines set which correspond to routines used in views by setting Sroutine_hash_entry::belong_to_view member to point to TABLE_LIST object for topmost view which uses routine. We propagate this mark to all routines which are used by this routine and which we add to this set. We also mark tables used by such routine which we add to the list of tables for prelocking as belonging to this view. mysql-test/r/sp-error.result: Added test for bug #11555 "Stored procedures: current SP tables locking make impossible view security". mysql-test/r/view.result: We should not expose tables which are expicitly/implicitly used in view in check table statement. mysql-test/t/sp-error.test: Added test for bug #11555 "Stored procedures: current SP tables locking make impossible view security". mysql-test/t/view.test: Removed comment obsoleted by bugfix. sql/sp.cc: We should not expose names of tables which are explicitly or implicitly (via routine or trigger) used by view even if we find that they are missing. So during building of list of prelocked tables for statement we track which routines (and therefore tables for these routines) are used from views. We mark elements of LEX::routines set which correspond to routines used in views by setting Sroutine_hash_entry::belong_to_view member to point to TABLE_LIST object for topmost view which uses routine. We propagate this mark to all routines which are used by this routine and which we add to this set. We also mark tables used by such routine which we add to the list of tables for prelocking as belonging to this view. sql/sp.h: sp_cache_routines_and_add_tables_for_view()/for_triggers(): To be able to determine correctly uppermost view which uses this view/table with trigger we have to pass pointer to TABLE_LIST object instead of pointer to view's LEX or to Table_triggers_list object. sql/sp_head.cc: sp_head::add_used_tables_to_table_list(): Added new argument which allows to mark tables which are added to table list for prelocking as belonging to view (this allows properly hide names of tables which are used in routines used by views). sql/sp_head.h: sp_head::add_used_tables_to_table_list(): Added new argument which allows to mark tables which are added to table list for prelocking as belonging to view (this allows properly hide names of tables which are used in routines used by views). sql/sql_base.cc: open_tables(): sp_cache_routines_and_add_tables_for_view()/for_triggers() now accept pointer to table list element as last argument, this allows them to determine correctly uppermost view which uses this view/table with trigger. sql/sql_trigger.h: Table_triggers_list: sp_cache_routines_and_add_tables_for_triggers() now accept pointer to table list element as last argument, this allows to determine correctly uppermost view which uses this table with trigger.
-
unknown authored
mysql-test/t/sp.test: Auto merged sql/sp_head.cc: Auto merged sql/sql_parse.cc: Auto merged sql/sql_yacc.yy: Auto merged
-
unknown authored
into mysql.com:/home/timka/mysql/src/5.0-2486
-
unknown authored
into mysql.com:/space/my/mysql-4.1 BitKeeper/triggers/post-commit: Auto merged
-
unknown authored
mysql-test/r/innodb.result: Update result file
-
unknown authored
into mysql.com:/home/jimw/my/mysql-5.0-clean
-
- 06 Dec, 2005 10 commits
-
-
unknown authored
statement that generated a warning. (Bug #15510) sql-common/client.c: Reset warning_count in free_old_query(), don't stomp old value for it in cli_read_query_result(). tests/mysql_client_test.c: Add new regression test
-
unknown authored
into mysql.com:/home/jimw/my/mysql-5.0-clean sql/field.cc: Auto merged mysql-test/r/type_binary.result: Resolve conflicts mysql-test/t/type_binary.test: Resolve conflicts
-
unknown authored
prepared statement execute mysql-test/r/sp.result: Test results fixed: a fix for Bug#15392 mysql-test/t/sp.test: A test case for Bug#15392 "Server crashes during prepared statement execute". No test case for error in Item_func_set_user_var::update as the only possible one is OOM. sql/sp_head.cc: A fix for Bug#15392 "Server crashes during prepared statement execute": the bug was caused by mysql_change_db() call which was overwriting the error state of 'ret'. Later in the code, suv->fix_fields() would discover thd->net.report_error and return it without completing its work. As the return value of fix_fields() was ignored, the server would afterwards crash in suv->update(). The fix makes sure that a possible internal error is raised in reset_lex_and_exec_core and then is handled in sp_head::execute_procedure.
-
unknown authored
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
-
unknown authored
into mysql.com:/home/alexi/innodb-ss/mysql-5.0-ss52
-
unknown authored
to crash". Changes from snapshot innodb-5.0-ss52. Note that buf_block_t::index should be protected by btr_search_latch or an s-latch or x-latch on the index page. btr_search_drop_page_hash_index(): Read block->index while holding btr_search_latch and use the cached value in the loop. Remove some redundant assertions. Also fix 13778. When FOREIGN_KEY_CHECKS=0 we still need to check that datatypes between foreign key references are compatible. Also added test cases to 9802. innobase/btr/btr0sea.c: Changes from innodb-5.0-ss52 innobase/dict/dict0dict.c: Changes from innodb-5.0-ss52 innobase/dict/dict0load.c: Changes from innodb-5.0-ss52 innobase/include/buf0buf.h: Changes from innodb-5.0-ss52 innobase/include/dict0dict.h: Changes from innodb-5.0-ss52 innobase/include/dict0load.h: Changes from innodb-5.0-ss52 innobase/include/rem0cmp.h: Changes from innodb-5.0-ss52 innobase/rem/rem0cmp.c: Changes from innodb-5.0-ss52 innobase/row/row0mysql.c: Changes from innodb-5.0-ss52 mysql-test/r/innodb.result: Changes from innodb-5.0-ss52 mysql-test/t/innodb.test: Changes from innodb-5.0-ss52 sql/ha_innodb.cc: Changes from innodb-5.0-ss52 sql/ha_innodb.h: Changes from innodb-5.0-ss52
-
unknown authored
mysql-test/r/sp-error.result: Auto merged mysql-test/t/sp.test: Auto merged sql/sql_parse.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/share/errmsg.txt: SCCS merged
-
unknown authored
into mysql.com:/home/timka/mysql/src/5.0-2486 sql/item.cc: Auto merged sql/item.h: Auto merged sql/mysql_priv.h: Auto merged sql/sql_acl.cc: Auto merged sql/sql_base.cc: Auto merged sql/sql_lex.h: Auto merged sql/sql_parse.cc: Auto merged sql/sql_yacc.yy: Auto merged sql/table.cc: Auto merged
-
unknown authored
Changed variable type and added comment in sp.c. sql/sp.cc: Changed variable type and added comment. (Review fix)
-
unknown authored
internals@lists.mysql.com to reduce the noise on the internals list.
-