Commit graph

51959 commits

Author SHA1 Message Date
unknown
2850d7bd04 merging 2007-12-01 13:07:28 +04:00
unknown
e6ec0c3b2b Merge polly.(none):/home/kaa/src/maint/mysql-5.0-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint


mysql-test/r/insert.result:
  Auto merged
mysql-test/t/insert.test:
  Auto merged
mysql-test/t/type_float.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/field.cc:
  Auto merged
2007-12-01 10:58:34 +03:00
unknown
078639a299 Merge polly.(none):/home/kaa/src/maint/bug26788/my51-bug26788
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint


mysql-test/t/type_float.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/field.cc:
  Auto merged
mysql-test/r/insert.result:
  SCCS merged
mysql-test/t/insert.test:
  SCCS merged
2007-12-01 10:53:50 +03:00
unknown
4fc6d3b2b6 Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint


mysql-test/t/type_float.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/field.cc:
  Auto merged
mysql-test/r/insert.result:
  SCCS merged
mysql-test/t/insert.test:
  SCCS merged
2007-12-01 10:48:41 +03:00
unknown
b97ee1732a Merge polly.(none):/home/kaa/src/maint/bug26788/my50-bug26788
into  polly.(none):/home/kaa/src/maint/bug26788/my51-bug26788


mysql-test/r/insert.result:
  Auto merged
mysql-test/t/cast.test:
  Auto merged
mysql-test/t/insert.test:
  Auto merged
mysql-test/t/type_float.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/field.cc:
  SCCS merged
2007-12-01 10:29:43 +03:00
unknown
1615f83804 Fix for bug #26788 "mysqld (debug) aborts when inserting specific
numbers into char fields" and bug #12860 "Difference in zero padding of
exponent between Unix and Windows"

Rewrote the code that determines what 'precision' argument should be
passed to sprintf() to fit the string representation of the input number
into the field.
We get finer control over conversion by pre-calculating the exponent, so
we are able to determine which conversion format, 'e' or 'f', will be
used by sprintf().
We also remove the leading zero from the exponent on Windows to make it
compatible with the sprintf() output on other platforms.


mysql-test/r/insert.result:
  Added test cases for bug #26788 and bug #31152.
mysql-test/t/cast.test:
  Removed --replace_result, since the result is now correct on Windows.
mysql-test/t/insert.test:
  Added test cases for bug #26788 and bug #31152.
mysql-test/t/type_float.test:
  Removed --replace_result, since the result is now correct on Windows.
mysql-test/t/variables.test:
  Removed --replace_result, since the result is now correct on Windows.
sql/field.cc:
  Rewrote the code that determines what 'precision' argument should be
  passed to sprintf() to fit the string representation of the input number
  into the field.
  We get finer control over conversion by pre-calculating the exponent, so
  we are able to determine which conversion format, 'e' or 'f', will be
  used by sprintf().
2007-12-01 10:05:59 +03:00
unknown
9b1665b18c Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/misc/mysql/32180/51-32180
2007-12-01 02:02:13 +01:00
unknown
75e6a71b4d Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  mysql.com:/misc/mysql/32180/50-32180
2007-12-01 01:59:48 +01:00
unknown
6257e283b7 Merge stella.local:/home2/mydev/mysql-5.1-ateam
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-11-30 23:01:27 +01:00
unknown
51f5ac6b29 Merge mysql.com:/home/hf/work/mrg/my50-mrg
into  mysql.com:/home/hf/work/mrg/my51-mrg


sql/mysqld.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
storage/federated/ha_federated.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
include/mysql_com.h:
  merging
libmysqld/lib_sql.cc:
  merging
mysql-test/r/federated.result:
  merging
mysql-test/t/federated.test:
  merging
storage/federated/ha_federated.h:
  mergin
2007-12-01 00:46:44 +04:00
unknown
8f79f531d7 Merge four.local.lan:/work/trees/mysql-5.0-build-src-clean
into  four.local.lan:/work/trees/mysql-5.1-build-src-clean
2007-11-30 19:53:00 +01:00
unknown
d08ca0327e Merge four.local.lan:/work/merge/mysql-5.1-dev
into  four.local.lan:/work/trees/mysql-5.1-build-src-clean
2007-11-30 19:43:13 +01:00
unknown
f3514dc3c4 Merge four.local.lan:/work/trees/mysql-4.1-build-src-clean
into  four.local.lan:/work/trees/mysql-5.0-build-src-clean
2007-11-30 19:30:48 +01:00
unknown
4100e3e4c2 Merge mysql.com:/home/hf/work/mrg/my41-mrg
into  mysql.com:/home/hf/work/mrg/my50-mrg


