Commit graph

16170 commits

Author SHA1 Message Date
unknown
308da65162 Bug#12122: The MERGE algorithm isn't applicable if the ORDER BY clause is
present.

A view created with CREATE VIEW ... ORDER BY ... cannot be resolved with
the MERGE algorithm, even when no other part of the CREATE VIEW statement
would require the view to be resolved using the TEMPTABLE algorithm.

The check for presence of the ORDER BY clause in the underlying select is 
removed from the st_lex::can_be_merged() function.
The ORDER BY list of the underlying select is appended to the ORDER BY list 


mysql-test/t/view.test:
  Added a test case for bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
mysql-test/r/view.result:
  Added a test case for bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
sql/sql_lex.cc:
  Bug#12122: Views with ORDER BY can't be resolved using MERGE algorithm.
  The st_lex::can_be_merged() function now allows views with the ORDER BY
  clause to be resolved using MERGE algorithm. The ORDER BY list of the view 
  is appended to the ORDER BY list of the embedding select.
2007-02-10 00:00:07 +03:00
unknown
ce8c0ec29b Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26017
2007-02-09 12:58:35 -08:00
unknown
7ab33d5070 Fixed bug #26017.
Objects of the class Item_equal contain an auxiliary member
eval_item of the type cmp_item that is used only for direct 
evaluation of multiple equalities. Currently a multiple equality
is evaluated directly only in the cases when the equality holds
at most for one row in the result set.
The compare collation of eval_item was determined incorectly.
It could lead to returning incorrect results for some queries.


mysql-test/r/join_outer.result:
  Added a test case for bug #26017.
mysql-test/t/join_outer.test:
  Added a test case for bug #26017.
sql/item_cmpfunc.cc:
  Fixed bug #26017.
  Objects of the class Item_equal contain an auxiliary member
  eval_item of the type cmp_item that is used only for direct 
  evaluation of multiple equalities. Currently a multiple equality
  is evaluated directly only in the cases when the equality holds
  at most for one row in the result set.
  The compare collation of eval_item was determined incorrectly.
  It could lead to returning incorrect results for some queries.
sql/item_cmpfunc.h:
  Fixed bug #26017.
  Removed the cmp_collation member from the Item_equal class as useless
  for the current implementation of the class.
2007-02-09 12:54:50 -08:00
unknown
dd6feec4f4 Bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were
inserted.

The select_insert::send_eof() function now resets LAST_INSERT_ID variable if
no rows were inserted.


mysql-test/t/insert_select.test:
  Added a test case for bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were inserted.
mysql-test/r/insert_select.result:
  Added a test case for bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were inserted.
sql/sql_insert.cc:
  Bug#23170: LAST_INSERT_ID isn't reset to 0 in INSERT .. SELECT when no rows were
  inserted.The select_insert::send_eof() function now resets LAST_INSERT_ID variable if
  no rows were inserted.
2007-02-09 22:25:09 +03:00
unknown
d4b4952f8b Merge bk-internal:/home/bk/mysql-5.0-opt
into  macbook.gmz:/Users/kgeorge/mysql/work/B22344-5.0-opt
2007-02-09 11:07:35 +02:00
unknown
79c51f21cb Addendum to fix of bug #22344 : removed dead code. 2007-02-09 11:05:23 +02:00
unknown
686be32eca Merge siva.hindu.god:/home/tsmith/m/bk/50
into  siva.hindu.god:/home/tsmith/m/bk/maint/50
2007-02-08 16:01:45 -07:00
unknown
43ada21fe1 Merge siva.hindu.god:/home/tsmith/m/bk/41
into  siva.hindu.god:/home/tsmith/m/bk/maint/41


sql/sql_prepare.cc:
  Manual merge
2007-02-08 16:01:13 -07:00
unknown
eac3e9572a Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt


sql/field_conv.cc:
  Auto merged
2007-02-08 15:34:22 +04:00
unknown
3609c3a4a3 Fixed bug #25931.
View check option clauses were ignored for updates of multi-table
views when the updates could not be performed on fly and the rows
to update had to be put into temporary tables first.



