Commit graph

50601 commits

Author SHA1 Message Date
unknown
8d7371a65b Merge mysql.com:/home/hf/work/30286/my50-30286
into  mysql.com:/home/hf/work/30286/my51-30286


mysql-test/r/gis-rtree.result:
  Auto merged
mysql-test/t/gis-rtree.test:
  Auto merged
storage/myisam/rt_index.c:
  Auto merged
storage/myisam/rt_mbr.c:
  Auto merged
2007-10-05 15:43:15 +05:00
unknown
8e37481553 Merge mysql.com:/home/hf/work/30286/my41-30286
into  mysql.com:/home/hf/work/30286/my50-30286


myisam/rt_index.c:
  Auto merged
myisam/rt_mbr.c:
  Auto merged
mysql-test/t/gis-rtree.test:
  Auto merged
mysql-test/r/gis-rtree.result:
  merging
2007-10-05 15:41:56 +05:00
unknown
6d54b5771b Bug #30286 spatial index cause corruption and server crash!
As the result of DOUBLE claculations can be bigger
than DBL_MAX constant we use in code, we shouldn't use this constatn
as a biggest possible value.
Particularly the rtree_pick_key function set 'min_area= DBL_MAX' relying
that any rtree_area_increase result will be less so we return valid
key. Though in rtree_area_increase function we calculate the area
of the rectangle, so the result can be 'inf' if the rectangle is
huge enough, which is bigger than DBL_MAX.

Code of the rtree_pick_key modified so we always return a valid key.


myisam/rt_index.c:
  Bug #30286 spatial index cause corruption and server crash!
  
  always set the best_key with the first key we get, so we always return
  somthing valid.
myisam/rt_mbr.c:
  Bug #30286 spatial index cause corruption and server crash!
  
  function comment extended
mysql-test/r/gis-rtree.result:
  Bug #30286 spatial index cause corruption and server crash!
  test result
mysql-test/t/gis-rtree.test:
  Bug #30286 spatial index cause corruption and server crash!
  test case
2007-10-05 15:40:32 +05:00
unknown
2e8ca84e89 Bug #31253: crash comparing datetime to double
convert(<invalid time>, datetime) in WHERE caused crash as function
returned (void*)NULL, but did not flag SQL NULL. It does now.


mysql-test/r/type_datetime.result:
  show that convert() to datetime in a WHERE-clause will no longer crash
  the server on invalid input.
mysql-test/t/type_datetime.test:
  show that convert() to datetime in a WHERE-clause will no longer crash
  the server on invalid input.
sql/item.cc:
  When failing to process time values, do not just return (void*)NULL,
  but flag SQL NULL as well so no caller will try to process the 0x0L.
  This makes behaviour for Item::Item::val_decimal_from_date() and
  Item::Item::val_decimal_from_time() identical.
2007-10-05 12:08:38 +02:00
unknown
9d87e8f86a Merge bk@192.168.21.1:mysql-5.1-opt
into  mysql.com:/home/hf/work/26527/my51-26527


sql/ha_partition.cc:
  Auto merged
2007-10-05 14:21:59 +05:00
unknown
8821e9afa9 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  sin.intern.azundris.com:/home/tnurnberg/31227/51-31227
2007-10-05 10:07:08 +02:00
unknown
28232df2ae Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  sin.intern.azundris.com:/home/tnurnberg/31227/50-31227
2007-10-05 10:04:45 +02:00
unknown
0c984d7db3 Merge sin.intern.azundris.com:/home/tnurnberg/31227/50-31227
into  sin.intern.azundris.com:/home/tnurnberg/31227/51-31227


mysql-test/r/type_decimal.result:
  Auto merged
sql/my_decimal.cc:
  Auto merged
2007-10-05 09:47:14 +02:00
unknown
1b3d25d561 Bug#31227: memory overrun with decimal (6,6) and zerofill and group_concat
Reserve the space for the leading 0 (before the decimal point) in DECIMAL(a,a) ZEROFILL.


