Commit graph

51445 commits

Author SHA1 Message Date
unknown
90477e23e2 BUG#32723 (grant3.test fails) can not be reproduced.
Enabling the test case.


mysql-test/t/disabled.def:
  Enable grant3.test.
2007-11-30 14:49:34 +03:00
unknown
9395421a14 A test case for BUG#26676: VIEW using old table schema in a session.
The following clarification should be made in The Manual:

Standard SQL is quite clear that, if new columns are added
to a table after a view on that table is created with
"select *", the new columns will not become part of the view.
In all cases, the view definition (view structure) is frozen
at CREATE time, so changes to the underlying tables do not
affect the view structure.


mysql-test/r/view.result:
  Update result file.
mysql-test/t/view.test:
  Add a test case for BUG#26676: VIEW using old table schema in a session.
2007-11-30 12:14:07 +03:00
unknown
87143063d3 Bug#23713 LOCK TABLES + CREATE TRIGGER + FLUSH TABLES WITH READ LOCK = deadlock
This bug is actually two bugs in one, one of which is CREATE TRIGGER under
LOCK TABLES and the other is CREATE TRIGGER under LOCK TABLES simultaneous
to a FLUSH TABLES WITH READ LOCK (global read lock). Both situations could
lead to a server crash or deadlock.

The first problem arises from the fact that when under LOCK TABLES, if the
table is in the set of locked tables, the table is already open and it doesn't
need to be reopened (not a placeholder). Also in this case, if the table is
not write locked, a exclusive lock can't be acquired because of a possible
deadlock with another thread also holding a (read) lock on the table. The
second issue arises from the fact that one should never wait for a global
read lock if it's holding any locked tables, because the global read lock
is waiting for these tables and this leads to a circular wait deadlock.

The solution for the first case is to check if the table is write locked
and upgraded the write lock to a exclusive lock and fail otherwise for non
write locked tables. Grabbin the exclusive lock in this case also means
to ensure that the table is opened only by the calling thread. The second
issue is partly fixed by not waiting for the global read lock if the thread
is holding any locked tables.

The second issue is only partly addressed in this patch because it turned
out to be much wider and also affects other DDL statements. Reported as
Bug#32395


mysql-test/r/trigger.result:
  Add test case result for Bug#23713
mysql-test/r/trigger_notembedded.result:
  Add test case result for Bug#23713
mysql-test/t/trigger.test:
  Add test case for Bug#23713
mysql-test/t/trigger_notembedded.test:
  Add test case for Bug#23713
sql/mysql_priv.h:
  Locally export wait_while_table_is_used and name_lock_locked_table
  and add flag to mysql_ha_rm_tables to signal that LOCK_open is locked.
sql/sql_base.cc:
  Introduce name_lock_locked_table function and match
  close_old_data_files function declaration and definition.
sql/sql_handler.cc:
  Add flag to mysql_ha_rm_tables to signal that LOCK_open is locked.
sql/sql_rename.cc:
  Fix mysql_ha_rm_tables caller.
sql/sql_table.cc:
  Export wait_while_table_is_used and assert that LOCK_open is locked
  and fix mysql_ha_rm_tables caller.
sql/sql_trigger.cc:
  Upgrade write locked tables to a exclusive lock and fail if
  the table is not write locked. Also, don't wait for the global
  read lock if under LOCK TABLES.
2007-11-29 09:42:26 -02:00
unknown
6627c212d0 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


sql/item_func.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql-common/client.c:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2007-11-28 09:08:31 -07:00
unknown
7e6cdd8b23 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


sql/sql_table.cc:
  Auto merged
2007-11-28 08:49:01 -07:00
unknown
b512270e54 Manual merge 2007-11-28 08:41:45 -07:00
unknown
f927182efe Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


sql/events.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  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/sql_table.cc:
  manual merge
2007-11-28 07:42:36 -07:00
unknown
ec8d8c8d02 Merge mysql.com:/Users/davi/mysql/bugs/31479-5.0
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime


mysql-test/r/lock_multi.result:
  Null merge.
mysql-test/t/lock_multi.test:
  Null merge.
sql/sql_table.cc:
  Null merge.
