Commit graph

45351 commits

Author SHA1 Message Date
evgen@moonbone.local
4434ff13a9 Merge moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt
2007-04-21 00:33:56 +04:00
gshchepa/uchum@gshchepa.loc
6c5d17ef56 Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-27704
2007-04-20 16:44:50 +05:00
gshchepa/uchum@gshchepa.loc
4fcf1316bb Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt-27704
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-27704
2007-04-20 15:31:33 +05:00
gshchepa/uchum@gshchepa.loc
f5a229b3d1 Bug#27704: incorrect comparison of rows with NULL components
Support for NULL components was incomplete for row comparison,
fixed.  Added support for abort_on_null at compare_row() like
in 5.x
2007-04-20 15:14:09 +05:00
gkodinov/kgeorge@magare.gmz
bcde01f6ff Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/autopush/B27786-5.0-opt
2007-04-20 12:01:54 +03:00
mhansson@dl145s.mysql.com
f0fc4b88e0 Bug #24778: Innodb: No result when using ORDER BY
This bug was intruduced by the fix for bug#17212 (in 4.1). It is not 
ok to call test_if_skip_sort_order since this function will 
alter the execution plan. By contract it is not ok to call 
test_if_skip_sort_order in this context.

This bug appears only in the case when the optimizer has chosen 
an index for accessing a particular table but finds a covering 
index that enables it to skip ORDER BY. This happens in 
test_if_skip_sort_order.
2007-04-20 11:01:53 +02:00
gkodinov/kgeorge@magare.gmz
4c89a5960f Bug #27786:
When merging views into the enclosing statement
the ORDER BY clause of the view is merged to the
parent's ORDER BY clause.
However when the VIEW is merged into an UNION
branch the ORDER BY should be ignored. 
Use of ORDER BY for individual SELECT statements
implies nothing about the order in which the rows
appear in the final result because UNION by default
produces unordered set of rows.
Fixed by ignoring the ORDER BY clause from the merge
view when expanded in an UNION branch.
2007-04-20 10:49:45 +03:00
gkodinov/kgeorge@magare.gmz
83fff26261 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  magare.gmz:/home/kgeorge/mysql/autopush/B27530-5.0-opt
2007-04-19 15:07:03 +03:00
gluh@mysql.com/eagle.(none)
16223f0d75 Bug#27499 DROP TABLE race with SHOW TABLE STATUS
They can drop table after table names list creation and before table opening.
We open non existing table and get ER_NO_SUCH_TABLE error.
In this case we do not store the record into I_S table and clear error.
2007-04-19 16:49:21 +05:00
igor@olga.mysql.com
6ad81b4e13 Fixed bug #27870. The bug that causes crashes manifests itself at some
conditions when executing an equijoin query with WHERE condition
containing a subquery predicate of the form join_attr NOT IN (SELECT ...).

To resolve a problem of the correct evaluation of the expression
  attr NOT IN (SELECT ...)
an array of guards is created to make it possible to filter out some 
predicates of the EXISTS subquery into which the original subquery 
predicate is transformed, in the cases when a takes the NULL value. 
If attr is defined as a field that cannot be NULL than such an array 
is not needed and is not created. 
However if the field a occurred also an an equijoin predicate t2.a=t1.b
and table t1 is accessed before table t2 then it may happen that the 
the EXISTS subquery is pushed down to the condition evaluated just after
table t1 has been accessed. In this case any occurrence of t2.a is 
substituted for t1.b. When t1.b takes the value of NULL an attempt is 
made to turn on the corresponding guard. This action caused a crash as 
no guard array had been created.