mysql-test/r/type_decimal.result:
  show that we allocate a large enough buffer for output of DECIMAL(a,a) [ZEROFILL].
mysql-test/t/type_decimal.test:
  show that we allocate a large enough buffer for output of DECIMAL(a,a) [ZEROFILL].
  without patch for bug#31227, valgrind will complain here; so will a
  debug build.
sql/my_decimal.cc:
  Reserve the space for the leading 0 (before the decimal point) in DECIMAL(a,a) ZEROFILL.
  Doxygenise preamble of my_decimal2string().
2007-10-05 09:38:57 +02:00
unknown
7e5f4fe24b Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt


mysql-test/r/information_schema.result:
  manual merge
mysql-test/t/information_schema.test:
  manual merge
2007-10-05 12:32:29 +05:00
unknown
554d405d73 test fix(to satisfy WIN)
mysql-test/r/information_schema.result:
  result fix
2007-10-05 12:29:02 +05:00
unknown
89568a9d2a Merge xiphis.org:/anubis/antony/work/p1-bug31382.1.fix-5.1
into  xiphis.org:/anubis/antony/work/p1-bug31382.1.merge-5.1
2007-10-04 17:37:51 -07:00
unknown
4686a8c8d1 fix undefined variable which can lead to crash 2007-10-04 17:34:28 -07:00
unknown
2fec8bee5b Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  moksha.local:/Users/davi/mysql/push/mysql-5.0-runtime
2007-10-04 19:56:27 -03:00
unknown
f5dd3491f2 Bug#21587 FLUSH TABLES causes server crash when used with HANDLER statements
This bug is a symptom of the way handler's tables are managed. The
most different aspect, compared to the conventional behavior, is that
the handler's tables are long lived, meaning that their lifetimes are
not bounded by the duration of the command that opened them. For this
effect the handler code uses its own list (handler_tables instead of
open_tables) to hold open handler tables so that the tables won't be
closed at the end of the command/statement. Besides the handler_tables
list, there is a hash (handler_tables_hash) which is used to associate
handler aliases to tables and to refresh the tables upon demand (flush
tables).

The current implementation doesn't work properly with refreshed tables
-- more precisely when flush commands are issued by other initiators.
This happens because when a handler open or read statement is being
processed, the associated table has to be opened or locked and, for this
matter, the open_tables and handler_tables lists are swapped so that the
new table being opened is inserted into the handler_tables list. But when
opening or locking the table, if the refresh version is different from the
thread refresh version then all used tables in the open_tables list (now
handler_tables) are refreshed. In the "refreshing" process the handler
tables are flushed (closed) without being properly unlinked from the
handler hash.

The current implementation also fails to properly discard handlers of
dropped tables, but this and other problems are going to be addressed
in the fixes for bugs 31397 and 31409.

The chosen approach tries to properly save and restore the table state
so that no table is flushed during the table open and lock operations.
The logic is almost the same as before with the list swapping, but with
a working glue code.

The test case for this bug is going to be committed into 5.1 because it
requires a test feature only avaiable in 5.1 (wait_condition).


sql/sql_handler.cc:
  Backup and reset the open_tables and handler_table lists when opening
  a new handler table and merge the opened table into the handler_tables
  list afterwards. When locking, do the same but possibly close the table
  if a refresh is pending.
2007-10-04 17:34:41 -03:00
unknown
c038fe2d92 Merge sita.local:/Users/tsmith/m/bk/50-5.0.48
into  sita.local:/Users/tsmith/m/bk/maint/50


sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2007-10-04 13:58:40 -06:00
unknown
cfaf9ded66 Merge sita.local:/Users/tsmith/m/bk/maint/50
into  sita.local:/Users/tsmith/m/bk/maint/51


client/mysqldump.c:
  Auto merged
mysys/my_init.c:
  Auto merged