include/mysql_com.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2007-11-30 22:29:34 +04:00
unknown
11c1729421 Merge mysql.com:/home/hf/work/32624/my50-32624
into  mysql.com:/home/hf/work/mrg/my50-mrg
2007-11-30 22:28:23 +04:00
unknown
545d7e2afd Merge stella.local:/home2/mydev/mysql-5.1-ateam
into  stella.local:/home2/mydev/mysql-5.1-axmrg
2007-11-30 19:28:17 +01:00
unknown
c0ce23f8ba Merge four.local.lan:/work/merge/mysql-5.0-dev
into  four.local.lan:/work/trees/mysql-5.0-build-src-clean
2007-11-30 19:27:30 +01:00
unknown
104bba773b Merge mysql.com:/home/hf/work/32374/my50-32374
into  mysql.com:/home/hf/work/mrg/my50-mrg
2007-11-30 22:26:48 +04:00
unknown
65b77b9df6 Merge mysql.com:/home/hf/work/31890/my51-31890
into  mysql.com:/home/hf/work/mrg/my51-mrg


mysql-test/r/partition.result:
  SCCS merged
mysql-test/t/partition.test:
  merging
2007-11-30 22:25:03 +04:00
unknown
69f539affb Merge mysql.com:/home/hf/work/30430/my51-30430
into  mysql.com:/home/hf/work/mrg/my51-mrg
2007-11-30 22:19:05 +04:00
unknown
6959d20472 Bug #30430 crash:./mtr --embedded-server --ps-protocol cache_innodb func_misc...
PS-protocol data is stored in different format - the MYSQL_RECORDS->data
contains the link to the record content, not to array of the links to
the field's contents. So we have to handle it separately for
embedded-server query cache.


libmysqld/emb_qcache.cc:
  Bug #30430 crash:./mtr --embedded-server --ps-protocol cache_innodb func_misc...
  
  ps_protocol data now stored in it's particular way.
libmysqld/emb_qcache.h:
  Bug #30430 crash:./mtr --embedded-server --ps-protocol cache_innodb func_misc...
  
  Querycache_stream::load_char/store_char  ->
    load_uchar/store_uchar
mysql-test/r/func_misc.result:
  Bug #30430 crash:./mtr --embedded-server --ps-protocol cache_innodb func_misc...
  
  test result
mysql-test/t/func_misc.test:
  Bug #30430 crash:./mtr --embedded-server --ps-protocol cache_innodb func_misc...
  
  the test uses t2 table, so let's make sure it doesn't exist befor the start
2007-11-30 22:17:11 +04:00
unknown
d09dfdab06 Merge four.local.lan:/work/merge/mysql-4.1-dev
into  four.local.lan:/work/trees/mysql-4.1-build-src-clean
2007-11-30 19:12:09 +01:00
unknown
d87a75c15d Merge mysql.com:/home/hf/work/31900/my41-31900
into  mysql.com:/home/hf/work/mrg/my41-mrg
2007-11-30 22:08:29 +04:00
unknown
0f566982bb Merge four.local.lan:/work/merge/mysql-5.0-dev
into  four.local.lan:/work/merge/mysql-5.1-dev


mysql-test/suite/rpl/r/rpl_000015.result:
  Auto merged
mysql-test/suite/rpl/t/rpl_000015.test:
  Auto merged
2007-11-30 18:42:16 +01:00
unknown
89667ffea3 Merge four.local.lan:/work/merge/mysql-4.1-dev
into  four.local.lan:/work/merge/mysql-5.0-dev


BitKeeper/deleted/.del-disabled.def:
  SCCS merged
mysql-test/r/rpl000015.result:
  Bug does not apply to 5.0 and up
mysql-test/t/rpl000015.test:
  Bug does not apply to 5.0 and up.
2007-11-30 18:28:54 +01:00
unknown
56b009412d Fix for
Bug#31030 rpl000015.test fails if $MYSQL_TCP_PORT != 3306
Note:
  This bug does not occur in MySQL 5.0 and up, because
  ChangeSet 1.2328.2.1 2006/11/27 for MySQL 5.0 prevents this.
  The 5.0 fix uses the environment variable DEFAULT_MASTER_PORT
  which is set by mysql-test-run.pl.
  mysql-test-run.pl in 4.1 does not set this variable.
  There are two alternatives:
  1) Backport the 5.0 fix for this test including modifications
     to mysql-test-run.pl and mysql-test-run-shell.
     This is a not acceptable impact on an old MySQL version.
  2) Fix the problem different than in 5.0 like in the current
     ChangeSet + do not apply these changes when upmerging to 5.0