mysql-test/r/view.result:
  Added a test case for bug #25931.
mysql-test/t/view.test:
  Added a test case for bug #25931.
  Adjusted another existed test case to have the correct result.
sql/sql_update.cc:
  Fixed bug #25931.
  View check option clauses were ignored for updates of multi-table
  views when the updates could not be performed on fly and the rows
  to update had to be put into temporary tables first.
  Added the required check to multi_update::do_updates to fix the problem.
2007-02-07 14:41:57 -08:00
unknown
6a46b6d6e6 Bug#12204
"CONNECTION is a reserved keyword"
  Allow connection to be used as an ordinary identifier
  Tests included.


mysql-test/r/keywords.result:
  test that CONNECTION may be used as ordinary identifier
  test that CONNECTION may be used in stored procedure.
mysql-test/t/keywords.test:
  test that CONNECTION may be used as ordinary identifier
  test that CONNECTION may be used in stored procedure.
sql/sql_yacc.yy:
  Set CONNECTION as an unreserved keyword
2007-02-07 14:22:19 -08:00
unknown
1daa0e4435 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  poseidon.mysql.com:/home/tomas/mysql-5.0-ndb


sql/ha_ndbcluster.cc:
  Auto merged
2007-02-08 00:00:14 +07:00
unknown
780e60af03 Avoid problem with "noinst_HEADERS" being sucked into "mysqld_LDADD" if openssl_libs and yassl_libs are empty strings 2007-02-07 15:11:03 +01:00
unknown
7d678ab9d6 Merge mysql.com:/windows/Linux_space/MySQL/mysql-5.0
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb


ndb/include/ndbapi/NdbIndexScanOperation.hpp:
  Auto merged
ndb/include/ndbapi/NdbScanOperation.hpp:
  Auto merged
ndb/src/ndbapi/NdbScanOperation.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
2007-02-07 12:29:34 +01:00
unknown
c8f470eaa6 NdbScanOperation.hpp, NdbScanOperation.cpp, ha_ndbcluster.cc:
bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
ha_ndbcluster.h:
  Removed stray mthod declaration


sql/ha_ndbcluster.h:
  Removed stray mthod declaration
ndb/include/ndbapi/NdbScanOperation.hpp:
  bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
ndb/src/ndbapi/NdbScanOperation.cpp:
  bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
sql/ha_ndbcluster.cc:
  bug#25821  Excessive partition pruning for multi-range index scan in NDB API: added multi_range error checking in end_of_bound
2007-02-07 11:36:34 +01:00
unknown
3a54e5930d Fixed bug #26124: SELECT from a view wrapper over a table
with a column of the DATETIME type could return a wrong 
result set if the WHERE clause included a BETWEEN condition
on the column.
Fixed the method Item_func_between::fix_length_and_dec
where the aggregation type for BETWEEN predicates calculated
incorrectly if the first argument was a view column of the
DATETIME type.


mysql-test/r/view.result:
  Added a test case for bug #26124.
mysql-test/t/view.test:
  Added a test case for bug #26124.
2007-02-07 00:18:36 -08:00
unknown
ba8a684dcb Fix for bug#25821 Excessive partition pruning for multi-range index scan in NDB API: don't set distribution key if multi_range 2007-02-06 23:06:58 +01:00
unknown
976f0a391c Bug#19978: INSERT .. ON DUPLICATE erroneously reports some records were
updated.

INSERT ... ON DUPLICATE KEY UPDATE reports that a record was updated when
the duplicate key occurs even if the record wasn't actually changed
because the update values are the same as those in the record.

Now the compare_record() function is used to check whether the record was
changed and the update of a record reported only if the record differs
from the original one.


sql/sql_update.cc:
  Bug#19978: INSERT .. ON DUPLICATE erroneously reports some records were
  updated.
  The compare_record() function was changed to non-static one.
sql/sql_insert.cc:
  Bug#19978: INSERT .. ON DUPLICATE erroneously reports some records were
  updated.
  Now the compare_record() function is used to check whether the record was
  changed and the update of a record reported only if the record differs
  from the original one.
