Commit graph

32307 commits

Author SHA1 Message Date
unknown
a42e0830a7 Merge update of the fix for bug 14019 in 5.0 2006-10-16 16:27:06 +03:00
unknown
fe4a68fb3c Merge macbook.gmz:/Users/kgeorge/mysql/work/B14019-4.1-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B14019-5.0-opt


mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/t/func_gconcat.test:
  Auto merged
sql/sql_base.cc:
  Auto merged
mysql-test/r/group_by.result:
  merge 4.1->5.0
mysql-test/t/group_by.test:
  merge 4.1->5.0
2006-10-16 13:24:54 +03:00
unknown
750a2a0b86 BUG#14019 : group by converts literal string to column name
When resolving unqualified name references MySQL was not
   checking what is the item type for the reference. Thus
   e.g a string literal item that has by convention a name
   equal to its string value will also work as a reference to 
   a SELECT list item or a table field.
   Fixed by allowing only Item_ref or Item_field to referenced by
   (unqualified) name.


mysql-test/r/func_gconcat.result:
  Bug #14019: group by converts literal string to column name
   - removed undeterministic testcase : order by a constant 
     means no order.
mysql-test/r/group_by.result:
  Bug #14019: group by converts literal string to column name
   - test case
mysql-test/t/func_gconcat.test:
  Bug #14019: group by converts literal string to column name
   - removed undeterministic testcase : order by a constant 
     means no order.
mysql-test/t/group_by.test:
  Bug #14019: group by converts literal string to column name
   - test case
sql/sql_base.cc:
  Bug #14019: group by converts literal string to column name
   - resolve unqualified by name refs only for real references
2006-10-16 13:10:25 +03:00
unknown
b6248f76ed Bug#22138: Unhandled NULL caused server crash
The Cached_item_decimal::cmp() method wasn't checking for null pointer
returned from the val_decimal() of the item being cached.
This leads to server crash.

The Cached_item_decimal::cmp() method now check for null values.


sql/item_buff.cc:
  Bug#22138: Unhandled NULL caused server crash
  The Cached_item_decimal::cmp() method now check for null values.
mysql-test/r/type_decimal.result:
  Added the test case for bug#22138: Unhandled NULL caused server crash
mysql-test/t/type_decimal.test:
  Added the test case for bug#22138: Unhandled NULL caused server crash
2006-10-11 19:44:12 +04:00
unknown
09dfd9e7e4 Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.local:/Users/kgeorge/mysql/work/B22781-5.0-opt


sql/sql_select.cc:
  Auto merged
2006-10-09 19:53:07 +04:00
unknown
45cad70ff4 Bug #22781: SQL_BIG_RESULT fails to influence sort plan
Currently SQL_BIG_RESULT is checked only at compile time.
 However, additional optimizations may take place after
 this check that change the sort method from 'filesort'
 to sorting via index. As a result the actual plan
 executed is not the one specified by the SQL_BIG_RESULT
 hint. Similarly, there is no such test when executing
 EXPLAIN, resulting in incorrect output.
 The patch corrects the problem by testing for
 SQL_BIG_RESULT both during the explain and execution
 phases.


mysql-test/r/bdb.result:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - updated sql_big_result testcase
mysql-test/r/group_by.result:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - test case with MyISAM
mysql-test/r/innodb.result:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - updated sql_big_result testcase
mysql-test/r/innodb_mysql.result:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - test case with InnoDB
mysql-test/r/myisam.result:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - updated sql_big_result testcase
mysql-test/t/group_by.test:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - test case with MyISAM
mysql-test/t/innodb_mysql.test:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - test case with InnoDB
sql/sql_select.cc:
  Bug #22781: SQL_BIG_RESULT fails to influence sort plan
   - When SQL_BIG_RESULT is specified, disable the optimization performed
  at execution/explain time that decides to use an index instead
  of filesort.
2006-10-09 19:51:41 +04:00
unknown
9055f98e89 Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/home/hf/work/16813/my50-16813
2006-10-01 21:16:32 +05:00
unknown
e1f79d43d0 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/16813/my50-16813


sql/table.cc:
  Auto merged
mysql-test/r/view.result:
  merging
mysql-test/t/view.test:
  merging
2006-10-01 18:06:07 +05:00
unknown
ac579ef893 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/21888/my50-21888
2006-10-01 15:28:50 +05:00
unknown
f66945aadb Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/mysql-5.0-opt


mysql-test/r/select.result:
  Manual merge
mysql-test/t/select.test:
  Manual merge
2006-09-29 11:36:27 -07:00
unknown
1643d0c5ed Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/20503-bug-5.0-mysql