mysql-test/r/rpl000015.result:
  Updated result
mysql-test/t/disabled.def:
  Enable rpl000015
mysql-test/t/rpl000015.test:
  Unify the MASTER_PORT number
2007-11-30 18:06:28 +01:00
unknown
129f789814 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-engines
into  stella.local:/home2/mydev/mysql-5.1-bug30491
2007-11-30 17:39:50 +01:00
unknown
6923c36a09 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2007-11-30 14:07:36 -02:00
unknown
e0770a0852 Merge mysql.com:/Users/davi/mysql/bugs/22312-5.1
into  mysql.com:/Users/davi/mysql/mysql-5.1-runtime
2007-11-30 14:05:58 -02:00
unknown
c6f076f64a Merge polly.(none):/home/kaa/src/opt/bug9481/my51-bug9481
into  polly.(none):/home/kaa/src/opt/mysql-5.1-opt


sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2007-11-30 18:49:29 +03:00
unknown
07be2ef594 Merge polly.(none):/home/kaa/src/opt/bug9481/my50-bug9481
into  polly.(none):/home/kaa/src/opt/mysql-5.0-opt


sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2007-11-30 18:45:35 +03:00
unknown
f904aab43e Merge polly.(none):/home/kaa/src/opt/bug9481/my50-bug9481
into  polly.(none):/home/kaa/src/opt/bug9481/my51-bug9481


sql/sql_class.h:
  Null merge.
sql/sql_insert.cc:
  Null merge.
tests/mysql_client_test.c:
  Null merge.
2007-11-30 18:27:00 +03:00
unknown
05fbb233d8 Bug #26921 Problem in mysql_insert_id() Embedded C API function.
client library only sets mysql->insert_id when query returned
no recordset. So the embedded library should behave the same way


libmysqld/lib_sql.cc:
  Bug #26921 Problem in mysql_insert_id() Embedded C API function.
  
  only set 'affected_rows' and 'insert_id' fields when query
  didn't return a recordset
tests/mysql_client_test.c:
  Bug #26921 Problem in mysql_insert_id() Embedded C API function.
  
  testcase added
2007-11-30 19:16:13 +04:00
unknown
ff7e7fcb67 Bug#32775 problems with SHOW EVENTS and Information_Schema
removed unnecessary privilege checks for I_S schema


mysql-test/r/information_schema.result:
  test result
mysql-test/t/information_schema.test:
  test case
sql/events.cc:
  There is no events in I_S so we don't need to execute check_access here.
sql/sql_parse.cc:
  removed unnecessary check
2007-11-30 18:48:22 +04:00
unknown
dc362dae41 Bug#30491 - MERGE doesn't report error when one table is Innodb
1. A bad error message was given when a MERGE table with an
   InnoDB child table was tried to use.

2. After selecting from a correct MERGE table and then altering
   one of the children to InnoDB, incorrect results were returned.

These bugs have been fixed with the patch for bug 26379 (Combination
of FLUSH TABLE and REPAIR TABLE corrupts a MERGE table).

For verification, I added the test case from the bug report.


mysql-test/r/merge_innodb.result:
  Bug#30491 - MERGE doesn't report error when one table is Innodb
  Added test result.
mysql-test/t/merge_innodb.test:
  Bug#30491 - MERGE doesn't report error when one table is Innodb
  Added test case.
2007-11-30 15:16:31 +01:00
unknown
4b954cc094 A patch for BUG#32148: killing a query may be ineffective.
The problem was that THD::killed was reset after a command was
read from the socket, but before it was actually handled. That lead
to a race: if another KILL statement was issued for this connection
in the middle of reading from the socket and processing a command,
THD::killed state would be cleaned.

The fix is to move this cleanup into net_send_error() function.

A sample test case exists in binlog_killed.test:
  - connection 1: start a new transaction on table t1;
  - connection 2: send query to the server (w/o waiting for the
    result) to update data in table t1 -- this query will be blocked
    since there is unfinished transaction;
  - connection 1: kill query in connection 2 and finish the transaction;
  - connection 2: get result of the previous query -- it should be
    the "query-killed" error.