2007-11-28 12:33:51 -02:00
unknown
21fd6c0f1d Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge


sql/sql_yacc.yy:
  Auto merged
sql-common/client.c:
  Auto merged
2007-11-28 07:23:51 -07:00
unknown
aea86c6611 Merge mysql.com:/Users/davi/mysql/bugs/31479-5.0
into  mysql.com:/Users/davi/mysql/mysql-5.0-runtime
2007-11-28 10:49:30 -02:00
unknown
4b00263596 Bug#31479 Bad lock interaction if CREATE TABLE LIKE is killed
Kill of a CREATE TABLE source_table LIKE statement waiting for a
name-lock on the source table causes a bad lock interaction.

The mysql_create_like_table() has a bug that if the connection is
killed while waiting for the name-lock on the source table, it will
jump to the wrong error path and try to unlock the source table and
LOCK_open, but both weren't locked.

The solution is to simple return when the name lock request is killed,
it's safe to do so because no lock was acquired and no cleanup is needed.

Original bug report also contains description of other problems
related to this scenario but they either already fixed in 5.1 or
will be addressed separately (see bug report for details).


mysql-test/r/lock_multi.result:
  Add test case result for Bug#31479
mysql-test/t/lock_multi.test:
  Add test case for Bug#31479
sql/sql_table.cc:
  Rerturn TRUE when the lock gets killed.
2007-11-28 10:18:01 -02:00
unknown
df722475e7 Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg


mysql-test/t/disabled.def:
  Manual merge from 5.0.
2007-11-28 11:06:40 +01:00
unknown
c0ecd863b8 Bug#8693 Test 'rpl_log_pos' fails sometimes
Moved disabling to rpl suite.
Bug#32801 wait_timeout.test fails randomly
Disabled test case.


mysql-test/suite/rpl/t/disabled.def:
  Bug#8693 Test 'rpl_log_pos' fails sometimes
  Moved disabling to rpl suite.
2007-11-28 10:00:23 +01:00
unknown
7991e6a61d Bug#29149 Test "kill" fails on Windows
Disabled test case.
2007-11-28 09:48:06 +01:00
unknown
eef1415815 Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-11-28 09:04:49 +01:00
unknown
61fcfc6782 Error number increased; fixing broken number. 2007-11-28 09:03:21 +01:00
unknown
f0ac4a74df Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg


client/mysql.cc:
  Auto merged
mysql-test/r/archive.result:
  Auto merged
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/t/archive.test:
  Auto merged
mysql-test/t/ctype_uca.test:
  Auto merged
mysql-test/t/ctype_ucs.test:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
mysql-test/t/disabled.def:
  Manual merge from 5.0
mysql-test/t/subselect.test:
  Manual merge from 5.0
2007-11-27 20:30:03 +01:00
unknown
30aee30b0d Merge stella.local:/home2/mydev/mysql-5.1-amain
into  stella.local:/home2/mydev/mysql-5.1-axmrg


include/my_base.h:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/suite/ndb/t/disabled.def:
  Auto merged
mysql-test/t/partition.test:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
client/mysql.cc:
  Manual merge
mysql-test/suite/rpl/t/disabled.def:
  Manual merge
2007-11-27 19:29:10 +01:00
unknown
8a7f5a1d7b Merge stella.local:/home2/mydev/mysql-5.0-ateam
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-11-27 18:42:59 +01:00
unknown
1a73853c04 after-merge fixup: archive test/result adjusted. 2007-11-27 21:30:00 +04:00
unknown
76468de853 Merge stella.local:/home2/mydev/mysql-5.0-ateam
into  stella.local:/home2/mydev/mysql-5.0-axmrg
2007-11-27 17:34:03 +01:00
unknown
ae5ff26d85 Bug#8693 Test 'rpl_log_pos' fails sometimes
Disabled the test case.
2007-11-27 17:28:55 +01:00
unknown
061ac49799 Merge mysql.com:/home/ram/work/mysql-5.0-engines
into  mysql.com:/home/ram/work/b30495/b30495.5.0
2007-11-27 20:03:09 +04:00
unknown
8bfcdce04d Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