sql/mysql_priv.h:
  Bug#19978: INSERT .. ON DUPLICATE erroneously reports some records were
  updated.
  Added the prototype of the compare_record() function.
mysql-test/t/insert_select.test:
  Added a test case for bug#19978: INSERT .. ON DUPLICATE erroneously reports
  some records were updated.
mysql-test/r/insert_select.result:
  Added a test case for bug#19978: INSERT .. ON DUPLICATE erroneously reports
  some records were updated.
2007-02-07 00:46:03 +03:00
unknown
30e01d9eea Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint
2007-02-06 20:23:58 +01:00
unknown
56e9231f65 Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint


configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/t/range.test:
  Auto merged
mysys/default.c:
  Auto merged
scripts/mysqld_multi.sh:
  Auto merged
sql/field.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Merfge backport
2007-02-06 15:50:53 +01:00
unknown
dcafc4c480 Merge 192.168.0.10:mysql/mysql-5.0-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint


mysql-test/mysql-test-run.pl:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
2007-02-06 14:48:22 +01:00
unknown
56820e1cdc Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


Makefile.am:
  Auto merged
configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysys/default.c:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/select.result:
  Manual merge
mysql-test/t/select.test:
  Manual merge
2007-02-06 14:45:08 +01:00
unknown
31aee856d8 Merge 192.168.0.10:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint


mysys/default.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2007-02-06 14:44:05 +01:00
unknown
b93d81a8d1 Merge neptunus.(none):/home/msvensson/mysql/my41-nmj
into  neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint


sql/sql_prepare.cc:
  Auto merged
2007-02-06 14:42:40 +01:00
unknown
4660f6d5ef Merge bk-internal:/home/bk/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
2007-02-06 14:27:43 +01:00
unknown
f58351c158 Merge 192.168.0.10:mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint


sql/sql_prepare.cc:
  Auto merged
2007-02-06 14:27:00 +01:00
unknown
ffde1cf09c Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b23782/b23782.5.0


sql/sql_analyse.cc:
  Auto merged
2007-02-06 17:18:43 +04:00
unknown
1d2d9a033d Bug#8983 one place that isn't strict-aliasing-safe
- Backport fix from 5.0


sql/sql_prepare.cc:
  Avoid problems with -no-strict-aliasing in gcc 4.0+
2007-02-06 14:07:40 +01:00
unknown
07efbe8c2a Fix for bug #23782: Stored procedures: crash if variable in procedure
analyse

We have to call fix_fields() for procedure analyse' arguments as they may   
not be
fixed in some circumstances.

(as the crash appears when mysqld starts skipping binlog, a test case
will be added when we can --skip-bin-log in -master.opt)


sql/sql_analyse.cc:
  Fix for bug #23782: Stored procedures: crash if variable in procedure
  analyse
    - call fix_fields() if arguments are not fixed.
2007-02-06 15:58:40 +04:00
unknown
70323365c1 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug23938/my41-bug23938


sql/item_timefunc.cc:
  Auto merged
2007-02-06 14:58:07 +04:00
unknown
e976ea37b0 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug23938/my50-bug23938


sql/item_timefunc.cc:
  Auto merged
2007-02-06 14:28:46 +04:00
unknown
61b286e416 Merge mysql.com:/usr/home/ram/work/bug23938/my41-bug23938
into  mysql.com:/usr/home/ram/work/bug23938/my50-bug23938


sql/item_timefunc.cc:
  Auto merged
mysql-test/r/cast.result:
  SCCS merged
mysql-test/t/cast.test:
  SCCS merged
2007-02-06 13:57:20 +04:00
unknown
c35ceeca9e Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
Ignoring error codes from type conversion allows default (wrong) values to
 go unnoticed in the formation of index search conditions.
 Fixed by correctly checking for conversion errors.


mysql-test/r/select.result:
  Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
   - test case
mysql-test/t/select.test:
  Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
   - test case
sql/field.h:
  Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
   - don't ignore coversion errors
sql/field_conv.cc:
  Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
   - don't ignore coversion errors