Now the code of Item_in_subselect::set_cond_guard_var checks that the guard
array has been created before setting a guard variable on. Otherwise the
method does nothing. It cannot results in returning a row that could be
rejected as the condition t2.a=t1.b will be checked later anyway.
2007-04-17 17:35:29 -07:00
evgen@moonbone.local
bfac9ea67e subselect.result:
After merge fix.
2007-04-15 12:16:32 +04:00
evgen@moonbone.local
392fb72f5c Merge moonbone.local:/mnt/gentoo64/work/27321-bug-5.0-opt-mysql
into  moonbone.local:/mnt/gentoo64/work/bk-trees/mysql-5.1-opt
2007-04-15 12:05:13 +04:00
evgen@moonbone.local
7d71d58076 item.cc:
Fix warning after fix for bug#27321.
2007-04-15 09:54:16 +04:00
evgen@moonbone.local
51badaddbc subselect.test, subselect.result:
After merge fix.
2007-04-15 09:22:45 +04:00
evgen@moonbone.local
922a5a969c Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/27321-bug-5.0-opt-mysql
2007-04-15 08:41:35 +04:00
evgen@moonbone.local
3113ce6383 Bug#27321: Wrong subquery result in a grouping select.
The Item_outer_ref class based on the Item_direct_ref class was always used
to represent an outer field. But if the outer select is a grouping one and the 
outer field isn't under an aggregate function which is aggregated in that
outer select an Item_ref object should be used to represent such a field.
If the outer select in which the outer field is resolved isn't grouping then
the Item_field class should be used to represent such a field.
This logic also should be used for an outer field resolved through its alias
name.