sql/mysqld.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2007-11-27 09:03:04 -07:00
unknown
9f1043b5d1 Merge mysql.com:/home/ram/work/mysql-5.1-engines
into  mysql.com:/home/ram/work/b30495/b30495.5.1
2007-11-27 20:00:50 +04:00
unknown
77ab800e77 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-rt-merge


sql/mysqld.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2007-11-27 08:56:43 -07:00
unknown
6288fde222 Merge stella.local:/home2/mydev/mysql-5.0-amain
into  stella.local:/home2/mydev/mysql-5.0-axmrg


sql/item_cmpfunc.cc:
  Auto merged
2007-11-27 16:24:44 +01:00
unknown
51e24c026d Merge mysql.com:/home/ram/work/mysql-5.0-engines
into  mysql.com:/home/ram/work/b30495/b30495.5.0
2007-11-27 15:15:28 +04:00
unknown
54953ec25c Disabling several tests that fail and reported as errors.
mysql-test/suite/ndb/t/disabled.def:
  Disabling failing tests.
mysql-test/suite/rpl/t/disabled.def:
  Disabling failing tests.
mysql-test/suite/rpl/t/rpl_ssl.test:
  Disabling part of test that fails.
2007-11-27 11:02:00 +01:00
unknown
42853d172c after-merge fix:
- archive test/result adjusted.
  - OPTIMIZE/ANALYZE PARTITION EXTENDED test case added.


mysql-test/r/archive.result:
  after-merge fix:
    - archive test/result adjusted.
mysql-test/r/partition.result:
  after-merge fix:
    - test case added.
mysql-test/t/archive.test:
  after-merge fix:
    - archive test/result adjusted.
mysql-test/t/partition.test:
  after-merge fix:
    - test case added.
2007-11-27 12:28:08 +04:00
unknown
8784957e14 Bug#32754 - InnoDB tests do not prepare or clean up correctly
Some test cases were missing preparation to deal with failed
predecessor test cases.

Added preparation (drop table if exists) to some test cases.


mysql-test/include/innodb_rollback_on_timeout.inc:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Added preparation (drop table if exists).
mysql-test/r/innodb-semi-consistent.result:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Fixed test result.
mysql-test/r/innodb-ucs2.result:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Fixed test result.
mysql-test/r/innodb_mysql.result:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Fixed test result.
mysql-test/r/innodb_timeout_rollback.result:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Fixed test result.
mysql-test/t/innodb-semi-consistent.test:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Added preparation (drop table if exists).
mysql-test/t/innodb-ucs2.test:
  Bug#32754 - InnoDB tests do not prepare or clean up correctly
  Added preparation (drop table if exists).
2007-11-27 09:25:45 +01:00
unknown
7eb5a83de6 Merge mysql.com:/home/ram/work/b30495/b30495.5.0
into  mysql.com:/home/ram/work/b30495/b30495.5.1


mysql-test/r/analyze.result:
  Auto merged
mysql-test/t/analyze.test:
  Auto merged
