Commit graph

20961 commits

Author SHA1 Message Date
unknown
394fe01f7f Merge mysql.com:/Users/kent/mysql/bk/mysql-4.0
into  mysql.com:/Users/kent/mysql/bk/mysql-4.1-new
2006-07-24 10:59:51 +02:00
unknown
ea123dacfd mwasmnlm, mwccnlm, mwldnlm:
Filter out strange control characters, messes up logs


netware/BUILD/mwasmnlm:
  Filter out strange control characters, messes up logs
netware/BUILD/mwccnlm:
  Filter out strange control characters, messes up logs
netware/BUILD/mwldnlm:
  Filter out strange control characters, messes up logs
2006-07-24 10:55:26 +02:00
unknown
9d5b76eba9 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/usr/home/ram/work/4.1.b16327


sql/field.cc:
  Auto merged
mysql-test/r/func_time.result:
  merging
mysql-test/t/func_time.test:
  merging
2006-07-23 14:17:01 +05:00
unknown
9d432f0dae Add missing "DROP TABLE" clause 2006-07-22 02:36:17 +04:00
unknown
68698c04ab BUG#20975: Incorrect query result for NOT (subquery):
Add implementations of Item_func_{nop,not}_all::neg_transformer


mysql-test/r/subselect.result:
  BUG#20975: testcase
mysql-test/t/subselect.test:
  BUG#20975: testcase
sql/mysql_priv.h:
  Make chooser_compare_func_creator visible in item.h
2006-07-21 03:04:04 +04:00
unknown
c988ef942f Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mysql-4.1.19983


libmysqld/lib_sql.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-07-20 16:03:21 +05:00
unknown
f794dc3aa1 Manual merge required.
mysql-test/r/mysql_client.result:
  manual merge
mysql-test/t/mysql_client.test:
  manual merge
2006-07-19 17:39:53 -04:00
unknown
e71f3f1f14 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint_bug20328


client/mysql.cc:
  Auto merged
mysql-test/r/bug20328.result:
  Merge rename: mysql-test/r/mysql_client.result -> mysql-test/r/bug20328.result
mysql-test/t/bug20328.test:
  Merge rename: mysql-test/t/mysql_client.test -> mysql-test/t/bug20328.test
2006-07-19 17:00:39 -04:00
unknown
6ec7976df9 Fixed bug #17526: incorrect print method
for class Item_func_trim. 
For 4.1 it caused wrong output for EXPLAIN EXTENDED commands
if expressions with the TRIM function of two arguments were used.
For 5.0 it caused an error message when trying to select
from a view with the TRIM function of two arguments.
This unexpected error message was due to the fact that the
print method for the class Item_func_trim was inherited from
the class Item_func. Yet the TRIM function does not take a list
of its arguments. Rather it takes the arguments in the form:
  [{BOTH | LEADING | TRAILING} [remstr] FROM] str) |
  [remstr FROM] str


mysql-test/r/func_str.result:
  Added a test case for bug #17526: uncorrect print method
  for class Item_func_trim.
mysql-test/t/func_str.test:
  Added a test case for bug #17526: incorrect print method
  for class Item_func_trim.
sql/item_strfunc.cc:
  Fixed bug #17526: incorrect print method
  for class Item_func_trim.
      
  Added an implementation for the virtual function print
  in the class Item_func_trim.
  The implementation takes into account the fact the TRIM
  function takes the arguments in the following forms:
    [{BOTH | LEADING | TRAILING} [remstr] FROM] str) |
    [remstr FROM] str
sql/item_strfunc.h:
  Fixed bug #17526: incorrect print method
  for class Item_func_trim.
      
  Added an implementation for the virtual function print
  in the class Item_func_trim.
  Declared a virtual method to return the mode of the TRIM 
  function: LEADING, TRAILING or BOTH.
  Added implementations of this method for Item_func_trim and
  its descendants Item_func_ltrim and Item_func_rtrim.
2006-07-19 12:36:55 -07:00
unknown
73f47590aa Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint_bug16180


sql/set_var.cc:
  Auto merged
