Commit graph

34909 commits

Author SHA1 Message Date
unknown
e5c1656e97 Merge pilot.mysql.com:/home/msvensson/mysql/mysql-5.0
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint


BitKeeper/etc/ignore:
  auto-union
2007-02-13 10:00:53 +01:00
unknown
faacf58091 Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint


BitKeeper/etc/gone:
  auto-union
mysys/my_getopt.c:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/table.cc:
  Auto merged
2007-02-13 09:56:56 +01:00
unknown
e656c582bc Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26209


sql/sql_select.cc:
  Auto merged
2007-02-12 23:10:33 -08:00
unknown
4c2bc81ae7 Merge mysql.com:/home/hf/work/20691/my50-20691
into  mysql.com:/home/hf/work/25492/my50-25492


sql/item.cc:
  Auto merged
2007-02-13 01:23:23 +04:00
unknown
e7e2550610 Merge bk@192.168.21.1:mysql-5.0-opt
into  mysql.com:/home/hf/work/25492/my50-25492
2007-02-13 01:20:02 +04:00
unknown
38fa86a12e Merge bk@192.168.21.1:mysql-4.1-opt
into  mysql.com:/home/hf/work/25492/my41-25492
2007-02-13 01:18:52 +04:00
unknown
04b64f0034 Merge mysql.com:/home/hf/work/25492/my41-25492
into  mysql.com:/home/hf/work/25492/my50-25492


libmysqld/lib_sql.cc:
  merging
2007-02-13 00:59:30 +04:00
unknown
fd76e14893 bug #25492 (Invalid deallocation in mysql_stmt_fetch)
libmysqld/lib_sql.cc:
  code modified to prevent freeing of memory that wasn't malloc-ed.
  Now we check if MYSQL_STMT::result was used.
2007-02-13 00:55:45 +04:00
unknown
dfe66b93c8 Merge mysql.com:/home/gluh/MySQL/Merge/5.0
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-02-12 19:36:47 +04:00
unknown
5e84eb5652 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt
2007-02-12 19:29:20 +04:00
unknown
7ca34a798f valgrind error fix 2007-02-12 19:28:49 +04:00
unknown
e307a46caf Fixed MacOSX/Intel linking problem
Common symbols with and without initialization
 cause the apple linker to exclude then from the
 list of global symbols.
2007-02-12 16:02:53 +02:00
unknown
1c28548966 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/tnurnberg/24660/50-24660


sql/table.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
2007-02-12 14:49:34 +01:00
unknown
8a34c4bb78 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  mysql.com:/home/tnurnberg/24660/41-24660


sql/table.cc:
  Auto merged
2007-02-12 14:39:45 +01:00
unknown
91f684a5ad Merge mysql.com:/home/tnurnberg/24660/41-24660
into  mysql.com:/home/tnurnberg/24660/50-24660


mysql-test/r/type_enum.result:
  Auto merged
sql/table.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
2007-02-12 14:32:06 +01:00
unknown
4dc7c1aa46 Bug#24660: "enum" field type definition problem
ENUMs weren't allowed to have character 0xff, a perfectly good character in some locales.
This was circumvented by mapping 0xff in ENUMs to ',', thereby prevent actual commas from
being used. Now if 0xff makes an appearance, we find a character not used in the enum and
use that as a separator. If no such character exists, we throw an error.

Any solution would have broken some sort of existing behaviour. This solution should
serve both fractions (those with 0xff and those with ',' in their enums), but
WILL REQUIRE A DUMP/RESTORE CYCLE FROM THOSE WITH 0xff IN THEIR ENUMS. :-/
That is, mysqldump with their current server, and restore when upgrading to one with
this patch.


mysql-test/r/type_enum.result:
  Bug#24660: "enum" field type definition problem
  
  Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
  char in some locales), or ',', or both.
mysql-test/t/type_enum.test:
  Bug#24660: "enum" field type definition problem
  
  Show that enums can now contain NAMES_SEP_CHAR (0xff, which is a perfectly respectable
  char in some locales), or ',', or both.
sql/table.cc:
  Bug#24660: "enum" field type definition problem
  
  Revert fix for Bug#20922.
sql/unireg.cc:
  Bug#24660: "enum" field type definition problem
  
  Use a field-separator for ENUM-values that is not part of those values. If impossible,
  throw error.
2007-02-12 14:31:44 +01:00
unknown
2572c82621 Bug#24630 Subselect query crashes mysqld
The crash happens because second filling of the same I_S table happens in
case of subselect with order by. table->sort.io_cache previously allocated
in create_sort_index() is deleted during second filling
(function get_schema_tables_result). There are two places where
I_S table can be filled: JOIN::exec and create_sort_index().
To fix the bug we should check if the table was already filled
in one of these places and skip processing of the table in second.


mysql-test/r/information_schema.result:
  test case
mysql-test/t/information_schema.test:
  test case
sql/mysql_priv.h:
  added new parameter 'executed_place' to function get_schema_tables_result()
sql/sql_select.cc:
  added new parameter 'executed_place' to function get_schema_tables_result()
sql/sql_show.cc:
  added more accurate check for cases when we need to refresh I_S table
sql/table.cc:
  added more accurate check for cases when we need to refresh I_S table
sql/table.h:
  added more accurate check for cases when we need to refresh I_S table