2007-10-04 13:51:27 -06:00
unknown
12a6d72b0f Merge xiphis.org:/anubis/antony/work/mysql-5.1-engines
into  xiphis.org:/anubis/antony/work/p1-bug31382.1.merge-5.1
2007-10-04 11:22:52 -07:00
unknown
1c94c8e674 Bug#31382
"Disabled plugin is provoking Valgrind error"
  If there are any auto-alloced string plug-in options, memory is
  allocated during the call for handle_options(). We must free this
  memory if we are not installing the plug-in.


include/my_getopt.h:
  bug31382
    new function: my_cleanup_options()
mysys/my_getopt.c:
  bug31382
    new function: my_cleanup_options(), fini_one_value()
    alter init_variables() to take an extra option.
    forward declare init_one_value() and fini_one_value()
sql/sql_plugin.cc:
  bug31382
    after calling handle_options(), make sure to call my_cleanup_options()
    if we are not installing the plug-in.
2007-10-04 10:55:08 -07:00
unknown
03bef972d3 Merge trift2.:/MySQL/M50/push-5.0
into  trift2.:/MySQL/M51/push-5.1


storage/ndb/test/ndbapi/testScanFilter.cpp:
  Auto merged
2007-10-04 19:31:32 +02:00
unknown
f4b6234c48 Merge trift2.:/MySQL/M50/mysql-5.0
into  trift2.:/MySQL/M50/push-5.0
2007-10-04 19:24:32 +02:00
unknown
7c1098292d Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  sin.intern.azundris.com:/home/tnurnberg/30444/51-30444
2007-10-04 19:06:27 +02:00
unknown
e96d53642a Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  sin.intern.azundris.com:/home/tnurnberg/30444/50-30444
2007-10-04 19:02:31 +02:00
unknown
b055562b8b Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-4.1-maint
into  sin.intern.azundris.com:/home/tnurnberg/30444/41-30444
2007-10-04 18:58:54 +02:00
unknown
9e89a087c4 apply patch for bug#31035 to 5.0.50 release clone
mysql-test/r/sp.result:
  apply patch for bug#31035
mysql-test/t/sp.test:
  apply patch for bug#31035
sql/item_func.cc:
  apply patch for bug#31035
2007-10-04 16:08:13 +02:00
unknown
9f4a592864 Merge mhansson@bk-internal:/home/bk/mysql-5.1-opt
into  dl145s.mysql.com:/data0/mhansson/bug30942/my51-bug30942
2007-10-04 15:32:46 +02:00
unknown
4f14c13a1c Fix for BUG#31035: select from function, group by result crasher.
This actually, fix for the patch for bug-27354. The problem with
the patch was that Item_func_sp::used_tables() was updated, but
Item_func_sp::const_item() was not. So, for Item_func_sp, we had
the following inconsistency:
  - used_tables() returned RAND_TABLE, which means that the item
    can produce "random" results;
  - but const_item() returned TRUE, which means that the item is
    a constant one.

The fix is to change Item_func_sp::const_item() behaviour: it must
return TRUE (an item is a constant one) only if a stored function
is deterministic and each of its arguments (if any) is a constant
item.


mysql-test/r/sp.result:
  Update result file.
mysql-test/t/sp.test:
  Add test cases for BUG-31035, BUG-31191, BUG-31226
sql/item_func.cc:
  Make Item::const_item() be consistent with Item::used_tables().
2007-10-04 17:19:14 +04:00
unknown
b4d566a053 Bug #30484: Partitions: crash with self-referencing trigger
Two cases in ha_partition::extra() was missing
(HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH)
which only is currently used by NDB (which not uses ha_partition)


mysql-test/r/partition.result:
  Added result for test of Bug #30484
mysql-test/t/partition.test:
  Added test for Bug #30484
sql/ha_partition.cc:
  Added HA_EXTRA_DELETE_CANNOT_BATCH and HA_EXTRA_UPDATE_CANNOT_BATCH
  in ha_partition::extra to do nothing
  (Only currently used in NDB, which is not dependent of ha_partition)
2007-10-04 14:56:33 +02:00
unknown
f2302e5530 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.1-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt


client/mysqldump.c:
  Auto merged
mysql-test/r/func_math.result:
  Auto merged
mysql-test/r/func_misc.result:
  Auto merged
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/view_grant.result:
  Auto merged
mysql-test/t/func_math.test:
  Auto merged
mysql-test/t/func_misc.test:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
client/client_priv.h:
  manual merge
2007-10-04 17:13:57 +05:00
unknown
fca5cbe660 after merge fix 2007-10-04 17:08:59 +05:00
unknown
68f4fab089 Merge mhansson@bk-internal:/home/bk/mysql-5.1-opt
into  dl145s.mysql.com:/data0/mhansson/bug30942/my51-bug30942


sql/item_timefunc.h:
  Auto merged
2007-10-04 13:58:34 +02:00
unknown
0de3ea72e8 manual merge 2007-10-04 16:35:12 +05:00
unknown
4ae273e395 Bug#30079 A check for "hidden" I_S tables is flawed
added check for hidden I_S tables for 'show columns|keys' commands


mysql-test/r/information_schema.result:
  test result
mysql-test/t/information_schema.test:
  test case
sql/sql_parse.cc:
  added check for hidden I_S tables for 'show columns|keys' commands
2007-10-04 16:20:56 +05:00
unknown
fdf3c17534 after merge fix 2007-10-04 15:35:45 +05:00
unknown
4d0ef0cc85 Backport of the 5.0 patch to 4.1
Bug#28878: InnoDB tables with UTF8 character set and indexes cause  wrong result for DML
When making key reference buffers over CHAR fields whitespace (0x20) must be used to fill in the remaining space in the field's buffer. This is what Field_string::store() does. Fixed Field_string::get_key_image() to do the same.


mysql-test/r/innodb_mysql.result:
  Bug#28878: test case
mysql-test/t/innodb_mysql.test:
  Bug#28878: test case
sql/field.cc:
  Bug#28878: Fill with space instead of binary zeros.
2007-10-04 14:22:35 +04:00
unknown
a006263f8b Merge production.mysql.com:/usersnfs/jperkin/bk/build/5.0
into  production.mysql.com:/usersnfs/jperkin/bk/build/5.1


mysql-test/mysql-test-run.pl:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
2007-10-04 12:21:51 +02:00
unknown
61e8c53898 Merge production.mysql.com:/usersnfs/jperkin/bk/build/5.0
into  production.mysql.com:/usersnfs/jperkin/bk/bug-27692/5.0
2007-10-04 12:06:13 +02:00
unknown
ea46c11662 Merge ssh://bk-internal.mysql.com//home/bk/mysql-5.0-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
2007-10-04 13:52:41 +04:00
unknown
beba872b81 Merge bk-internal.mysql.com:/home/bk/mysql-5.1-new-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint
2007-10-04 13:45:45 +04:00
unknown
95d09ac09a Merge polly.(none):/home/kaa/src/maint/bug5731/my51-bug5731
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint


sql/set_var.cc:
  Auto merged
2007-10-04 13:38:58 +04:00
unknown
549cbcd547 Restore creation of test databases and the anonymous user which
were accidentally removed during a previous rototill of this
code.  Fixes bug#27692.
  
While it can be argued we should strive to provide a 'secure by
default' installation, this happens to be the setup currently
documented in the manual as the default, so defer changes that
improve security out of the box to a co-ordinated effort later
on.
  
For now, make a note about the test databases and anonymous user
in mysql_install_db and recommend that mysql_secure_installation
be ran for users wishing to remove these defaults.

[..re-commit of previously lost change..]


scripts/mysql_system_tables_data.sql:
  Add anonymous accounts.
scripts/mysql_install_db.sh:
  Point users at the mysql_secure_installation script.
mysql-test/mysql-test-run.pl:
  Add a comment where removing anonymous users.
