Commit graph

39583 commits

Author SHA1 Message Date
Georgi Kodinov
da7d7fcd1e fixed a warning 2009-02-20 11:42:35 +02:00
Georgi Kodinov
39dc3623b3 Bug #42419: test suite fix
Moved the test case for the bug into a separate file (and restored the 
original innodb_mysql test setup).
Used the new wait_show_condition test macro to avoid the usage of sleep
2009-02-20 11:12:06 +02:00
Georgi Kodinov
759edca6ac merged bug 42419 to 5.0-bugteam 2009-02-19 18:26:19 +02:00
Georgi Kodinov
b2c161c192 Bug #42419: Server crash with "Pure virtual method called" on two concurrent
connections
The problem is that tables can enter open table cache for a thread without 
being properly cleaned up. This can happen if make_join_statistics() fails 
to read a const table because of e.g. a deadlock. It does set a member of 
TABLE structure to a value it allocates, but doesn't clean-up this setting 
on error nor does it set the rest of the members in JOIN to allow for 
automatic cleanup.
As a result when such an error occurs and the next statement depends re-uses 
the table from the open tables cache it will get it with this 
TABLE::reginfo.join_tab pointing to a memory area that's freed.
Fixed by making sure make_join_statistics() cleans up TABLE::reginfo.join_tab 
on error.
2009-02-19 17:30:03 +02:00
Sergey Glukhov
6a9de01a95 Bug#37601 Cast Is Not Done On Row Comparison
In case of ROW item each compared pair does not
check if argumet collations can be aggregated and
thus appropiriate item conversion does not happen.
The fix is to add the check and convertion for ROW
pairs.
2009-02-19 17:20:44 +04:00
Alexey Kopytov
ae9ea0414c Automerge. 2009-02-19 12:02:11 +03:00
Alexey Kopytov
c4f0c2d38c Fix for bug #41078: With CURSOR_TYPE_READ_ONLY mysql_stmt_fetch()
returns short string value. 
 
Multibyte character sets were not taken into account when 
calculating max_length in Item_param::convert_str_value(). As a 
result, string parameters of a prepared statement could be 
truncated later when calculating string length in characters by 
dividing length in bytes by the charset's mbmaxlen value (e.g. in 
Field_varstring::store()). 
 
Fixed by taking charset's mbmaxlen into account when calculating 
max_length in Item_param::convert_str_value().
2009-02-19 11:49:35 +03:00
Sergey Glukhov
49243dd212 automerge 2009-02-18 15:53:30 +04:00
Georgi Kodinov
2202d5b7f5 Bug #26724: mysql command line client, ignores input to internal cmd after space
Removed the misleading "NOTE:" from the \h command.
2009-02-18 12:18:38 +02:00
Sergey Glukhov
7acaece2ba Bug#25830 SHOW TABLE STATUS behaves differently depending on table name(for 5.0 only)
replace wild_case_compare with my_wildcmp which is multibyte safe function
2009-02-17 18:22:48 +04:00
Georgi Kodinov
209cc33609 merged 5.1-main -> 5.1-bugteam 2009-02-16 12:54:03 +02:00
Alexey Kopytov
b615d8bcb4 Fixed PB failures on IA64 hosts introduced by the patch for bug #21205. 2009-02-15 12:26:08 +03:00
Alexey Kopytov
831914b848 Added missing DROP TABLE to type_float.result. 2009-02-14 20:12:14 +03:00
Alexey Kopytov
811ace8364 Fixed several test failures in the funcs_1 suite introduced by the patch for bug #21205. 2009-02-14 18:58:07 +03:00
Alexey Kopytov
c41a700550 Fixed bdb_gis and ndb_gis test failures in PB introduced by the patch for bug #21205. 2009-02-14 18:36:57 +03:00
Alexey Kopytov
9d21ff1148 Merge from dev tree. 2009-02-14 12:09:35 +03:00
Davi Arnaut
9cce8f40eb Remove test case for bug 40264.
Dirty close tricky does not work on Windows.
2009-02-13 17:26:20 -02:00
Alexey Kopytov
ccd5a4dc46 Merge from dev tree. 2009-02-13 19:17:07 +03:00
Matthias Leich
2a162ef3b1 Merge actual tree -> local GCA tree, no conflicts 2009-02-13 13:55:29 +01:00
Georgi Kodinov
ecae2a57e1 merged 5.0-bugteam to a working tree 2009-02-12 16:39:33 +02:00
Georgi Kodinov
074dade352 Bug #33813: Schema names are case-sensitive in DROP FUNCTION
Additional fix:
 1. Revert the unification of DROP FUNCTION