sql/sql_select.cc:
  Auto merged
2006-09-29 21:22:47 +04:00
unknown
d1da520f9b Merge rurik.mysql.com:/home/igor/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug22753
2006-09-29 08:29:59 -07:00
unknown
af2ba777c3 Fixed bug #22753.
After the patch for big 21698 equality propagation stopped
working for BETWEEN and IN predicates with STRING arguments.
This changeset completes the solution of the above patch.


mysql-test/r/select.result:
  Added a test case for bug #22735.
mysql-test/t/select.test:
  Added a test case for bug #22735.
sql/item_cmpfunc.h:
  Fixed bug #22753.
  After the patch for big 21698 equality propagation stopped
  working for BETWEEN and IN predicates with STRING arguments.
  This changeset completes the solution of the above patch.
  
  Added an implementation of the subst_argument_checker method
  for Item_func_opt_neg (the direct ancestor of Item_func_between
  and Item_func_in) which allows equality propagation for
  BETWEEN and IN predicates.
2006-09-29 07:43:25 -07:00
unknown
55aa43fe35 Merge mysql.com:/home/hf/work/21888/my41-21888
into  mysql.com:/home/hf/work/21888/my50-21888


myisam/mi_range.c:
  Auto merged
mysql-test/r/gis-rtree.result:
  Auto merged
mysql-test/t/gis-rtree.test:
  Auto merged
2006-09-29 17:57:16 +05:00
unknown
01fe277cc6 bug #21888 (Query on GEOMETRY field crashes the server)
RTree keys are really different from BTree and need specific
paramters to be set by optimizer to work.
Sometimes optimizer doesn't set those properly.
Here we decided just to add code to check that the parameters
are correct. Hope to fix optimizer sometimes.


myisam/mi_range.c:
  return the error if min_key is NULL
mysql-test/r/gis-rtree.result:
  test result
mysql-test/t/gis-rtree.test:
  test case
2006-09-29 17:56:02 +05:00
unknown
5389cc169a bug #16813 (WITH CHECK OPTION fails with UPDATE)
We use the condition from CHECK OPTION twice handling UPDATE command.
First we construnct 'update_cond' AND 'option_cond'
condition to select records to be updated, then we check the
'option_cond' for the updated row.
The problem is that first 'AND' condition is optimized during the 'select'
which can break 'option_cond' structure, so it will be unusable for
the sectond use - to check the updated row.
Possible soultion is either use copy of the condition in the first
use or to make optimization less traumatic for the operands.
I picked the first one. 


mysql-test/r/view.result:
  result fixed
mysql-test/t/view.test:
  testcase
sql/table.cc:
  now we use the copy of the CHECK OPTION condition to construct
  the select's condition
2006-09-29 12:16:07 +05:00
unknown
04bf9cc7c6 view.test:
After merge fix


mysql-test/t/view.test:
  After merge fix
2006-09-29 01:35:11 +04:00
unknown
0954261761 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/work/5505-bug-5.0-opt-mysql


sql/share/errmsg.txt:
  Auto merged
sql/sql_base.cc:
  Auto merged
mysql-test/r/view.result:
  Manual merge
mysql-test/t/view.test:
  Manual merge
2006-09-29 01:01:52 +04:00
unknown
d332c37c58 Fixed bug#5505: Wrong error message on INSERT into a view
On an INSERT into an updatable but non-insertable view an error message was
issued stating the view being not updatable. This can lead to a confusion of a
user.

A new error message is introduced. Is is showed when a user tries to insert
into a non-insertable view.


sql/sql_base.cc:
  Fixed bug#5505: Wrong error message on INSERT into a view
  The update_non_unique_table_error() function now issues proper
  error for an INSERT.
sql/sql_insert.cc:
  Fixed bug#5505: Wrong error message on INSERT into a view
  Issue the ER_NON_INSERTABLE_TABLE error instead of the 
  ER_NON_UPDATABLE_TABLE on insert into a view.
sql/sql_view.cc:
  Fixed bug#5505: Wrong error message on INSERT into a view
  Issue the ER_NON_INSERTABLE_TABLE error instead of the
  ER_NON_UPDATABLE_TABLE on insert into a view.
mysql-test/r/view.result:
  Added the test case for bug#5505: Wrong error message on INSERT into a view
  Corrected a few test cases after fixing bug#5505
mysql-test/t/view.test:
  Added the test case for bug#5505: Wrong error message on INSERT into a view
  Corrected a few test cases after fixing bug#5505
sql/share/errmsg.txt:
  Fixed bug#5505: Wrong error message on INSERT into a view
  Added the ER_NON_INSERTABLE_TABLE error definition.