Now the Item_field::fix_outer_field() uses Item_outer_field objects to
represent aliased and non-aliased outer fields for grouping outer selects
only.
Now the fix_inner_refs() function chooses which class to use to access outer
field - the Item_ref or the Item_direct_ref. An object of the chosen class
substitutes the original field in the Item_outer_ref object.
The direct_ref and the found_in_select_list fields were added to the
Item_outer_ref class.
2007-04-15 08:31:34 +04:00
holyfoot/hf@hfmain.(none)
b15a771541 Merge mysql.com:/d2/hf/mrg/mysql-5.0-opt
into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
2007-04-14 14:56:41 +05:00
holyfoot/hf@hfmain.(none)
13a7fdac24 Merge bk@192.168.21.1:mysql-5.1
into  mysql.com:/d2/hf/mrg/mysql-5.1-opt
2007-04-14 14:56:07 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
db7e62e7fb Merge mysql.com:/d2/hf/mrg/mysql-4.1-opt
into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
2007-04-14 14:55:33 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
8b49f27530 Merge bk@192.168.21.1:mysql-5.0
into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
2007-04-14 14:54:59 +05:00
holyfoot/hf@mysql.com/hfmain.(none)
cf18d38c83 Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/d2/hf/mrg/mysql-4.1-opt
2007-04-14 14:54:28 +05:00
epotemkin@bk-internal.mysql.com
9e2dcb5e91 Merge bk-internal.mysql.com:/data0/bk/mysql-5.0-opt
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-opt
2007-04-13 23:32:23 +02:00
tomas@whalegate.ndb.mysql.com
2a917850d2 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
2007-04-13 08:15:49 +02:00
tomas@whalegate.ndb.mysql.com
51d5c403fa Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
2007-04-13 08:15:07 +02:00
tomas@whalegate.ndb.mysql.com
e315f9f765 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
2007-04-13 08:14:05 +02:00
tomas@whalegate.ndb.mysql.com
1d1fbaae8d Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
2007-04-13 08:13:16 +02:00
tomas@whalegate.ndb.mysql.com
592e0f2250 correct merge error 2007-04-13 01:52:45 +02:00
tomas@whalegate.ndb.mysql.com
ac8d2dead6 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
2007-04-13 01:45:44 +02:00
tomas@whalegate.ndb.mysql.com
5d89ca3a89 Bug#27775 mediumint auto_increment with ndb_restore
- autoincrement column of size medium int not handled in ndb_restore
- added testcase also for other types, tiny, small... etc
2007-04-13 01:37:24 +02:00
tomas@whalegate.ndb.mysql.com
e55b963da8 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
2007-04-12 21:39:06 +02:00
gshchepa/uchum@gshchepa.localdomain
342a6c5866 Merge gshchepa@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  gshchepa.localdomain:/home/uchum/work/bk-trees/5507-ci
2007-04-13 00:38:45 +05:00
tomas@whalegate.ndb.mysql.com
7fd59a08af Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
2007-04-12 21:38:44 +02:00
tomas@whalegate.ndb.mysql.com
ce23702510 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
2007-04-12 21:35:39 +02:00
tomas@whalegate.ndb.mysql.com
3ff7444ac7 remove inline NdbRecAttr functions for medium int as not to depend in my_global 2007-04-12 21:34:25 +02:00
gshchepa/uchum@gshchepa.localdomain
4b2aab14ba Bug#5507: TRUNCATE does not work with views.
Support of views wasn't implemented for the TRUNCATE statement.
Now TRUNCATE on views has the same semantics as DELETE FROM view:
mysql_truncate() checks whether the table is a view and falls back
to delete if so.
In order to initialize properly the LEX::updatable for a view
st_lex::can_use_merged() now allows usage of merged views for the
TRUNCATE statement.
2007-04-12 23:21:37 +05:00
tomas@whalegate.ndb.mysql.com
3b15858f82 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
2007-04-12 19:50:28 +02:00
tomas@whalegate.ndb.mysql.com
0ddf40b025 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-opt
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
2007-04-12 19:49:46 +02:00
tomas@whalegate.ndb.mysql.com
8a98276ba7 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-4.1-opt
2007-04-12 19:49:21 +02:00
joerg@trift2.
3f72507d0d Merge trift2.:/MySQL/M50/push-5.0
into  trift2.:/MySQL/M51/push-5.1
2007-04-12 19:09:29 +02:00
joerg@trift2.
3050edc0b9 Merge trift2.:/MySQL/M41/push-4.1
into  trift2.:/MySQL/M50/push-5.0
2007-04-12 18:41:55 +02:00
tomas@whalegate.ndb.mysql.com
ba60730808 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-opt
2007-04-12 18:29:43 +02:00
tomas@whalegate.ndb.mysql.com
6015317269 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-opt
2007-04-12 18:29:24 +02:00
jonas@perch.ndb.mysql.com
bdd0e4543e Merge joreland@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
2007-04-12 16:01:45 +02:00
jonas@perch.ndb.mysql.com
6b67f57249 Merge perch.ndb.mysql.com:/home/jonas/src/51-telco-gca
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new-ndb
2007-04-12 16:00:51 +02:00
jonas@perch.ndb.mysql.com
f06225a6e1 ndb - bug#27756
make sure that copy tuple is released in all cases
2007-04-12 15:55:39 +02:00
jonas@perch.ndb.mysql.com
967eb52b68 ndb - bug#27756
testcase only
  new pseudo column NDB$COPY_ROWID
2007-04-12 11:47:38 +02:00
jonas@perch.ndb.mysql.com
3411ba8ba6 ndb - hugo - add new method for setting primary key(s) 2007-04-12 11:43:56 +02:00
tomas@whalegate.ndb.mysql.com
98c2e79af4 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.1-new-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
2007-04-12 11:29:05 +02:00
tomas@whalegate.ndb.mysql.com
2e620e3db6 Merge whalegate.ndb.mysql.com:/home/tomas/mysql-5.0-ndb
into  whalegate.ndb.mysql.com:/home/tomas/mysql-5.1-single-user
2007-04-12 11:12:43 +02:00
tomas@whalegate.ndb.mysql.com
f9a900f80e Bug #27758 Restoring NDB backups makes table usable in SQL nodes
- parse indexname using "split" instead of sscanf, as not to break at space
- test case with space in key
- enclose names in printout
2007-04-12 11:07:30 +02:00