and DROP PROCEDURE, because DROP FUNCTION can be used to
drop UDFs (that have a non-qualified name and don't require
database name to be present and valid).
 2. Fixed the case sensitivity problem by adding a call to 
check_db_name() (similar to the sp_name production).
2009-02-12 16:36:43 +02:00
Sergey Vojtovich
659a2183dd BUG#36737 - having + full text operator crashes mysql
MATCH() function accepts column list as an argument. It was possible to override
this requirement with aliased non-column select expression. Which results in
server crash.

With this fix aliased non-column select expressions are not accepted by MATCH()
function, returning an error.
2009-02-12 13:49:44 +04:00
Georgi Kodinov
4f0c557340 merged bug 33813 to 5.0-bugteam 2009-02-12 11:27:06 +02:00
Georgi Kodinov
f0dc3a92d5 changed the tree id pending a merge of 5.0-bugteam -> 5.0-main 2009-02-11 12:04:40 +02:00
Georgi Kodinov
1a7b0ec920 fixed a libedit compilation problem 2009-02-10 20:19:03 +02:00
Georgi Kodinov
773b18e69a From jperkin : Merge libedit 2.11 and related files,
based on NetBSD CVS as of 2009/02/06 20:09:00.
2009-02-10 14:39:14 +02:00
Alexey Kopytov
a715b70278 Fix for bug #41868: crash or memory overrun with concat + upper,
date_format functions

String::realloc() did not check whether the existing string data fits in
the newly allocated buffer for cases when reallocating a String object
with external buffer (i.e.alloced == FALSE).  This could lead to memory
overruns in some cases.
2009-02-10 15:38:56 +03:00
Georgi Kodinov
b57c541425 Bug #33813: Schema names are case-sensitive in DROP FUNCTION
The parser was not using the correct fully-qualified-name
production for DROP FUNCTION.
Fixed by copying the production from DROP PROCEDURE.
Tested in the windows specific suite to make sure it's 
tested on a case-insensitive file system.
2009-02-10 11:58:19 +02:00
Matthias Leich
33445d8fb9 This belongs to the fix for
Bug#42003 tests missing the disconnect of connections <> default
second slice
Content:
1. wait_until_count_sessions.inc
   - One PB run of a test using this routine failed because
     5 seconds timeout were exceeded. Although I have some doubts
     if the assigned timeout was really too small, I increase the
     value to 10. We waste the additional 5 seconds only if the
     tests fails anyway.
   - Print the content of the PROCESSLIST if the poll routine fails
2. minor improvements of formatting
3. query_cache_notembedded:
   Activate the wait_until_count_sessions.inc routine which was
   unfortunately forgotten in the changeset before.
2009-02-09 21:52:40 +01:00
Matthias Leich
32bef0bc87 Merge of ifx into GCA tree
no conflicts
2009-02-09 12:44:01 +01:00
Timothy Smith
67bd15a554 Auto-merge 5.0-build -> 5.0-bugteam 2009-02-07 16:24:16 +01:00
Joerg Bruehe
70216215d1 Merge main 5.0 -> 5.0-build 2009-02-07 09:42:51 +01:00
9969fbff70 Raise version number after cloning 5.0.78 2009-02-07 05:47:21 +01:00
Joerg Bruehe
092e0eb5d0 Merge main 5.0 into 5.0-build 2009-02-06 21:58:08 +01:00
Joerg Bruehe
d79be5781c Final merge of 5.0.72sp1 into 5.0-build
This involves just the tag, no file changes - they were all present before.
2009-02-06 21:25:04 +01:00
Timothy Smith
072a0bafd6 Auto merge fix for Bug 42525 from 5.0-bugteam 2009-02-06 19:38:39 +01:00
Tatiana A. Nurnberg
8cb7c9030f auto-merge 2009-02-06 18:47:54 +01:00
Tatiana A. Nurnberg
b16ad3bac2 Bug#42525: TIMEDIFF function
In 37553 we declared longlong results for
class Item_str_timefunc as per comments/docs,
but didn't add a method for that. And the
default just wasn't good enough for some
cases.