2007-10-04 11:30:30 +02:00
unknown
227bf9ad66 Merge polly.(none):/home/kaa/src/maint/bug5731/my50-bug5731
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint
2007-10-04 13:29:37 +04:00
unknown
4e15adf822 Merge mysql.com:/home/gluh/MySQL/Merge/5.0-opt
into  mysql.com:/home/gluh/MySQL/Merge/5.1-opt


client/mysqldump.c:
  Auto merged
mysql-test/r/func_math.result:
  Auto merged
mysql-test/r/func_misc.result:
  Auto merged
mysql-test/r/olap.result:
  Auto merged
mysql-test/t/func_math.test:
  Auto merged
mysql-test/t/func_misc.test:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/view_grant.test:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/sql_view.cc:
  Auto merged
client/client_priv.h:
  manual merge
mysql-test/r/mysqldump.result:
  manual merge
mysql-test/r/view_grant.result:
  manual merge
sql/field.cc:
  manual merge
sql/sql_select.cc:
  manual merge
tests/mysql_client_test.c:
  manual merge
2007-10-04 14:23:55 +05:00
unknown
698e9b4f0f Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b31070/b31070.5.0
2007-10-04 14:14:11 +05:00
unknown
3fc334817f Merge polly.(none):/home/kaa/src/maint/bug5731/my50-bug5731
into  polly.(none):/home/kaa/src/maint/bug5731/my51-bug5731


mysql-test/r/variables.result:
  Auto merged
mysys/my_getopt.c:
  Auto merged
sql/set_var.cc:
  Auto merged
mysql-test/t/variables.test:
  Manual merge.
2007-10-04 13:07:11 +04:00
unknown
ae2956f79a Merge mhansson@bk-internal:/home/bk/mysql-5.0-opt
into  dl145s.mysql.com:/data0/mhansson/bug30942/my50-bug30942
2007-10-04 11:06:01 +02:00
unknown
78348d4ed1 Issue a warning if a user sets an option or a variable to a value that is greater than a defined maximum for the option/variable.
This is for bug #29446 "Specifying a myisam_sort_buffer > 4GB on 64 bit machines not possible". Support for myisam_sort_buffer_size > 4 GB on 64-bit Windows will be looked at later in 5.2.


mysql-test/r/variables.result:
  Fixed the test.
mysql-test/t/variables.test:
  Fixed the test.
mysys/my_getopt.c:
  Print a warning to the error log if a user sets an option to a value greater than the option's maximum value.
sql/set_var.cc:
  Issue an SQL warning if a user assignes a value greater than the variable's maximum value.
2007-10-04 12:34:00 +04:00
unknown
f7bf6318f5 Merge linux-st28.site:/home/martin/mysql/src/bug30942/my50-bug30942
into  linux-st28.site:/home/martin/mysql/src/bug30942/my51-bug30942


sql/item_timefunc.h:
  Auto merged
mysql-test/r/type_date.result:
  Bug#30942: Manual merge
mysql-test/t/type_date.test:
  Bug#30942: Manual merge
2007-10-04 10:06:33 +02:00
unknown
f8f021fd6b Bug #30942: select str_to_date from derived table returns varying results
The function str_to_date has a field to say whether it's invoked constant 
arguments. But this member was not initialized, causing the function to
think that it could use a cache of the format type when said cache was in 
fact not initialized.
Fixed by initializing the field to false.


mysql-test/r/type_date.result:
  Bug#30942: Test result
mysql-test/t/type_date.test:
  Bug#30942: Test case
sql/item_timefunc.h:
  Bug#30942: Initialized const_item to false
2007-10-04 09:15:26 +02:00
unknown
249927cde6 Merge mysql.com:/home/ram/work/b31070/b31070.5.0
into  mysql.com:/home/ram/work/b31070/b31070.5.1


strings/ctype-big5.c:
  Auto merged
strings/ctype-euc_kr.c:
  Auto merged
strings/ctype-gb2312.c:
  Auto merged
strings/ctype-sjis.c:
  Auto merged
2007-10-04 12:10:15 +05:00