Commit graph

9058 commits

Author SHA1 Message Date
sergefp@mysql.com
f68d8cf994 BUG#21077: 4.1->5.0 merge 2006-08-15 21:16:02 +04:00
sergefp@mysql.com
1230f3ad38 BUG#21282: Incorrect query results for "t.key NOT IN (<big const list>)
In fix for BUG#15872, a condition of type "t.key NOT IN (c1, .... cN)"
where N>1000, was incorrectly converted to
  (-inf < X < c_min) OR (c_max < X)
Now this conversion is removed, we dont produce any range lists for such
conditions.
2006-08-15 21:08:22 +04:00
evgen@moonbone.local
8364a646a9 Fixed bug#15950: NOW() optimized away in VIEWs
This bug is a side-effect of bug fix #16377. NOW() is optimized in
BETWEEN to integer constants to speed up query execution. When view is being
created it saves already modified query and thus becomes wrong.

The agg_cmp_type() function now substitutes constant result DATE/TIME functions 
for their results only if the current query isn't CREATE VIEW or SHOW CREATE
VIEW.
2006-08-15 21:02:55 +04:00
cmiller@maint1.mysql.com
53bb6a47cd Bug #20908: Crash if select @@""
Zero-length variables caused failures when using the length to look
up the name in a hash.  Instead, signal that no zero-length name can
ever be found and that to encounter one is a syntax error.
2006-08-15 18:41:21 +02:00
sergefp@mysql.com
86c5cad4e0 BUG#21077: Possible crash caused by invalid sequence of handler::* calls:
The crash was caused by invalid sequence of handler::** calls:                                                           
  ha_smth->index_init();                                                                                                 
  ha_smth->index_next_same(); (2)                                                                                        
(2) is an invalid call as it was not preceeded by any 'scan setup' call
like index_first() or index_read(). The cause was that QUICK_SELECT::reset()
didn't "fully reset" the quick select- current QUICK_RANGE wasn't forgotten,
and quick select might attempt to continue reading the range, which would
result in the above mentioned invalid sequence of handler calls.

5.x versions are not affected by the bug - they already have the missing
"range=NULL" clause.
2006-08-15 20:33:14 +04:00
petr/cps@mysql.com/owlet
472279cec4 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin
2006-08-15 19:11:12 +04:00
rburnett@bk-internal.mysql.com
8d5e2dd644 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-kt
2006-08-15 17:02:08 +02:00
ramil/ram@mysql.com/myoffice.izhnet.ru
b65bf3b4da Merge mysql.com:/usr/home/ram/work/tmp_merge
into  mysql.com:/usr/home/ram/work/mysql-5.0
2006-08-15 19:41:23 +05:00
mskold/marty@mysql.com/linux.site
bacdcb053e Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-4.1
2006-08-15 15:58:02 +02:00
mskold/marty@mysql.com/linux.site
3b42e84c44 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0
2006-08-15 15:57:36 +02:00
holyfoot/hf@mysql.com/deer.(none)
81764f89cf Merge bk@192.168.21.1:mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.20910
2006-08-15 18:15:12 +05:00
gkodinov/kgeorge@macbook.gmz
b5f814abed Bug #21302: Result not properly sorted when using an ORDER BY on a second table in a join
- undeterminstic tests fixed
2006-08-15 15:48:49 +03:00
mskold/marty@mysql.com/linux.site
66e8255491 Merge mysql.com:/windows/Linux_space/MySQL/mysql-4.1
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0
2006-08-15 13:37:39 +02:00
mskold/marty@mysql.com/linux.site
6a3143e2a0 ndb_lock.test, ndb_lock.result:
bug #18184  SELECT ... FOR UPDATE does not work..: New test case
ha_ndbcluster.h, ha_ndbcluster.cc, NdbConnection.hpp:
  Fix for bug #21059  Server crashes on join query with large dataset with NDB tables: Releasing operation for each intermediate batch, before next call to trans->execute(NoCommit);
2006-08-15 13:12:27 +02:00
ramil/ram@mysql.com/myoffice.izhnet.ru
6660f98b64 Fix for bug #20695: Charset introducer overrides charset definition for column.
- if there are two character set definitions in the column declaration,
    we replace the first one with the second one as we store both in the LEX->charset
    slot. Add a separate slot to the LEX structure to store underscore charset.
  - convert default values to the column charset of STRING, VARSTRING fields 
    if necessary as well.