sql/sql_yacc.yy:
  5.0 -> 5.1 manual merging (see bug #30495: optimize table t1,t2,t3 extended errors):
  CHECK options disabled for ANALYZE/OPTIMIZE PARTITION.
2007-11-27 10:14:46 +04:00
unknown
7917c7c060 Merge pilot.mysql.com:/data/msvensson/mysql/bug32429/my50-bug32429
into  pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-runtime
2007-11-26 20:08:32 +01:00
unknown
ec3976ed3e Remove disabling of testcases 2007-11-26 20:05:52 +01:00
unknown
53cf19216f Bug#25146 Some warnings/errors not shown when using --show-warnings
- Additional patch to fix compiler warnings


client/mysql.cc:
  Initialize warnings to 0 to avid compiler warning
  Call 'print_warnings' also when error occured
mysql-test/r/mysql.result:
  Change test to make is possible to see that second set of warnings
  are from second invocation of mysql
mysql-test/t/mysql.test:
  Change test to make is possible to see that second set of warnings
  are from second invocation of mysql
2007-11-26 19:50:43 +01:00
unknown
835dcc0971 Revert 2007-11-26 19:42:07 +01:00
unknown
6b15ed1c1d Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-11-26 19:33:01 +01:00
unknown
f1ad502ae1 Merge adventure.(none):/home/thek/Development/cpp/bug16470/my51-bug16470
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime


mysql-test/r/grant.result:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_parse.cc:
  manual merge
2007-11-26 19:31:41 +01:00
unknown
58316f2964 Merge stella.local:/home2/mydev/mysql-5.0-axmrg
into  stella.local:/home2/mydev/mysql-5.1-axmrg


mysql-test/r/delayed.result:
  Auto merged
mysql-test/t/delayed.test:
  Auto merged
2007-11-26 19:18:21 +01:00
unknown
6cbb7d2f76 Bug#20830 - INSERT DELAYED does not honour SET INSERT_ID
Bug#20627 - INSERT DELAYED does not honour auto_increment_* variables
Fixed wrong variable assignment.
2007-11-26 19:16:23 +01:00
unknown
08e232b9e8 Merge mysql.com:/Users/davi/mysql/bugs/29592-5.0
into  mysql.com:/Users/davi/mysql/bugs/29592-5.1


include/mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysql/libmysql.def:
  Auto merged
libmysqld/libmysqld.def:
  Auto merged
include/mysql_h.ic:
  Update ABI check file.
2007-11-26 16:10:26 -02:00
unknown
1ddb4722f4 Bug#16470 crash on grant if old grant tables
Loading 4.1 into 5.0 or 5.1 failed silently because procs_priv table missing.
This caused the server to crash on any attempt to store new grants because
of uninitialized structures.

This patch breaks up the grant loading function into two phases to allow
for procs_priv table to fail with an warning instead of crashing the server.


mysql-test/r/grant.result:
  Test case
mysql-test/t/grant.test:
  Test case making sure that FLUSH PRIVILEGES doesn't crash the server if
  procs_priv is removed.
sql/sql_acl.cc:
  - Refactored grant_reload into two phases: 1. open and lock tables_priv and 
    columns_priv tables, read the data, close tables. 2. open and lock
    procs_priv, read data, close table. Since the tables are independant of
    each other there will be no race conditions and it will be possible to
    handle situations where the procs_priv table isn't present.
  - Refactored the helper function grant_load into new grant_load (without
    procs_priv table) and grant_load_procs_priv.
sql/sql_parse.cc:
  - Changed comment style to doxygen style.
2007-11-26 19:09:40 +01:00
unknown
23f2d8739b Moved disabling of tests to the respective suites. 2007-11-26 17:31:53 +01:00
unknown
2823d879fc Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.0-runtime
2007-11-26 17:21:15 +01:00
unknown
b8a19c228c Bug#29592 SQL Injection issue
Remove the mysql_odbc_escape_string() function. The function
has multi-byte character escaping issues, doesn't honor the
NO_BACKSLASH_ESCAPES mode and is not used anymore by the
Connector/ODBC as of 3.51.17.


include/mysql.h:
  Remove mysql_odbc_escape_string() prototype.
include/mysql_h.ic:
  Update abi check file, mostly line changes and mysql_odbc_escape_string
  removal.
libmysql/libmysql.c:
  Remove mysql_odbc_escape_string() body.
libmysql/libmysql.def:
  Remove mysql_odbc_escape_string()
libmysqld/libmysqld.def:
  Remove mysql_odbc_escape_string()
2007-11-26 14:09:37 -02:00
unknown
bc60aa3228 Fix warning about possibly uninitialized variable "warnings" 2007-11-26 16:45:58 +01:00
unknown
747049ccb8 Merge bk-internal:/home/bk/mysql-5.1-rpl-merge
into  pilot.mysql.com:/data/msvensson/mysql/mysql-5.1-rpl-merge
2007-11-26 16:42:19 +01:00
unknown
a440fd39ef Add suppressions for expected warning messages that appears in
slave's error log when running rpl_extraColmaster_*.test
2007-11-26 16:31:35 +01:00
unknown
aa2030d647 Disabling testcases that have warnings that PB cannot handle. 2007-11-26 16:20:37 +01:00
unknown
75ea7c7e66 Disable combinations processing until next version 2007-11-26 16:19:34 +01:00