2006-07-19 13:09:11 -04:00
unknown
d7c0c66706 Bug #21135 Crash in test "func_time"
- backport patch from 5.0
 - "table" can be NULL in temporary fields used for type conversion


sql/field.cc:
  table can be NULL in temporary fields used for type conversion.
  Store value in field as if db_low_byte_first was set.
sql/field.h:
  table can be NULL in temporary fields used for type conversion.
  Store value in field as if db_low_byte_first was set.
2006-07-19 15:55:04 +02:00
unknown
b53e47a1ec mysql.spec.sh:
Added new "mysql_explain_log" man page
  Added missing install of "myisam_ftdump" man page
  Added missing install of "mysqlman" man page


support-files/mysql.spec.sh:
  Added new "mysql_explain_log" man page
  Added missing install of "myisam_ftdump" man page
  Added missing install of "mysqlman" man page
2006-07-19 02:46:48 +02:00
unknown
6abe1c7158 Merge moonbone.local:/home/evgen/bk-trees/mysql-4.1
into  moonbone.local:/work/tmp_merge-4.1-opt-mysql


mysql-test/r/date_formats.result:
  Auto merged
mysql-test/t/date_formats.test:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
2006-07-18 23:30:09 +04:00
unknown
5a77e566ab Merge moonbone.local:/work/mysql-4.1
into  moonbone.local:/work/tmp_merge-4.1-opt-mysql


mysql-test/r/date_formats.result:
  Auto merged
mysql-test/t/date_formats.test:
  Auto merged
2006-07-18 21:30:26 +04:00
unknown
d39e85320f Backporting Kostja's changes made for 5.0 into 4.1.
Please use "ul" when merging this changeset to 5.0.


sql/item_timefunc.cc:
  Fix a valgrind warning in type_date test.
sql/sql_locale.cc:
  Fix a Windows build failure:  "false" -> FALSE
2006-07-18 15:53:12 +05:00
unknown
7332854435 Changes to make "sql/sql_locale.cc" compile + link on Windows:
1) When initializing a boolean variable, do not use string representations '"false"' and '"true"' 
    but rather the boolean values 'false' and 'true'.
2) Add the module to the various Windows description files.


VC++Files/libmysqld/libmysqld.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/libmysqld/libmysqld.vcproj:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/libmysqld/libmysqld_ia64.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/mysqldemb/mysqldemb.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/mysqldemb/mysqldemb.vcproj:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/mysqldemb/mysqldemb_ia64.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/sql/mysqld.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/sql/mysqld.vcproj:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/sql/mysqld_ia64.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/sql/mysqldmax.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
VC++Files/sql/mysqldmax_ia64.dsp:
  Add "sql/sql_locale.cpp" with similar settings as the other files.
sql/sql_locale.cc:
  When initializing a boolean variable, do not use stringrepresentations '"false"' and '"true"' 
  but rather the boolean values 'false' and 'true'.
2006-07-17 20:40:41 +02:00
unknown
e732d3527f strings/strtod.c : Ensure the definition of "EOVERFLOW" is available.
In 5.0, this is already solved, so that is a null-merge ("ul").


strings/strtod.c:
  This file needs the definition of "EOVERFLOW",
  which is on some platforms (Windows, OpenBSD) provided only by "my_base.h".
  As this in turn includes "my_global.h", the include file name can be changed.