2006-08-15 15:24:07 +05:00
gkodinov/kgeorge@rakia.(none)
eabc7662e6 Bug #21302: Result not properly sorted when using an ORDER BY
on a second table in a join
- undeterministic output of the test case removed.
2006-08-15 13:01:04 +03:00
gkodinov/kgeorge@rakia.(none)
e024d63342 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B21159-5.0-opt
2006-08-15 12:54:02 +03:00
gkodinov/kgeorge@rakia.(none)
18c52dc2c1 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B21174-5.0-opt
2006-08-15 10:31:34 +03:00
gkodinov/kgeorge@rakia.(none)
5f242d0823 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B21159-5.0-opt
2006-08-15 10:25:56 +03:00
gkodinov/kgeorge@macbook.gmz
c606c63f0e Bug #21159: Optimizer: wrong result after AND with different data types
Disable const propagation for Item_hex_string.
This must be done because Item_hex_string->val_int() is not
the same as (Item_hex_string->val_str() in BINARY column)->val_int().
We cannot simply disable the replacement in a particular context (
e.g. <bin_col> = <int_col> AND <bin_col> = <hex_string>) since
Items don't know the context they are in and there are functions like 
IF (<hex_string>, 'yes', 'no').
Note that this will disable some valid cases as well 
(e.g. : <bin_col> = <hex_string> AND <bin_col2> = <bin_col>) but 
there's no way to distinguish the valid cases without having the
Item's parent say something like : Item->set_context(Item::STRING_RESULT)
and have all the Items that contain other Items do that consistently.
2006-08-15 10:13:17 +03:00
bar@mysql.com/bar.intranet.mysql.r18.ru
9f6c76eb20 Merge mysql.com:/usr/home/bar/mysql-4.1.b19741
into  mysql.com:/usr/home/bar/mysql-5.0.b19741merge
2006-08-15 12:04:51 +05:00
acurtis/antony@xiphis.org/ltantony.xiphis.org
e2d4aa2ca4 Merge xiphis.org:/home/antony/work2/mysql-5.0-engines
into  xiphis.org:/home/antony/work2/mysql-5.0-merge
2006-08-14 21:27:36 -07:00
tsmith/tim@siva.hindu.god
9228972cd4 Manual merge, and add --echo End of 5.0 tests to ctype_ucs 2006-08-14 18:59:43 -06:00
gkodinov/kgeorge@macbook.gmz
25eaa521bf Bug #21174: Index degrades sort performance and
optimizer does not honor IGNORE INDEX
 - Allow an index to be used for sorting the table 
   instead of filesort only if it is not disabled by
   IGNORE INDEX.
2006-08-14 18:19:29 +03:00
kostja@bodhi.local
d03b39aaab Fix a test case (proper clean up). 2006-08-14 19:18:33 +04:00
rburnett@bk-internal.mysql.com
4bb7715482 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-kt
2006-08-14 17:13:31 +02:00
svoj@april.(none)
a55d18e746 Merge april.(none):/home/svoj/devel/bk/mysql-4.1
into  april.(none):/home/svoj/devel/mysql/BUG18874/mysql-4.1
2006-08-14 18:13:50 +05:00
svoj@may.pils.ru
91e94d781f Merge may.pils.ru:/home/svoj/devel/mysql/BUG18874/mysql-4.1
into  may.pils.ru:/home/svoj/devel/mysql/BUG18874/mysql-5.0
2006-08-14 18:08:33 +05:00
gkodinov/kgeorge@rakia.(none)
04d86b3fe9 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B21302-5.0-opt
2006-08-14 15:58:01 +03:00
gkodinov/kgeorge@macbook.gmz
2d9aa1e61e Bug #21302: Result not properly sorted when using an ORDER BY on a second
table in a join
 The optimizer removes redundant columns in ORDER BY. It is considering 
redundant every reference to const table column, e.g b in :
create table t1 (a int, b int, primary key(a)); 
select 1 from t1 order by b where a = 1

But it must not remove references to const table columns if the 
const table is an outer table because there still can be 2 values :
the const value and NULL. e.g.:
create table t1 (a int, b int, primary key(a));
select t2.b c from t1 left join t1 t2 on (t1.a = t2.a and t2.a = 5) 
  order by c;
2006-08-14 15:45:48 +03:00
svoj@may.pils.ru
d4bdba176f BUG#18874 - Setting myisam_repair_threads > 1, index cardinality always 1
Fixed by moving update_key_parts() down to be after write_index().
2006-08-14 17:05:02 +05:00
ramil/ram@mysql.com/myoffice.izhnet.ru
dc4b2a4f1d Make the heap_btree test repeatable. 2006-08-14 12:59:54 +05:00
tsmith/tim@siva.hindu.god
72d55f3878 Bug #20536: md5() with GROUP BY and UCS2 return different results on myisam/innodb
Make the encryption functions MD5(), SHA1() and ENCRYPT() return binary results.
    