This test however contains race condition, which can not be fixed
with the current protocol: there is no way to guarantee, that the
server will receive and start processing the query in connection 2
(which is intended to get blocked) before the KILL command (sent in
the connection 1) will arrive. In other words, there is no way to
ensure that the following sequence will not happen:

  - connection 1: start a new transaction on table t1;
  - connection 1: kill query in connection 2 and finish the transaction;
  - connection 2: send query to the server (w/o waiting for the
    result) to update data in table t1 -- this query will be blocked
    since there is unfinished transaction;
  - connection 2: get result of the previous query -- the query will
    succeed.

So, there is no test case for this bug, since it's impossible
to write a reliable test case under the current circumstances.


sql/protocol.cc:
  Move thd->killed cleanup from dispatch_command() to net_send_error().
sql/sql_parse.cc:
  Move thd->killed cleanup from dispatch_command() to net_send_error().
2007-11-30 16:12:20 +03:00
unknown
cef31e05e5 Bug #32374 crash with filesort when selecting from federated table and view.
filesort() uses file->estimate_rows_upper_bound() call to allocate
internal buffers. If this function returns a value smaller than
a number of row that will be returned later in find_all_keys(),
that can cause server crash.
Fixed by implementing ha_federated::estimate_rows_upper_bound() to
return maximum possible number of rows.
Present estimation for FEDERATED always returns 0 if the linked to the VIEW.


mysql-test/r/federated.result:
  Bug #32374 crash with filesort when selecting from federated table and view.
  
  test result
mysql-test/t/federated.test:
  Bug #32374 crash with filesort when selecting from federated table and view.
  
  test case
sql/ha_federated.cc:
  Bug #32374 crash with filesort when selecting from federated table and view.
  
  ha_federated::estimate_rows_upper_bound() implemented
sql/ha_federated.h:
  Bug #32374 crash with filesort when selecting from federated table and view.
  
  ha_federated::estimate_rows_upper_bound() interface
2007-11-30 17:08:00 +04:00
unknown
90477e23e2 BUG#32723 (grant3.test fails) can not be reproduced.
Enabling the test case.


mysql-test/t/disabled.def:
  Enable grant3.test.
2007-11-30 14:49:34 +03:00
unknown
945f29aa67 Merge mysql.com:/misc/mysql/32707/50-32707
into  mysql.com:/misc/mysql/32707/51-32707


sql/protocol.cc:
  manual merge
2007-11-30 12:48:03 +01:00
unknown
a5efa43c7c Merge mysql.com:/misc/mysql/32707/41-32707
into  mysql.com:/misc/mysql/32707/50-32707


sql/protocol.cc:
  manual merge
2007-11-30 12:44:28 +01:00
unknown
cdc382e7fd Bug#22312 Syntax error in expression with INTERVAL()
Parser rejects valid INTERVAL() expressions when associated with
arithmetic operators. The problem is the way in which the expression
and interval grammar rules were organized caused shift/reduce conflicts.

The solution is to tweak the interval rules to avoid shift/reduce
conflicts by removing the broken interval_expr rule and explicitly
specify it's content where necessary.

Original fix by Davi Arnaut, revised and improved rules by Marc Alff


mysql-test/r/parser.result:
  Add test case result for Bug#22312
mysql-test/t/parser.test:
  Add test case for Bug#22312
sql/sql_yacc.yy:
  Resolve shift/reduce conflicts by reorganizing the interval
  expression rules.
2007-11-30 09:34:25 -02:00
unknown
909142828e BUG#32050 - table logging gone wrong.
Reverted log tables alteration.


scripts/mysql_system_tables_fix.sql:
  Altering log table is wrong, because
  - it is not possible to alter log table when it is in use;
  - log table may use MyISAM engine, which perfectly supports NULLs.
  
  Reverted log tables alteration.
2007-11-30 15:00:15 +04:00
unknown
9395421a14 A test case for BUG#26676: VIEW using old table schema in a session.
The following clarification should be made in The Manual:

Standard SQL is quite clear that, if new columns are added
to a table after a view on that table is created with
"select *", the new columns will not become part of the view.
In all cases, the view definition (view structure) is frozen
at CREATE time, so changes to the underlying tables do not
affect the view structure.


mysql-test/r/view.result:
  Update result file.
mysql-test/t/view.test:
  Add a test case for BUG#26676: VIEW using old table schema in a session.
2007-11-30 12:14:07 +03:00
unknown
89a208850a Bug#31177: Server variables can't be set to their current values
Default values of variables were not subject to upper/lower bounds
and step, while setting variables was. Bounds and step are also
applied to defaults now; defaults are corrected quietly, values
given by the user are corrected, and a correction-warning is thrown
as needed. Lastly, very large values could wrap around, starting
from 0 again. They are bounded at the maximum value for the
respective data-type now if no lower maximum is specified in the
variable's definition.