2006-07-17 19:38:46 +02:00
unknown
6067045823 Merge orca.ndb.mysql.com:/space_old/pekka/ndb/version/my41
into  orca.ndb.mysql.com:/space_old/pekka/ndb/version/my41-1.2461
2006-07-15 21:54:47 +02:00
unknown
7830197bcc mysql.spec.sh:
Command "ndb_mgm" is an optional tool, and should only be in "ndb-tools" package (bug#21058)


support-files/mysql.spec.sh:
  Command "ndb_mgm" is an optional tool, and should only be in "ndb-tools" package (bug#21058)
2006-07-15 00:24:35 +02:00
unknown
e0b7bbc01d Bug #20721: mysql_install_db first line is blank.
Minor script changes for uniformity.


scripts/fill_func_tables.sh:
  Switched to standard !@PERL@ usage.  Added Copyright and more specific original author information.
scripts/mysql_install_db.sh:
  Removed leading empty line.
2006-07-14 15:22:16 -04:00
unknown
8f3aa7ef02 Increment the version number to 4.1.22, as 4.1.21 is cloned. 2006-07-14 17:55:34 +02:00
unknown
e7ea49dc0d Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/usr/home/ram/work/4.1.b15195
2006-07-14 16:58:51 +05:00
unknown
39f9adfa84 --{skip-}merge option added which allows the user to disable merge engine and
to avoid the potential security problem.
(see bug #15195: Security Breach with MERGE table)
2006-07-14 16:26:58 +05:00
unknown
e71cf7c457 Merge gkodinov@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  rakia.(none):/home/kgeorge/mysql/autopush/B17212-4.1-opt
2006-07-14 12:49:14 +03:00
unknown
ae3d1248ef Merge abotchkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/hf/work/mysql-4.1.16017
2006-07-14 00:21:13 +05:00
unknown
d9992cc79e Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/home/hf/work/mysql-4.1.16017


include/sql_common.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
sql-common/client.c:
  Auto merged
sql/sql_parse.cc:
  Auto merged
libmysqld/libmysqld.c:
  merging
2006-07-13 22:32:18 +05:00
unknown
3c2bdb59bc Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.(none):/home/cmiller/work/mysql/m41-maint--07AB5
2006-07-13 13:10:59 -04:00
unknown
5392be95ec Merge bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  zippy.(none):/home/cmiller/work/mysql/m41-maint--07AB5
2006-07-13 13:03:36 -04:00
unknown
4bdc42514c Merge igreenhoe@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  anubis.greendragongames.com:/home/greenman/workspace-mysql/mysql/pending/bug-4.1-15977
2006-07-13 00:33:49 -07:00
unknown
06e218194f Fix for Bug #19364 "mysql --help gives old informations".
Old option ordering in the help was confusing to some users.  Changed
ordering of deprecated options to be consistent, and added mention to
entry for options with a "--no-option" variant mentioning the
"--disable-option" variant.


client/mysql.cc:
  Rearranged options for clarity.  Deprecated "--no-X" options now
  follow the "--X" option, and all of the "--X" options that have a
  "--no-X" variant now mention the "--disable-X" variant.
2006-07-13 00:31:47 -07:00
unknown
7621597785 Bug#20432: mysql client interprets commands in comments
do not look for client-specific commands while inside a multi-line comment.
we will allow multi-comments pretty much anywhere within SQL-statements,
but client-specific commands (help, use, print, ...) must be the first token
in the input.


client/mysql.cc:
  Bug#20432: mysql client interprets commands in comments
mysql-test/r/mysql_client.result:
  Bug#20432: mysql client interprets commands in comments
  test client-side parsing of comments and client-specific commands
mysql-test/t/mysql_client.test:
  Bug#20432: mysql client interprets commands in comments
  test client-side parsing of comments and client-specific commands
2006-07-13 09:04:06 +02:00
unknown
1787072458 Merge dl145k.mysql.com:/data0/mkindahl/bkroot/mysql-4.1
into  dl145k.mysql.com:/data0/mkindahl/bk/mysql-4.1-rpl
2006-07-12 10:04:40 +02:00
unknown
4144543006 Bug #17212 results not sorted correctly by ORDER BY when using index
* don't use join cache when the incoming data set is already ordered
    for ORDER BY
    This choice must be made because join cache will effectively
    reverse the join order and the results will be sorted by the index
    of the table that uses join cache.


mysql-test/r/innodb_mysql.result:
  Bug #17212 results not sorted correctly by ORDER BY when using index
    * Test suite for the bug
mysql-test/t/innodb_mysql.test:
  Bug #17212 results not sorted correctly by ORDER BY when using index
    * Test suite for the bug
sql/sql_select.cc:
  Bug #17212 results not sorted correctly by ORDER BY when using index
    * don't use join cache when the incoming data set is already sorted
2006-07-12 10:57:38 +03:00
unknown
0f7258e0f7 Merge cmiller@bk-internal.mysql.com:/home/bk/mysql-4.1
into  maint1.mysql.com:/data/localhome/cmiller/mysql-4.1
2006-07-12 05:34:56 +02:00
unknown
e2c448fb5c Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  moonbone.local:/work/16302-bug-4.1-opt-mysql


mysql-test/r/subselect.result:
  SCCS merged
mysql-test/t/subselect.test:
  SCCS merged
2006-07-12 06:12:59 +04:00
unknown
03dbc2190d Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  moonbone.local:/work/18503-bug-4.1-mysql


sql/sql_select.cc:
  Auto merged
2006-07-12 02:52:29 +04:00
unknown
d2bbf288a9 Fixed bug#18503: Queries with a quantified subquery returning empty set
may return a wrong result.

An Item_sum_hybrid object has the was_values flag which indicates whether any
values were added to the sum function. By default it is set to true and reset
to false on any no_rows_in_result() call. This method is called only in
return_zero_rows() function. An ALL/ANY subquery can be optimized by MIN/MAX
optimization. The was_values flag is used to indicate whether the subquery
has returned at least one row. This bug occurs because return_zero_rows() is
called only when we know that the select will return zero rows before
starting any scans but often such information is not known.
In the reported case the return_zero_rows() function is not called and
the was_values flag is not reset to false and yet the subquery return no rows
Item_func_not_all and Item_func_nop_all functions return a wrong
comparison result.

The end_send_group() function now calls no_rows_in_result() for each item
in the fields_list if there is no rows were found for the (sub)query.


mysql-test/t/subselect.test:
  Added test case for bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.
mysql-test/r/subselect.result:
  Added test case for bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.
sql/sql_select.cc:
  Fixed bug#18503: Queries with a quantified subquery returning empty set may return a wrong result.
  
  The end_send_group() function now calls no_rows_in_result() for each item
  in the fields_list if there is no matching rows were found.
2006-07-12 01:52:18 +04:00
unknown
26ddd5cb0c Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into  zippy.(none):/home/cmiller/work/mysql/m41-maint--07AB5


mysql-test/r/date_formats.result:
  Auto merged
mysql-test/t/date_formats.test:
  Auto merged
2006-07-11 14:25:42 -04:00
unknown
ed001f18a4 Bug#20729: Bad date_format() call makes mysql server crash
The problem is that the author used the wrong function to send a warning to the 
user about truncation of data.  push_warning() takes a constant string and 
push_warning_printf() takes a format and variable arguments to fill it.

Since the string we were complaining about contains percent characters, the 
printf() code interprets the "%Y" et c. that the user sends.  That's wrong, and
often causes a crash, especially if the date mentions seconds, "%s".

A alternate fix would be to use  push_warning_printf(..., "%s", warn_buff) .


mysql-test/r/date_formats.result:
  Test that an invalid date doesn't crash the server.  We should get a warning back 
  instead of a dead socket.
mysql-test/t/date_formats.test:
  Test that an invalid date doesn't crash the server.  We should get a warning back 
  instead of a dead socket.
sql/time.cc:
  Don't try to use warn_buf as the start of a varible arguement list to send 
  to a warning-formatted my_vsnprintf() .
2006-07-11 13:06:29 -04:00
unknown
27721ce53f ndb - (4.1) trivial fix to error.log (wday=0 was printed as "x")
ndb/src/kernel/error/TimeModule.cpp:
  0=Sunday
2006-07-11 17:07:23 +02:00
unknown
bf01313ccf Merge moonbone.local:/work/allany-4.1-mysql
into  moonbone.local:/work/16302-bug-4.1-opt-mysql
2006-07-11 17:48:33 +04:00
unknown
7642d18146 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  moonbone.local:/home/evgen/bk-trees/mysql-4.1-opt


sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2006-07-11 17:35:36 +04:00
unknown
d1a31ef52a Merge zippy.(none):/home/cmiller/work/mysql/mysql-4.0__bug19006
into  zippy.(none):/home/cmiller/work/mysql/merge/mysql-4.1


client/sql_string.h:
  Auto merged
sql/item_func.h:
  Auto merged
sql/sql_string.h:
  Auto merged
configure.in:
  Null merge.
sql/item_strfunc.cc:
  Null merged
2006-07-11 07:24:59 -04:00
unknown
7bea031d7c Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-4.1-opt
into  moonbone.local:/work/allany-4.1-mysql
2006-07-11 00:36:14 +04:00
unknown
ad88eabd35 Fixed bug#16302: Quantified subquery without any tables gives wrong results
The ALL/ANY subqueries are the subject of MIN/MAX optimization. The matter
of this optimization is to embed MIN() or MAX() function into the subquery
in order to get only one row by which we can tell whether the expression
with ALL/ANY subquery is true or false.
But when it is applied to a subquery like 'select a_constant' the reported bug
occurs. As no tables are specified in the subquery the do_select() function 
isn't called for the optimized subquery and thus no values have been added 
to a MIN()/MAX() function and it returns NULL instead of a_constant.
This leads to a wrong query result.

For the subquery like 'select a_constant' there is no reason to apply
MIN/MAX optimization because the subquery anyway will return at most one row.
Thus the Item_maxmin_subselect class is more appropriate for handling such
subqueries.

The Item_in_subselect::single_value_transformer() function now checks
whether tables are specified for the subquery. If no then this subselect is
handled like a UNION using an Item_maxmin_subselect object.


mysql-test/t/subselect.test:
  Added test case for bug#16302: Quantified subquery without any tables gives wrong results
mysql-test/r/subselect.result:
  Added test case for bug#16302: Quantified subquery without any tables gives wrong results
sql/item_subselect.cc:
  Fixed bug#16302: Quantified subquery without any tables gives wrong results
   
  The Item_in_subselect::single_value_transformer() function now checks
  whether tables are specified for the subquery. If no then this subselect is
  handled like a UNION using an Item_maxmin_subselect object.
2006-07-11 00:34:37 +04:00
unknown
ca1e4aabfa Merge rakia:mysql/4.1/B14553
into  macbook.gmz:/Users/kgeorge/mysql/work/B14553-4.1-opt


sql/sql_class.cc:
  SCCS merged
sql/sql_select.cc:
  SCCS merged
2006-07-10 16:27:04 +03:00
unknown
0806d9a86d BUG#14553: NULL in WHERE resets LAST_INSERT_ID
To make MySQL compatible with some ODBC applications, you can find
the AUTO_INCREMENT value for the last inserted row with the following query:
 SELECT * FROM tbl_name WHERE auto_col IS NULL.
This is done with a special code that replaces 'auto_col IS NULL' with
'auto_col = LAST_INSERT_ID'.
However this also resets the LAST_INSERT_ID to 0 as it uses it for a flag
so as to ensure that only the first SELECT ... WHERE auto_col IS NULL
after an INSERT has this special behaviour.
In order to avoid resetting the LAST_INSERT_ID a special flag is introduced
in the THD class. This flag is used to restrict the second and subsequent
SELECTs instead of LAST_INSERT_ID.


mysql-test/r/odbc.result:
  test suite for the bug
mysql-test/r/rpl_insert_id.result:
  test for the fix in replication
mysql-test/t/odbc.test:
  test suite for the bug
mysql-test/t/rpl_insert_id.test:
  test for the fix in replication
sql/sql_class.cc:
  initialize the flag
sql/sql_class.h:
  flag's declaration and set code when setting the last_insert_id
sql/sql_select.cc:
  the special flag is used instead of last_insert_id
2006-07-10 16:27:03 +03:00
unknown
665db1a6ad ndb - bug#20847: non-debug compile fix
ndb/src/kernel/blocks/dbtup/DbtupMeta.cpp:
  non-debug compile fix
2006-07-10 12:05:51 +02:00
unknown
9be463262b Merge orca.ndb.mysql.com:/space/pekka/ndb/version/my41
into  orca.ndb.mysql.com:/space_old/pekka/ndb/version/my41-bug20847
2006-07-10 11:06:21 +02:00
unknown
d6d8749c22 Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-4.1
into  orca.ndb.mysql.com:/space_old/pekka/ndb/version/my41
2006-07-10 08:04:40 +02:00