summaryrefslogtreecommitdiff
path: root/mysql-test/t/ps.test
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup the test case for Bug#32030 "DELETE does not return an error andkostja@bodhi.(none)2007-11-021-1/+2
| | | | deletes rows if error evaluating WHERE"
* A fix for Bug#32030 "DELETE does not return an error and deletes rows if kostja@bodhi.(none)2007-11-021-0/+33
| | | | | | | | | | | | error evaluating WHERE" DELETE with a subquery in WHERE clause would sometimes ignore subquery evaluation error and proceed with deletion. The fix is to check for an error after evaluation of the WHERE clause in DELETE. Addressed review comments.
* Merge pilot.(none):/data/msvensson/mysql/mysql-5.0-maintmsvensson@pilot.(none)2007-08-291-3/+0
|\ | | | | | | into pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint
| * Remove unportable use of "system rm"msvensson@pilot.(none)2007-08-291-3/+0
| |
| * Merge mysql.com:/home/ram/work/mysql-5.0-maintramil/ram@ramil.myoffice.izhnet.ru2007-05-231-0/+8
| |\ | | | | | | | | | into mysql.com:/home/ram/work/b28509/b28509.5.0
| * \ Merge bk@192.168.21.1:mysql-5.0holyfoot/hf@mysql.com/hfmain.(none)2007-05-181-0/+18
| |\ \ | | | | | | | | | | | | into mysql.com:/d2/hf/mrg/mysql-5.0-opt
* | | | WL#3984 (Revise locking of mysql.general_log and mysql.slow_log)malff/marcsql@weblab.(none)2007-07-271-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#25422 (Hang with log tables) Bug 17876 (Truncating mysql.slow_log in a SP after using cursor locks the thread) Bug 23044 (Warnings on flush of a log table) Bug 29129 (Resetting general_log while the GLOBAL READ LOCK is set causes a deadlock) Prior to this fix, the server would hang when performing concurrent ALTER TABLE or TRUNCATE TABLE statements against the LOG TABLES, which are mysql.general_log and mysql.slow_log. The root cause traces to the following code: in sql_base.cc, open_table() if (table->in_use != thd) { /* wait_for_condition will unlock LOCK_open for us */ wait_for_condition(thd, &LOCK_open, &COND_refresh); } The problem with this code is that the current implementation of the LOGGER creates 'fake' THD objects, like - Log_to_csv_event_handler::general_log_thd - Log_to_csv_event_handler::slow_log_thd which are not associated to a real thread running in the server, so that waiting for these non-existing threads to release table locks cause the dead lock. In general, the design of Log_to_csv_event_handler does not fit into the general architecture of the server, so that the concept of general_log_thd and slow_log_thd has to be abandoned: - this implementation does not work with table locking - it will not work with commands like SHOW PROCESSLIST - having the log tables always opened does not integrate well with DDL operations / FLUSH TABLES / SET GLOBAL READ_ONLY With this patch, the fundamental design of the LOGGER has been changed to: - always open and close a log table when writing a log - remove totally the usage of fake THD objects - clarify how locking of log tables is implemented in general. See WL#3984 for details related to the new locking design. Additional changes (misc bugs exposed and fixed): 1) mysqldump which would ignore some tables in dump_all_tables_in_db(), but forget to ignore the same in dump_all_views_in_db(). 2) mysqldump would also issue an empty "LOCK TABLE" command when all the tables to lock are to be ignored (numrows == 0), instead of not issuing the query. 3) Internal errors handlers could intercept errors but not warnings (see sql_error.cc). 4) Implementing a nested call to open tables, for the performance schema tables, exposed an existing bug in remove_table_from_cache(), which would perform: in_use->some_tables_deleted=1; against another thread, without any consideration about thread locking. This call inside remove_table_from_cache() was not required anyway, since calling mysql_lock_abort() takes care of aborting -- cleanly -- threads that might hold a lock on a table. This line (in_use->some_tables_deleted=1) has been removed.
* | | | Merge pilot.(none):/data/msvensson/mysql/bug28369/my51-bug28369msvensson@pilot.(none)2007-06-071-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | into pilot.(none):/data/msvensson/mysql/mysql-5.1-new-maint
| * | | | Bug#28369 rpl test cases fail with binlog disabledmsvensson@pilot.(none)2007-06-071-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | - Additional tests in 5.1 that need binlog - Mark more test to need binlog
* | | | | Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51tsmith@quadxeon.mysql.com2007-06-051-0/+194
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | into quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/jun05/51
| * | | | 5.1 version of a fix and test cases for bugs:kostja@vajra.(none)2007-05-281-0/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#4968 ""Stored procedure crash if cursor opened on altered table" Bug#6895 "Prepared Statements: ALTER TABLE DROP COLUMN does nothing" Bug#19182 "CREATE TABLE bar (m INT) SELECT n FROM foo; doesn't work from stored procedure." Bug#19733 "Repeated alter, or repeated create/drop, fails" Bug#22060 "ALTER TABLE x AUTO_INCREMENT=y in SP crashes server" Bug#24879 "Prepared Statements: CREATE TABLE (UTF8 KEY) produces a growing key length" (this bug is not fixed in 5.0) Re-execution of CREATE DATABASE, CREATE TABLE and ALTER TABLE statements in stored routines or as prepared statements caused incorrect results (and crashes in versions prior to 5.0.25). In 5.1 the problem occured only for CREATE DATABASE, CREATE TABLE SELECT and CREATE TABLE with INDEX/DATA DIRECTOY options). The problem of bugs 4968, 19733, 19282 and 6895 was that functions mysql_prepare_table, mysql_create_table and mysql_alter_table are not re-execution friendly: during their operation they modify contents of LEX (members create_info, alter_info, key_list, create_list), thus making the LEX unusable for the next execution. In particular, these functions removed processed columns and keys from create_list, key_list and drop_list. Search the code in sql_table.cc for drop_it.remove() and similar patterns to find evidence. The fix is to supply to these functions a usable copy of each of the above structures at every re-execution of an SQL statement. To simplify memory management, LEX::key_list and LEX::create_list were added to LEX::alter_info, a fresh copy of which is created for every execution. The problem of crashing bug 22060 stemmed from the fact that the above metnioned functions were not only modifying HA_CREATE_INFO structure in LEX, but also were changing it to point to areas in volatile memory of the execution memory root. The patch solves this problem by creating and using an on-stack copy of HA_CREATE_INFO in mysql_execute_command. Additionally, this patch splits the part of mysql_alter_table that analizes and rewrites information from the parser into a separate function - mysql_prepare_alter_table, in analogy with mysql_prepare_table, which is renamed to mysql_prepare_create_table.
* | | | | Merge mysql.com:/home/ram/work/b28509/b28509.5.0ramil/ram@ramil.myoffice.izhnet.ru2007-05-231-0/+8
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | into mysql.com:/home/ram/work/b28509/b28509.5.1
| * | | Fox for bug #28509: strange behaviour: passing a decimal value to PSramil/ram@mysql.com/ramil.myoffice.izhnet.ru2007-05-181-0/+8
| | | | | | | | | | | | | | | | Set parameter's type to Item::DECIMAL_ITEM assigning a decimal value.
* | | | mergingholyfoot/hf@mysql.com/hfmain.(none)2007-05-181-109/+0
| | | |
* | | | Merge bk@192.168.21.1:mysql-5.1holyfoot/hf@hfmain.(none)2007-05-181-0/+108
|\ \ \ \ | | | | | | | | | | | | | | | into mysql.com:/d2/hf/mrg/mysql-5.1-opt
| * \ \ \ Merge mysql.com:/d2/hf/mrg/mysql-5.0-optholyfoot/hf@hfmain.(none)2007-05-181-0/+108
| |\ \ \ \ | | | |_|/ | | |/| | | | | | | into mysql.com:/d2/hf/mrg/mysql-5.1-opt
| | * | | Post-merge fix.igor@olga.mysql.com2007-05-141-0/+18
| | |/ /
* | | | Merge vajra.(none):/opt/local/work/mysql-5.0-runtimekostja@vajra.(none)2007-05-111-3/+3
|\ \ \ \ | |/ / / |/| | / | | |/ | |/| into vajra.(none):/opt/local/work/mysql-5.1-runtime
| * | Cleanup: now that we have Lex_input_stream, finish the transitionkostja@vajra.(none)2007-05-111-3/+3
| |/ | | | | | | by moving yet another relevant flag to it from struct LEX.
| * Merge bk-internal.mysql.com:/home/bk/mysql-5.0dlenev@mockturtle.local2007-01-241-0/+31
| |\ | | | | | | | | | into mockturtle.local:/home/dlenev/src/mysql-5.0-merge
| * | Rearrange disable_warnings to enclose the warning emitters properly.cmiller@zippy.cornsilk.net2007-01-191-2/+2
| | |
* | | Fix spelling (recursivity -> recursion)kostja@bodhi.local2007-03-271-1/+1
| | |
* | | Merge moonlight.home:/home/tomash/src/mysql_ab/mysql-5.1kroki/tomash@moonlight.home2007-03-071-0/+57
|\ \ \ | | | | | | | | | | | | into moonlight.home:/home/tomash/src/mysql_ab/mysql-5.1-bug18326
| * | | BUG#18326: Do not lock table for writing during prepare of statementkroki/tomash@moonlight.home2007-03-071-0/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | During statement prepare phase the tables were locked as if the statement is being executed, however this is not necessary. The solution is to not lock tables on statement prepare phase. Opening tables is enough to prevent DDL on them, and during statement prepare we do not access nor modify any data.
* | | | Fixed compiler warningsmonty@mysql.com/narttu.mysql.fi2007-02-231-3/+3
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixed compile-pentium64 scripts Fixed wrong estimate of update_with_key_prefix in sql-bench Merge bk-internal.mysql.com:/home/bk/mysql-5.1 into mysql.com:/home/my/mysql-5.1 Fixed unsafe define of uint4korr() Fixed that --extern works with mysql-test-run.pl Small trivial cleanups This also fixes a bug in counting number of rows that are updated when we have many simultanous queries Move all connection handling and command exectuion main loop from sql_parse.cc to sql_connection.cc Split handle_one_connection() into reusable sub functions. Split create_new_thread() into reusable sub functions. Added thread_scheduler; Preliminary interface code for future thread_handling code. Use 'my_thread_id' for internal thread id's Make thr_alarm_kill() to depend on thread_id instead of thread Make thr_abort_locks_for_thread() depend on thread_id instead of thread In store_globals(), set my_thread_var->id to be thd->thread_id. Use my_thread_var->id as basis for my_thread_name() The above changes makes the connection we have between THD and threads more soft. Added a lot of DBUG_PRINT() and DBUG_ASSERT() functions Fixed compiler warnings Fixed core dumps when running with --debug Removed setting of signal masks (was never used) Made event code call pthread_exit() (portability fix) Fixed that event code doesn't call DBUG_xxx functions before my_thread_init() is called. Made handling of thread_id and thd->variables.pseudo_thread_id uniform. Removed one common 'not freed memory' warning from mysqltest Fixed a couple of usage of not initialized warnings (unlikely cases) Suppress compiler warnings from bdb and (for the moment) warnings from ndb
* | | Merge bk-internal.mysql.com:/home/bk/mysql-5.1dlenev@mockturtle.local2007-01-241-0/+31
|\ \ \ | | | | | | | | | | | | into mockturtle.local:/home/dlenev/src/mysql-5.1-merge
| * \ \ Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg24491dlenev@mockturtle.local2007-01-241-0/+31
| |\ \ \ | | | |/ | | |/| | | | | into mockturtle.local:/home/dlenev/src/mysql-5.1-bg24491
| | * | Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtimedlenev@mockturtle.local2007-01-231-0/+31
| | |\ \ | | | | | | | | | | | | | | | into mockturtle.local:/home/dlenev/src/mysql-5.0-bg24491
| | | * | Proposed fix for bug#24491 "using alias from source table in insert ...dlenev@mockturtle.local2007-01-231-0/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | on duplicate key". INSERT ... SELECT ... ON DUPLICATE KEY UPDATE which was used in stored routine or as prepared statement and which in its ON DUPLICATE KEY clause erroneously tried to assign value to a column mentioned only in its SELECT part was properly emitting error on the first execution but succeeded on the second and following executions. Code which is responsible for name resolution of fields mentioned in UPDATE clause (e.g. see select_insert::prepare()) modifies table list and Name_resolution_context used in this process. It uses Name_resolution_context_state::save_state/restore_state() to revert these modifications. Unfortunately those two methods failed to revert properly modifications to TABLE_LIST::next_name_resolution_table and this broke name resolution process for successive executions. This patch fixes Name_resolution_context_state::save_state/restore_state() in such way that it properly handles TABLE_LIST::next_name_resolution_table.
* | | | | Add missing version delimiter.cmiller@zippy.cornsilk.net2007-01-191-0/+2
| | | | |
* | | | | Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maintcmiller@zippy.cornsilk.net2007-01-191-4/+0
|\ \ \ \ \ | |/ / / / |/| | | / | | |_|/ | |/| | into zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
| * | | The rpl tree added a test case, and another source added a warning,cmiller@zippy.cornsilk.net2007-01-191-0/+2
| |/ / | | | | | | | | | | | | and combined, they add a platform-specific warning. The warnings are not the goal of the test, in any case.
| * | Fix a ps.test failure in 5.0-runtime tree.kostja@bodhi.local2007-01-171-2/+11
| | |
| * | Merge bodhi.local:/opt/local/work/mysql-4.1-runtimekostja@bodhi.local2007-01-161-0/+5
| |\ \ | | | | | | | | | | | | into bodhi.local:/opt/local/work/mysql-5.0-runtime
| | * | A fix for the broken 4.1-runtime tree.kostja@bodhi.local2007-01-161-0/+5
| | | |
| * | | Manual merge.kostja@bodhi.local2007-01-151-1/+142
| |\ \ \
| | * | | Post-merge fixes for Bug#4968 "Stored procedure crash if cursor opened kostja@bodhi.local2006-12-121-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | on altered table" and Bug#19733 "Repeated alter, or repeated create/drop, fails"
| | * | | Merge bodhi.local:/opt/local/work/mysql-4.1-4968kostja@bodhi.local2006-12-121-1/+71
| | |\ \ \ | | | |/ / | | | | / | | | |/ | | |/| into bodhi.local:/opt/local/work/mysql-5.0-4968-pull-from-4.1
| | | * A fix and test cases forkostja@bodhi.local2006-12-081-0/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bug#4968 "Stored procedure crash if cursor opened on altered table" Bug#19733 "Repeated alter, or repeated create/drop, fails" Bug#19182 "CREATE TABLE bar (m INT) SELECT n FROM foo; doesn't work from stored procedure." Bug#6895 "Prepared Statements: ALTER TABLE DROP COLUMN does nothing" Bug#22060 "ALTER TABLE x AUTO_INCREMENT=y in SP crashes server" Test cases for bugs 4968, 19733, 6895 will be added in 5.0. Re-execution of CREATE DATABASE, CREATE TABLE and ALTER TABLE statements in stored routines or as prepared statements caused incorrect results (and crashes in versions prior to 5.0.25). In 5.1 the problem occured only for CREATE DATABASE, CREATE TABLE SELECT and CREATE TABLE with INDEX/DATA DIRECTOY options). The problem of bugs 4968, 19733, 19282 and 6895 was that functions mysql_prepare_table, mysql_create_table and mysql_alter_table were not re-execution friendly: during their operation they used to modify contents of LEX (members create_info, alter_info, key_list, create_list), thus making the LEX unusable for the next execution. In particular, these functions removed processed columns and keys from create_list, key_list and drop_list. Search the code in sql_table.cc for drop_it.remove() and similar patterns to find evidence. The fix is to supply to these functions a usable copy of each of the above structures at every re-execution of an SQL statement. To simplify memory management, LEX::key_list and LEX::create_list were added to LEX::alter_info, a fresh copy of which is created for every execution. The problem of crashing bug 22060 stemmed from the fact that the above metnioned functions were not only modifying HA_CREATE_INFO structure in LEX, but also were changing it to point to areas in volatile memory of the execution memory root. The patch solves this problem by creating and using an on-stack copy of HA_CREATE_INFO (note that code in 5.1 already creates and uses a copy of this structure in mysql_create_table()/alter_table(), but this approach didn't work well for CREATE TABLE SELECT statement).
* | | | Merge mysql.com:/home/gluh/MySQL/Merge/5.0-optgluh@eagle.(none)2007-01-101-0/+5
|\ \ \ \ | |/ / / | | | | | | | | into mysql.com:/home/gluh/MySQL/Merge/5.1-opt
| * | | Fixed bug #25027.igor@olga.mysql.com2006-12-131-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | Blocked evaluation of constant objects of the classes Item_func_is_null and Item_is_not_null_test at the prepare phase in the cases when the objects used subqueries.
* | | | Merge macbook.local:/Users/kgeorge/mysql/work/mysql-5.0-optgkodinov/kgeorge@macbook.local2007-01-081-0/+18
|\ \ \ \ | |/ / / | | | | | | | | into macbook.local:/Users/kgeorge/mysql/work/merge-5.1-opt
| * | | Fixed bug #25027.igor@olga.mysql.com2006-12-131-0/+18
| | | | | | | | | | | | | | | | | | | | | | | | Removed an assertion that was not valid for the cases where the query in a prepared statement contained a single-row non-correlated subquery that was used as an argument of the IS NULL predicate.
| * | | Merge dl145s.mysql.com:/data0/bk/team_tree_merge/mysql-5.0gkodinov@dl145s.mysql.com2006-11-301-0/+23
| |\ \ \ | | |/ / | |/| | | | | | into dl145s.mysql.com:/data0/bk/team_tree_merge/MERGE/mysql-5.0-opt
* | | | Merge mysql.com:/d2/hf/clean/my51-cleanholyfoot/hf@hfmain.(none)2006-12-311-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | into mysql.com:/d2/hf/common/my51-common
| * | | | WL#3630 (add embedded server to pushbuild)holyfoot/hf@mysql.com/hfmain.(none)2006-12-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5.1-related fixes libmysqld/Makefile.am fixed to recompile and link ha_*.cc files that keep dependance on THD structure. Minor fixes to make tests working.
* | | | | Merge neptunus.(none):/home/msvensson/mysql/mysql-5.1msvensson@neptunus.(none)2006-12-041-2/+2
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | into neptunus.(none):/home/msvensson/mysql/mysql-5.1-maint
| * | | | Merge amd64.:D:/src/mysql-5.1-maintiggy/Administrator@amd64.2006-11-171-14/+0
| |\ \ \ \ | | | | | | | | | | | | | | | | | | into amd64.:D:/src/mysql-5.1-maint_bug23983
| | * | | | Bug#23983 ps.test fails to open shared library.iggy/Administrator@amd64.2006-11-171-14/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - When a shared library argument is supplied, it's checked for an OS specific directory separator. The expected error is different depending on the separator used. Created OS specific versions of these tests.
| * | | | | Bug#16456 RBR: rpl_sp.test expects query to fail, but passes in RBRtnurnberg@salvation.intern.azundris.com2006-11-171-2/+2
| |/ / / / | | | | | | | | | | | | | | | | | | | | Fix tests for new behaviour: an error is thrown if a NON DETERMINISTIC stored function (SF) is called during statement-based replication (SBR).