2006-09-29 01:00:18 +04:00
unknown
4fd7172391 Fixed bug#20503: Server crash due to the ORDER clause not taken into account
while space allocation

Under some circumstances DISTINCT clause can be converted to grouping.
In such cases grouping is performed by all items in the select list.
If an ORDER clause is present then items from it is prepended to group list.
But the case with ORDER wasn't taken into account when allocating the
array for sum functions. This leads to memory corruption and crash.

The JOIN::alloc_func_list() function now allocates additional space if there
is an ORDER by clause is specified and DISTINCT -> GROUP BY optimization is
possible.


mysql-test/t/select.test:
  Added the test case for bug#20503: Server crash due to the ORDER clause not taken into account while space allocation
mysql-test/r/select.result:
  Added the test case for bug#20503: Server crash due to the ORDER clause not taken into account while space allocation
sql/sql_select.cc:
  Fixed bug#20503: Server crash due to the ORDER clause not taken into account
  while space allocation
  The JOIN::alloc_func_list() function now allocates additional space if there
  is an ORDER by clause is specified and DISTINCT -> GROUP BY optimization is
  possible.
2006-09-29 00:50:00 +04:00
unknown
d30536dc9d Merge dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt


sql/sql_select.cc:
  Auto merged
2006-09-28 10:37:21 +02:00
unknown
70255e8509 Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-5.0
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-5.0-opt


mysql-test/r/view.result:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2006-09-28 10:36:04 +02:00
unknown
b8fe620615 Merge dl145s.mysql.com:/data/bk/team_tree_merge/mysql-4.1
into  dl145s.mysql.com:/data/bk/team_tree_merge/MERGE/mysql-4.1-opt


sql/sql_select.cc:
  Auto merged
2006-09-28 10:19:25 +02:00
unknown
c316933e60 additional 'after merge' fix 2006-09-27 20:11:11 +05:00
unknown
c1e264a5f5 after merge fix 2006-09-27 19:21:29 +05:00
unknown
6d77ba47e5 Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/5.0


sql/sql_parse.cc:
  Auto merged
sql-common/client.c:
  Auto merged
sql/table.cc:
  Auto merged
include/mysql_com.h:
  manual merge
mysql-test/r/ctype_utf8.result:
  manual merge
mysql-test/t/ctype_utf8.test:
  manual merge
sql/sql_acl.cc:
  manual merge
2006-09-27 18:06:46 +05:00
unknown
abd883f4d0 Patch for bug#21432 is reverted 2006-09-27 17:49:16 +05:00
unknown
ca5e29475c Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX
- reversed the patch for 5.0 and moved to 5.1


mysql-test/r/group_by.result:
  Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX
   - reversed the patch for 5.0
mysql-test/t/group_by.test:
  Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX
   - reversed the patch for 5.0
sql/sql_select.cc:
  Bug #21174: Index degrades sort performance and optimizer does not honor IGNORE INDEX
   - reversed the patch for 5.0
2006-09-27 12:53:53 +03:00
unknown
c6af7ee164 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/mysql-5.0-mrg
2006-09-27 11:46:02 +05:00
unknown
2b59a97b11 Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/mysql-4.1.15428
2006-09-27 11:44:05 +05:00
unknown
3436f0acc1 Merge trift2.:/MySQL/M50/clone-5.0
into  trift2.:/MySQL/M50/push-5.0


mysql-test/r/func_time.result:
  Null-merge, the change in the 5.0 general tree supersedes the 5.0.25 patch.
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/type_date.result:
  Auto merged
mysql-test/r/view.result:
  Null-merge, the change in the 5.0 general tree supersedes the 5.0.25 patch.
mysql-test/t/func_time.test:
  Null-merge, the change in the 5.0 general tree supersedes the 5.0.25 patch.
mysql-test/t/type_date.test:
  Auto merged
mysql-test/t/view.test:
  Null-merge, the change in the 5.0 general tree supersedes the 5.0.25 patch.
sql/item_cmpfunc.cc:
  Null-merge, the change in the 5.0 general tree supersedes the 5.0.25 patch.
2006-09-26 12:00:18 +02:00
unknown
78bf02870c Merge rurik.mysql.com:/home/igor/mysql-5.0-opt
into  rurik.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug21646
2006-09-25 07:40:54 -07:00
unknown
39222bff45 Merge rurik.mysql.com:/home/igor/mysql-4.1-opt
into  rurik.mysql.com:/home/igor/mysql-5.0-opt


mysql-test/r/subselect.result:
  Manual merge
mysql-test/t/subselect.test:
  Manual merge
sql/item.cc:
  Manual merge