Changeset adds dedicated val_int() to class.
2009-02-06 18:25:08 +01:00
Timothy Smith
914e81c38e Auto merge from main 5.0 2009-02-06 15:51:36 +01:00
Timothy Smith
299aeb53b7 Handle renamed nwbootstrap -> nwbuild 2009-02-06 15:07:45 +01:00
Georgi Kodinov
7fe7d9b2d2 merged 5.0-main -> 5.0-bugteam 2009-02-06 15:39:29 +02:00
Alexey Kopytov
0a6c553510 Temporarily reverted patch for bug #41868 as it was causing problems in PB. 2009-02-06 12:51:11 +03:00
Matthias Leich
a63c2e5c30 2. Slice of fix for Bug#42003 tests missing the disconnect of connections <> default
- If missing: add "disconnect <session>"
   - If physical disconnect of non "default" sessions is not finished
     at test end: add routine which waits till this happened
+ additional improvements
  - remove superfluous files created by the test
  - replace error numbers by error names
  - remove trailing spaces, replace tabs by spaces
  - unify writing of bugs within comments
  - correct comments
  - minor changes of formatting
Fixed tests:
  backup
  check
  compress
  grant
  information_schema
  multi_update
  overflow
  packet
  query_cache_not_embedded
  sp-threads
  subselect
  synchronization
  timezone_grant
2009-02-05 21:47:23 +01:00
Alexey Kopytov
e266164832 Merge to team tree. 2009-02-05 15:48:30 +03:00
Alexey Kopytov
58f67beb92 Merge from team tree. 2009-02-05 15:07:11 +03:00
Gleb Shchepa
23fb47a3ad Bug #42037: Queries containing a subquery with DISTINCT and
ORDER BY could cause a server crash

Dependent subqueries like

  SELECT COUNT(*) FROM t1, t2 WHERE t2.b
   IN (SELECT DISTINCT t2.b FROM t2 WHERE t2.b = t1.a)

caused a memory leak proportional to the
number of outer rows.


The make_simple_join() function has been modified to
JOIN class method to store join_tab_reexec and
table_reexec values in the parent join only
(make_simple_join of tmp_join may access these values
via 'this' pointer of the parent JOIN).

NOTE: this patch doesn't include standard test case (this is
"out of memory" bug). See bug #42037 page for test cases.
2009-02-05 13:30:39 +04:00
Ramil Kalimullin
909d29ee05 Fix for bug#42014: Crash, name_const with collate
Problem: some queries using NAME_CONST(.. COLLATE ...)
lead to server crash due to failed type cast.

Fix: return the underlying item's type in case of
NAME_CONST(.. COLLATE ...) to avoid wrong casting.
2009-02-05 11:43:39 +04:00
Chad MILLER
69cd86934d Merge from bug tree. 2009-02-04 13:57:33 -05:00
Matthias Leich
f3e0950d86 Merge last changesets into tree, no conflicts 2009-02-04 16:34:28 +01:00
Sergey Vojtovich
8745e368b7 BUG#32047 - 'Spurious' errors while opening MERGE tables
Accessing well defined MERGE table may return an error
stating that the merge table is incorrectly defined. This
happens if MERGE child tables were accessed before and we
failed to open another incorrectly defined MERGE table in
this connection.

myrg_open() internally used my_errno as a variable for determining
failure, and thus could be tricked into a wrong decision by other
uses of my_errno.

With this fix we use function local boolean flag instead of my_errno
to determine failure.
2009-02-04 15:46:23 +04:00