2007-02-12 16:06:14 +04:00
unknown
07f36668ae bug #20691 (INSERT (DEFAULT) may insert garbage with NO DEFAULT NOT NULL field)
Some fields (GEOMETRY first of all) can't be handled properly in this
case at all. So we return an error in this case


mysql-test/r/default.result:
  result fixed
mysql-test/r/gis.result:
  result fixed
mysql-test/t/default.test:
  VIEW test added
mysql-test/t/gis.test:
  testcase added
sql/item.cc:
  set_defaults() changed with the 'reset()'
2007-02-12 15:41:36 +04:00
unknown
1932ac9aae Merge olga.mysql.com:/home/igor/mysql-5.0-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug26159
2007-02-11 22:48:40 -08:00
unknown
ac8e029357 Fixed bug #26209.
The function make_unireg_sortorder ignored the fact that any
view field is represented by a 'ref' object.
This could lead to wrong results for the queries containing
both GROUP BY and ORDER BY clauses.


mysql-test/r/view.result:
  Added a test case for bug #26209.
mysql-test/t/view.test:
  Added a test case for bug #26209.
2007-02-11 19:36:46 -08:00
unknown
5e42c0de8d sql_view.cc:
Post fix for bug#12122.
information_schema.result:
  Corrected test case after fixing bug#12122.


sql/sql_view.cc:
  Post fix for bug#12122.
mysql-test/r/information_schema.result:
  Corrected test case after fixing bug#12122.
2007-02-11 22:52:12 +03:00
unknown
a544b64f8d Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/12122-bug-5.0-opt-mysql
2007-02-11 21:03:40 +03:00
unknown
3e4f834dfb Fixed bug #26159.
A wrong order of statements in QUICK_GROUP_MIN_MAX_SELECT::reset
caused a crash when a query with DISTINCT was executed by a loose scan
for an InnoDB table that had been emptied. 


mysql-test/r/innodb_mysql.result:
  Added a test case for bug #26159.
mysql-test/t/innodb_mysql.test:
  Added a test case for bug #26159.
sql/opt_range.cc:
  Fixed bug #26159.
  A wrong order of statements in QUICK_GROUP_MIN_MAX_SELECT::reset
  caused a crash when a query with DISTINCT was executed by a loose scan
  for an InnoDB table that had been emptied. 
  For an empty table quick_prefix_select->reset() was not called at all
  and thus some important initialization steps were missing.
2007-02-10 23:55:56 -08:00
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
2abc977de9 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2007-02-09 12:53:53 +01:00
unknown
4c4f506238 Bug#25126: Reference to non-existant column in UPDATE...ORDER BY... crashes server
"update existingtable set anycolumn=nonexisting order by nonexisting" would crash
the server.

Though we would find the reference to a field, that doesn't mean we can then use
it to set some values.  It could be a reference to another field.  If it is NULL, 
don't try to use it to set values in the Item_field and instead return an error.

Over the previous patch, this signals an error at the location of the error, rather
than letting the subsequent deref signal it.


mysql-test/r/order_by.result:
  Verify that all permutations work.
mysql-test/t/order_by.test:
  Verify that all permutations work.
sql/item.cc:
  When the field is NULL, don't dereference it when we set_field().  
  Instead, raise an error.
2007-02-09 11:05:36 +01: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
906a4842d5 make_binary_distribution.sh:
Copy "ndb_size.tmpl" into binary distribution (Bug#24191)


scripts/make_binary_distribution.sh:
  Copy "ndb_size.tmpl" into binary distribution (Bug#24191)
2007-02-09 00:10:40 +01: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
762aa1c0bd Merge mysql.com:/home/gluh/MySQL/Merge/4.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.0-opt


BitKeeper/etc/gone:
  auto-union
mysys/my_getopt.c:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2007-02-08 15:34:53 +04: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
7c08621c5a Merge mysql.com:/home/gluh/MySQL/Merge/4.1
into  mysql.com:/home/gluh/MySQL/Merge/4.1-opt


sql/item_func.cc:
  Auto merged
2007-02-08 14:54:49 +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
75d614e053 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  poseidon.mysql.com:/home/tomas/mysql-4.1-ndb
2007-02-08 00:25:30 +07: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
1c3b070772 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2007-02-07 13:42:49 +01:00
unknown
a11fb9ebc4 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into  mysql.com:/windows/Linux_space/MySQL/mysql-5.0-ndb
2007-02-07 12:33:36 +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
772e03c225 Bug#10777 ERROR File = sql_lex.cc, Line = 93 The identifier "symbols" is undefined.
- Protect againt empty/corrupt lex_hash-h by writing output from gen_lex_hash to 
   a temporary file first.


sql/Makefile.am:
  Protect against empty lex_hash.h due to failed execution of
  gen_lex_hash by writing outpout to a tmp file first
2007-02-07 09:46:20 +01:00
unknown
f3463a8c82 bug#25821 Excessive partition pruning for multi-range index scan in NDB API: post-review fix, added default value 2007-02-07 09:19:33 +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
b3d96f7972 Merge pilot.mysql.com:/home/msvensson/mysql/mysql-4.1-maint
into  pilot.mysql.com:/home/msvensson/mysql/mysql-5.0-maint


extra/perror.c:
  Auto merged
2007-02-06 23:01:48 +01:00