Make MAKE_SET() and EXPORT_SET() use the correct character set for their default separator strings.
2006-08-11 17:09:19 -06:00
svoj@may.pils.ru
07a1ed651f Extended a test case for bug#7391. 2006-08-11 14:41:07 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
4a63a64f1e mysqld --collation-server=xxx --character-set-server=yyy
didn't work as expected: collation_server was set not to xxx,
but to the default collation of character set "yyy".
    
With different argument order it worked as expected:
mysqld --character-set-server=yyy --collation-server=yyy 
    
Fix:
initializate default_collation_name to 0
when processing --character-set-server
only if --collation-server has not been specified
in command line.
2006-08-11 13:19:44 +05:00
rburnett@bk-internal.mysql.com
6b399a498b Merge bk-internal.mysql.com:/data0/bk/mysql-5.0
into  bk-internal.mysql.com:/data0/bk/mysql-5.0-kt
2006-08-10 19:24:46 +02:00
cmiller@zippy.cornsilk.net
f6f7eb851e Merge updates. 2006-08-10 12:39:18 -04:00
gkodinov/kgeorge@macbook.gmz
9ff33b5d93 Bug #16792 query with subselect, join, and group not returning proper values
Treat queries with no FROM and aggregate functions as normal queries,
so the aggregate function get correctly calculated as if there is 1 row. 
This means that they will be considered to have one row, so COUNT(*) will return
1 instead of 0. Other aggregates will behave in compatible manner.
2006-08-10 16:45:02 +03:00
tnurnberg@salvation.intern.azundris.com
170392850d Bug#19844: time_format in Union truncates values
time_format() claimed %H and %k would return at most two digits
(hours 0-23), but this coincided neither with actual behaviour
nor with docs.  this is not visible in simple queries; forcing
a temp-table is probably the easiest way to see this.  adjusted
the return-length appropriately; the alternative would be to
adjust the docs to say that behaviour for > 99 hours is undefined.
---
Bug#19844: time_format in Union truncates values

time_format() claimed %H and %k would return at most two digits
(hours 0-23), but this coincided neither with actual behaviour
nor with docs.  this is not visible in simple queries; forcing
a temp-table is probably the easiest way to see this.  adjusted
the return-length appropriately; the alternative would be to
adjust the docs to say that behaviour for > 99 hours is undefined.
2006-08-10 15:37:24 +02:00
ramil/ram@mysql.com/myoffice.izhnet.ru
50ae5b7989 Fix for bug #20709: Collation not used in group by on 4.1.
myisam/mi_uniue.c:mi_check_unique() should skip trailing spaces comparing 
TEXT and VARTTEXT key segments.
2006-08-10 15:06:22 +05:00
cmiller@zippy.cornsilk.net
543fcde9b9 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-4.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0
2006-08-09 22:23:41 -04:00
cmiller@zippy.cornsilk.net
8e4460343f Removed iggy's accidentally checked-in test files. 2006-08-09 13:41:08 -04:00
holyfoot/hf@mysql.com/deer.(none)
ba90c1e9fa Merge bk@192.168.21.1:mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.20910
2006-08-09 14:57:51 +05:00
gluh@mysql.com/gluh.(none)
1be93531ee Bug#16172 DECIMAL data type processed incorrectly
issue an error in case of DECIMAL(M,N) if N > M
2006-08-08 14:40:07 +05:00
holyfoot/hf@mysql.com/deer.(none)
de7e53d531 bug #20910 (NOT NULL reported as NULL for TIMESTAMP)
we intentionally reported that for TIMESTAMPS, which isn't right
2006-08-08 13:34:27 +05:00
bar@mysql.com/bar.intranet.mysql.r18.ru
7ff64de172 Merge mysql.com:/usr/home/bar/mysql-4.1.b19741v0
into  mysql.com:/usr/home/bar/mysql-4.1.b19741
2006-08-07 13:15:23 +05:00
holyfoot/hf@mysql.com/deer.(none)
eab37de051 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-kt
into  mysql.com:/home/hf/work/mysql-5.0.clean
2006-08-07 11:57:53 +05:00
holyfoot/hf@mysql.com/deer.(none)
ffe2a431b5 information_schema_db.test fixed 2006-08-07 11:56:22 +05:00
tnurnberg@mysql.com/salvation.intern.azundris.com
f17b889289 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/tnurnberg/work/mysql-5.0-maint-20214
2006-08-07 01:39:05 +02:00
msvensson@neptunus.(none)
1d2a5c2e1a Send output from mysql_client_test to var/log/mysql_client_test.log 2006-08-06 20:58:30 +02:00