client/mysql.cc:
  correct maxima in options array
client/mysqltest.c:
  adjust minimum for "sleep" option so default value is no longer
  out of bounds.
include/m_string.h:
  ullstr() - the unsigned brother of llstr()
include/my_getopt.h:
  Flag if we bounded the value (that is, correct anything aside from
  making value a multiple of block-size)
mysql-test/r/delayed.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/index_merge.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/innodb.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/innodb_mysql.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/key_cache.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/packet.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/ps.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/subselect.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/type_bit.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/type_bit_innodb.result:
  We throw a warning now when we adjust out of range parameters.
mysql-test/r/variables.result:
  correct results: bounds and step apply to variables' default values, too
mysql-test/t/variables.test:
  correct results: bounds and step apply to variables' default values, too
mysys/my_getopt.c:
  - apply bounds/step to default values of variables (based on work by serg)
  - print complaints about incorrect values for variables (truncation etc.,
    by requestion of consulting)
  - if no lower maximum is specified in variable definition, bound unsigned
    values at their maximum to prevent wrap-around
  - some calls to error_reporter had a \n, some didn't. remove \n from calls,
    let reporter-function handle it, so the default reporter behaves like that
    in mysqld
sql/mysql_priv.h:
  correct RANGE_ALLOC_BLOCK_SIZE (cleared with monty)
sql/mysqld.cc:
  correct maxima to correct data-type.
  correct minima where higher than default.
  correct range-alloc-block-size.
  correct inno variables so GET_* corresponds to actual variable's type.
sql/set_var.cc:
  When the new value for a variable is out of bounds, we'll send the
  client a warning (but not if the value was simply not a multiple of
  'blocksize').  sys_var_thd_ulong had this, sys_var_long_ptr_global
  didn't; broken out and streamlined to avoid duplication of code.
strings/llstr.c:
  ullstr() - the unsigned brother of llstr()
2007-11-30 06:32:04 +01:00
unknown
f41ba1879d Merge mysql.com:/home/ram/work/mysql-5.1-engines
into  mysql.com:/home/ram/work/b29258/b29258.5.1


mysql-test/r/partition.result:
  Manually merged
mysql-test/t/partition.test:
  Manually merged
2007-11-30 09:18:26 +04:00
unknown
3308d8794e Bug #32219: too many hosts in default grant tables 6.0.3
Fix is to remove any references to the current hostname when running
mysql_install_db --cross-bootstrap.  (The dist-hook make target makes
this call, and the resulting data directory is included in the source
distribution as win/data/*.)

Also, a few other clean-ups to mysql_install_db while there.


Makefile.am:
  Adapt to clean-up in mysql_install_db (--windows becomes --cross-bootstrap)
scripts/mysql_install_db.sh:
  Filter out references to the current hostname when performing
  a cross-bootstrap installation by removing any lines which
  contain the string "@current_hostname".
  
  Deprecate the old --windows option; use --cross-bootstrap
  instead, since it more accurately reflects the purpose.
  
  Other clean-up: the wrong syntax was being used to test the
  exit status of mysqld --bootstrap.  It mostly worked, as long
  as mysqld succeeded.  However, it was not robust.
scripts/mysql_system_tables_data.sql:
  Rename local @hostname variable to @current_hostname, which is a more
  unique label to search on.  mysql_install_db now filters out all
  lines which include "@current_hostname" during a --cross-bootstrap
  installation.
2007-11-30 06:14:43 +01:00
unknown
0d09e36479 Merge mysql.com:/home/kent/bk/mac-os-x-universal/mysql-5.0-build
into  mysql.com:/home/kent/bk/mac-os-x-universal/mysql-5.1-build


include/my_global.h:
  Auto merged
2007-11-30 01:38:29 +01:00
unknown
8ffb540453 Merge mysql.com:/home/kent/bk/mac-os-x-universal/mysql-4.1-build
into  mysql.com:/home/kent/bk/mac-os-x-universal/mysql-5.0-build


include/my_global.h:
  Auto merged
2007-11-30 01:37:07 +01:00
unknown
44ebdc095a my_global.h:
Added 64 bit Mac OS X hard coded settings, for universal binaries


include/my_global.h:
  Added 64 bit Mac OS X hard coded settings, for universal binaries
2007-11-30 01:36:05 +01:00
unknown
61f57730a8 Excluded verbose and bad change to Mac OS X universal binaries handling 2007-11-30 01:22:15 +01:00