2006-09-25 06:46:15 -07:00
unknown
f0bd502ac8 Fixed bug #21646.
Presence of a subquery in the ON expression of a join 
should not block merging the view that contains this join.
Before this patch the such views were converted into 
into temporary table views.


mysql-test/r/view.result:
  Added a test case for bug #21646.
mysql-test/t/view.test:
  Added a test case for bug #21646.
sql/mysql_priv.h:
  Fixed bug #21646.
  Added a new parsing state 'IN_ON', true when
  the parser is in an ON expression of a join.
sql/sql_lex.cc:
  Fixed bug #21646.
  Presence of a subquery in the ON expression of a join 
  should not block merging the view that contains this join.
sql/sql_yacc.yy:
  Fixed bug #21646.
  Added a new parsing state 'IN_ON', true when
  the parser is in an ON expression of a join.
2006-09-25 06:15:14 -07:00
unknown
9bf2ed9553 Fixed bug #21853: assert failure for a grouping query with
an ALL/ANY quantified subquery in HAVING.
The Item::split_sum_func2 method should not create Item_ref
for objects of any class derived from Item_subselect.


mysql-test/r/subselect.result:
  Added a test case for bug #21853.
mysql-test/t/subselect.test:
  Added a test case for bug #21853.
2006-09-25 05:24:07 -07:00
unknown
fe9f7980b7 Merge mysql.com:/home/hf/work/mysql-4.1.15428
into  mysql.com:/home/hf/work/mysql-5.0-mrg


myisam/mi_check.c:
  Auto merged
mysys/my_chsize.c:
  Auto merged
2006-09-25 16:44:53 +05:00
unknown
feb9cc2f15 Merge mysql.com:/home/hf/work/mysql-4.1.12991
into  mysql.com:/home/hf/work/mysql-4.1.15428


myisam/mi_check.c:
  Auto merged
2006-09-25 16:35:57 +05:00
unknown
862187ef2a Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/mysql-4.1.15428
2006-09-25 16:33:51 +05:00
unknown
16ea3ca1a2 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1
into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
2006-09-25 01:32:55 +02:00
unknown
103fc806c3 mysql_config.sh:
Filter out plain -O and Sun C/C++ style optimization flags, -xO<level>
  Filter out icc specific options from cflags/libs(_r)


scripts/mysql_config.sh:
  Filter out plain -O and Sun C/C++ style optimization flags, -xO<level>
2006-09-25 00:54:46 +02:00
unknown
f3172a8957 Merge mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge


BitKeeper/etc/ignore:
  auto-union
mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-09-23 07:37:41 +02:00
unknown
97c3a27357 Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge
2006-09-23 07:12:00 +02:00
unknown
1e84e31c93 Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge


BitKeeper/etc/ignore:
  auto-union
mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-09-23 07:11:32 +02:00
unknown
2bfeecca15 Merge mysql.com:/users/lthalmann/bkroot/mysql-5.0-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-5.0-merge


sql/ha_ndbcluster.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-09-23 06:00:50 +02:00
unknown
14ad51e09e Merge mysql.com:/users/lthalmann/bkroot/mysql-4.1-rpl
into  mysql.com:/users/lthalmann/bk/MERGE/mysql-4.1-merge


BitKeeper/etc/ignore:
  auto-union
mysql-test/r/myisam.result:
  Auto merged
mysql-test/t/myisam.test:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-09-23 05:58:48 +02:00
unknown
0c5d362750 Fix for bug #19121: Windows incompatible udf_example
mysql-test/mysql-test-run.pl:
  fixed path for udf_example.so when running testsuite on Windows
sql/CMakeLists.txt:
  Added missing udf_example
sql/Makefile.am:
  Added udf_example files for make dist
sql/udf_example.c:
  fix for Windows: Windows doesn't have socket.h and friends
  
  Added replacements for strmov,bzero and memcpy_fixed when compiling standalone.
sql/udf_example.def:
  BitKeeper file /home/georg/work/mysql/prod/mysql-5.0-win/sql/udf_example.def
2006-09-22 14:42:43 +02:00
unknown
fcd21bd4ad Added build rule for mysql_upgrade.exe 2006-09-22 07:38:24 +02:00
unknown
bebf867448 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2006-09-21 20:03:39 +02:00
unknown
d1dfac0b58 Add a dummy file for "Docs/manual.chm" as we need it for "make dist" to work.
Docs/manual.chm:
  BitKeeper file /MySQL/M50/push-5.0/Docs/manual.chm
2006-09-21 17:38:42 +02:00
unknown
dab27eaa20 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-toteam
2006-09-21 17:18:20 +02:00