sql/item.cc:
  Bug #22344: InnoDB keys act strange on datetime vs timestamp comparison
   - don't ignore coversion errors
2007-02-06 11:08:57 +02:00
unknown
9946ed16f3 Test and bug fixes and removed unneccessary files.
mysys/my_getopt.c:
  Fixes problem with getting output lines from
  my_getopt in random places in tests.
sql/sql_prepare.cc:
  Fixes problem with failing mysql_client_test
  on some machines. This is actually a problem
  with prepared statements.
2007-02-05 17:09:44 +02:00
unknown
30edb3cd0f Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/usr/home/ram/work/bug10798/my41-bug10798


sql/slave.cc:
  Auto merged
2007-02-05 10:20:47 +04:00
unknown
cbace0b7b4 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/usr/home/ram/work/bug10798/my50-bug10798


sql/slave.cc:
  Auto merged
2007-02-05 10:09:31 +04:00
unknown
f27ea1b152 Merge mysql.com:/usr/home/ram/work/bug10798/my41-bug10798
into  mysql.com:/usr/home/ram/work/bug10798/my50-bug10798


sql/slave.cc:
  merging
2007-02-05 09:54:23 +04:00
unknown
1534bb792b Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24035
2007-02-03 10:37:45 -08:00
unknown
d3c1511a36 After merge fix 2007-02-03 09:26:11 +01:00
unknown
e0d8e8fd09 Fix bug #24035.
This performance degradation for UPDATEs could be observed in the update
statements for which the search key cannot be converted to any valid
value of the type of the search column, like for a  the condition
int_fld=99999999999999999999999999, though it can be guaranteed here
that there is no row with such a key value. 


mysql-test/r/update.result:
  Added a test case for bug #24035.
mysql-test/t/update.test:
  Added a test case for bug #24035.
sql/opt_range.cc:
  Fix bug #24035.
  This performance degradation for could be observed in the update
  statements for which the search key cannot be converted to any valid
  value of the type of the search column, like for a  the condition
  int_fld=99999999999999999999999999, though it can be guaranteed here
  that there is no row with such a key value. 
  Now the function get_mm_leaf creates trees of the type SEL_ARG::IMPOSSIBLE 
  for such conditions that tells the range scan not to perform any search
  at all.
2007-02-02 15:22:10 -08:00
unknown
8a9c521bba Merge chilla.local:/home/mydev/mysql-4.1-axmrg
into  chilla.local:/home/mydev/mysql-5.0-axmrg


sql/handler.cc:
  Auto merged
sql/examples/ha_tina.cc:
  Auto merged
sql/examples/ha_tina.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
mysql-test/Makefile.am:
  Manual merged
2007-02-02 23:05:46 +01:00
unknown
3c0aca02fe Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg


sql/item_func.cc:
  Auto merged
2007-02-02 21:32:58 +01:00
unknown
0dc19dadb9 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  chilla.local:/home/mydev/mysql-4.1-axmrg
2007-02-02 20:23:03 +01:00
unknown
98b9ac693a After merge fix 2007-02-02 20:19:13 +01:00
unknown
ed596723c7 Reverting previous change from 1L -> 1ULL and LL(1) -> 1ULL and
making all to be uniform ULL(1), which is a local definition.
2007-02-02 13:11:44 -05:00
unknown
04cbadde7a another valgrind error fix for 4.1(backport from 5.0) 2007-02-02 17:18:42 +04:00
unknown
9bb750f5e8 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-02-02 15:21:14 +04:00
unknown
da984b3376 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  chilla.local:/home/mydev/mysql-5.0-axmrg


BUILD/SETUP.sh:
  Auto merged
configure.in:
  Auto merged
2007-02-01 17:10:09 +01:00
unknown
3b8011015f Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/ram/work/b26012/b26012.4.1


sql/field.h:
  Auto merged
2007-02-01 19:56:14 +04:00
unknown
a4f74b8664 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b26012/b26012.5.0


sql/field.h:
  Auto merged
2007-02-01 19:55:11 +04:00