Commit graph

36254 commits

Author SHA1 Message Date
unknown
9e1585ab8f Fix for bug #28240: "isinf()" cannot be used in C++ for lack of prototype
- Since isinf() portability across various platforms and
  compilers is a complicated question, we should not use
  it directly. Instead, the my_isinf() macro should be used,
  which is defined as an alias to the system-defined isinf()
  if it is safe to use, or a workaround implementation otherwise


configure.in:
  Added a check to define HAVE_ISINF only if it can be used
  in C++ code as well.
include/my_global.h:
  Define my_isinf() as an alias to isinf(), if it is available
  in both C and C++ code. Otherwise, define it to a workaround
  implementation.
sql/item_func.cc:
  Replaced isinf() with my_isinf().
strings/strtod.c:
  Replaced isinf() with my_isinf().
2007-05-16 10:10:02 +02:00
unknown
e9e6b9e477 Add triggers for detecting bad changesets to mysql-5.0 2007-05-15 17:04:31 +02:00
unknown
6f2c6b74f9 Bug#27344 Total failure to start the server
- Give some more protection against "too long socket name by setting the max
   length when to use a tmpdir for sockets to 70


mysql-test/mysql-test-run.pl:
  Give some more protection against "too long socket name by setting the max
  ength when to use a tmpdir for sockets to 70
2007-05-15 16:03:38 +02:00
unknown
c7c6cc8d90 Merge pilot.blaudden:/home/msvensson/mysql/bug28193/my50-bug28193
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-05-09 10:55:09 +02:00
unknown
67d7cd515c Bug#28193 outfile fails randomly in pushbuild
- Change testcase to use remove_file


mysql-test/t/outfile.test:
  Change "exec rm" to "remove_file"
2007-05-09 10:52:28 +02:00
unknown
bc8d781b2d Merge pilot.blaudden:/home/msvensson/mysql/bug28193/my41-bug28193
into  pilot.blaudden:/home/msvensson/mysql/bug28193/my50-bug28193


mysql-test/t/outfile.test:
  Use local
2007-05-09 10:50:37 +02:00
unknown
a4ed105c66 Bug #28193 outfile fails randomly in pushbuild
- Change "exec rm" to "remove_file"


mysql-test/t/outfile.test:
  Change "exec rm" to "remove_file"
2007-05-09 10:49:11 +02:00
unknown
48cdd9fcc1 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my50-bug27976
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2007-05-07 12:45:39 -04:00
unknown
dab034503d Fix new error message list in v5.
mysql-test/r/repair.result:
  New error listing in v5.
2007-05-07 12:38:43 -04:00
unknown
cac1dc9b96 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my50-bug27976
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2007-05-07 11:03:53 -04:00
unknown
2b7cad6503 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my41-bug27976
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug27976/my50-bug27976


mysql-test/r/repair.result:
  Auto merged
myisam/sort.c:
  Manual merge.
2007-05-04 19:04:09 -04:00
unknown
d64e63b360 Bug #27976: Misleading error message, 'Sort buffer to small'
The message is gramatically wrong, and factually wrong.

Change it to refer to the myisam_sort_buffer_size variable and change
"to" to "too".


myisam/sort.c:
  Change error messages to be gramatically correct and to refer to the
  correct variable.
mysql-test/r/repair.result:
  Refer to the correct variable.  Message changed.
2007-05-04 17:38:29 -04:00
unknown
edb949c55f Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug27173/my41-bug27173
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug27173/my50-bug27173


sql/ha_myisam.cc:
  SCCS merged
2007-05-04 13:27:33 -04:00
unknown
4d263c4994 Bug #27173: "Enabling keys got errno ..." does not say which table
Warnings may show up in the error log that complain about a table, yet
don't tell us which table.

Add the database and table names to the message.


sql/ha_myisam.cc:
  Add the database and table names to the warning message.
2007-05-04 13:17:07 -04:00
unknown
b9985ebae8 Minor fix.
scripts/CMakeLists.txt:
  Fix broken bk native builds.
2007-05-02 12:41:36 -04:00
unknown
2b73a6c85d Bug#27994 Expose counter for stored procedure calls in Com_% status
- Expose the already existing counter for number of stored procedure calls


sql/mysqld.cc:
  Expose counter for "Com_call_procedure"
2007-05-02 14:25:11 +02:00
unknown
f6edc2c099 Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-05-02 11:16:41 +02:00
unknown
dc9b20a603 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/50


sql/item_func.h:
  Auto merged
2007-05-01 18:12:04 +02:00
unknown
f827425712 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/50


mysql-test/r/alter_table.result:
  Auto merged
mysql-test/t/alter_table.test:
  Auto merged
2007-05-01 12:40:43 +02:00
unknown
0fc282bbe1 Merge dkatz@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  damien-katzs-computer.local:/Users/dkatz/mysql50
2007-04-30 17:51:57 -04:00
unknown
2127e26dda Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/maint/50
2007-04-30 23:33:32 +02:00
unknown
36dea21b6c Bug #27653: Temp table can't be created if lower_case_table_names=1 and
tmpdir has uppercase

Fix: don't convert mysql_tmpdir to lower case when building the path to a
temporary table


mysql-test/include/have_lowercase1.inc:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/include/have_lowercase1.inc
mysql-test/r/lowercase1.require:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/r/lowercase1.require
mysql-test/r/lowercase_mixed_tmpdir.result:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/r/lowercase_mixed_tmpdir.result
mysql-test/t/lowercase_mixed_tmpdir-master.opt:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir-master.opt
mysql-test/t/lowercase_mixed_tmpdir-master.sh:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir-master.sh
mysql-test/t/lowercase_mixed_tmpdir.test:
  BitKeeper file /benchmarks/ext3/TOSAVE/tsmith/bk/maint/b27653/50/mysql-test/t/lowercase_mixed_tmpdir.test
sql/sql_table.cc:
  When building the path for a temporary table file, do not
  convert mysql_tmpdir to lower case; lower_case_table_names
  should not apply to mysql_tmpdir.
2007-04-30 23:16:46 +02:00
unknown
930912f832 Merge damien-katzs-computer.local:/Users/dkatz/mysql50
into  damien-katzs-computer.local:/Users/dkatz/50_frm_files
2007-04-30 17:04:14 -04:00
unknown
1febcfdc01 Merge bk-internal:/home/bk/mysql-5.0-maint
into  pilot.blaudden:/home/msvensson/mysql/mysql-5.0-maint
2007-04-30 18:14:08 +02:00
unknown
0f6f3aa0c7 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  maint1.mysql.com:/data/localhome/tnurnberg/50-27293
2007-04-30 11:46:22 +02:00
unknown
3f18c6bc47 Bug#27293: mysqldump crashes when dumping procedure defined by different user
mysqldump didn't properly handle getting no data on
SHOW CREATE PROCEDURE.  If S/C/P fails (due to dumping
user's insufficient privileges on mysql.proc, say),
mysqldump will print a comment to that effect to the
output and return an error-code.  If the -f (force) option
is used, the dump will continue, otherwise, it will abort
right there and then.

Also fixes Bug#22761, "mysqldump reports no errors when using
--routines without mysql.proc privileges"
---
Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/tnurnberg/27293/50-27293


client/mysqldump.c:
  Bug#27293: mysqldump crashes when dumping procedure defined by different user
  
  handle failure of SHOW CREATE PROCEDURE, give user diagnostics,
  heed -f (force) option
mysql-test/r/mysqldump.result:
  Bug#27293: mysqldump crashes when dumping procedure defined by different user
  
  show that trying to mysqldump --routines with insufficient
  privileges will no longer crash the client
  ---
  manual merge
mysql-test/t/mysqldump.test:
  Bug#27293: mysqldump crashes when dumping procedure defined by different user
  
  show that trying to mysqldump --routines with insufficient
  privileges will no longer crash the client
  ---
  manual merge
2007-04-30 11:30:07 +02:00
unknown
5352b41d29 Post-merge fix. 2007-04-29 20:14:35 -07:00
unknown
532f2e8416 Merge olga.mysql.com:/home/igor/mysql-4.1-opt
into  olga.mysql.com:/home/igor/dev-opt/mysql-5.0-opt-bug24856


sql/item_func.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
mysql-test/r/olap.result:
  Manual merge.
mysql-test/t/olap.test:
  Manual merge.
2007-04-29 18:32:59 -07:00
unknown
c004ad0944 Fix in comments. 2007-04-29 18:28:58 -07:00
unknown
dd34042ec1 Fixed bug #24856: the result set of a ROLLUP query with DISTINCT could lack
some rollup rows (rows with NULLs for grouping attributes) if GROUP BY
list contained constant expressions.

This happened because the results of constant expressions were not put
in the temporary table used for duplicate elimination. In fact a constant
item from the GROUP BY list of a ROLLUP query can be replaced for an
Item_null_result object when a rollup row is produced . 

Now the JOIN::rollup_init function wraps any constant item referenced in
the GROYP BY list of a ROLLUP query into an Item_func object of a special
class that is never detected as constant item. This ensures creation of
fields for such  constant items in temporary tables and guarantees right
results when the result of the rollup operation first has to be written
into a temporary table, e.g. in the cases when duplicate elimination is
required.  


mysql-test/r/olap.result:
  Added a test case for bug #24856.
mysql-test/t/olap.test:
  Added a test case for bug #24856.
sql/item_func.h:
  Fixed bug #24856: the result set of a ROLLUP query with DISTINCT could lack
  some rollup rows (rows with NULLs for grouping attributes) if GROUP BY
  list contained constant expressions.
  
  Itroduced class Item_func_rollup_const derived from Item_func. The object of
  this class are never detected as constant items.
  We use them for wrapping constant items from the GROUP BY list of any ROLLUP
  query. This wrapping allows us to ensure writing constant items into temporary
  tables whenever the result of the ROLLUP operation has to be written into a
  temporary table, e.g. when ROLLUP is used together with DISTINCT in the SELECT
  list.
sql/sql_select.cc:
  Fixed bug #24856: the result set of a ROLLUP query with DISTINCT could lack
  some rollup rows (rows with NULLs for grouping attributes) if GROUP BY
  list contained constant expressions.
  
  Now the JOIN::rollup_init function wraps any constant item referenced in
  the GROYP BY list of a ROLLUP query into an Item_func object of a special
  class that is never detected as constant item. This ensures creation of
  fields for such  constant items in temporary tables and guarantees right
  results when the result of the rollup operation first has to be written
  into a temporary table, e.g. in the cases when duplicate elimination is
  required.
2007-04-29 16:04:43 -07:00
unknown
ba967f5b43 Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0-opt
into  moonbone.local:/mnt/gentoo64/work/16377-bug-5.0-opt-mysql
2007-04-29 20:26:57 +04:00
unknown
d4b1b8133f type_datetime.result, type_datetime.test:
The test case for the bug#27590 is altered.


mysql-test/t/type_datetime.test:
  The test case for the bug#27590 is altered.
mysql-test/r/type_datetime.result:
  The test case for the bug#27590 is altered.
2007-04-29 20:23:05 +04:00
unknown
ad42991306 Merge mysql.com:/d2/hf/mrg/mysql-4.1-opt
into  mysql.com:/d2/hf/mrg/mysql-5.0-opt
2007-04-29 18:46:20 +05:00
unknown
d812bcb955 Merge bk@192.168.21.1:mysql-5.0
into  mysql.com:/d2/hf/mrg/mysql-5.0-opt


CMakeLists.txt:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
mysql-test/r/innodb_mysql.result:
  merging
mysql-test/t/innodb_mysql.test:
  merging
2007-04-29 18:42:50 +05:00
unknown
0cd6377f28 Merge bk@192.168.21.1:mysql-4.1
into  mysql.com:/d2/hf/mrg/mysql-4.1-opt
2007-04-29 18:39:45 +05:00
unknown
b42eb01e58 If isinf() is not available on a target platform, use our own imlementation via finite() and isnan(). If either of the last two is not available as well, use simple replacements which are platform-neutral, but slower than compiler intrinsics. 2007-04-29 16:57:17 +04:00
unknown
7eb77da33a Patch to eliminate compilation errors under VC after bug #13191 fix. 2007-04-29 12:56:46 +05:00
unknown
a925eadc50 Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-13191


sql/key.cc:
  Patch to eliminate compilation errors under VC after bug #13191 fix.
2007-04-29 12:09:08 +05:00
unknown
e822507364 Patch to eliminate compilation errors under VC after bug #13191 fix. 2007-04-29 11:56:23 +05:00
unknown
edfa3dcf71 Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt-13191


mysql-test/r/innodb_mysql.result:
  SCCS merged
mysql-test/t/innodb_mysql.test:
  SCCS merged
sql/field.cc:
  Merge with 4.1, fix of bug #13191.
sql/field.h:
  Merge with 4.1, fix of bug #13191.
sql/key.cc:
  Merge with 4.1, fix of bug #13191.
2007-04-29 08:51:51 +05:00
unknown
2503382629 Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt-13191
2007-04-29 05:31:53 +05:00
unknown
cecc04953b Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt
2007-04-29 05:25:43 +05:00
unknown
3f16967847 Adjusted results after the fix for bug #20710. 2007-04-29 05:06:14 +05:00
unknown
98c0da4ed5 Fixed bug #13191.
INSERT...ON DUPLICATE KEY UPDATE may cause error 1032: 
"Can't find record in ..." if we are inserting into
InnoDB table unique index of partial key with
underlying UTF-8 string field.

This error occurs because INSERT...ON DUPLICATE uses a wrong
procedure to copy string fields of multi-byte character sets
for index search.


mysql-test/t/innodb_mysql.test:
  Added test case for bug #13191.
mysql-test/r/innodb_mysql.result:
  Added test case for bug #13191.
sql/field.h:
  Fixed bug #13191.
  Field_string::get_key_image() virtual function was overloaded
  to implement copying of variable length character (UTF-8) fields.
  Field::get_key_image() function prototype has been changed to
  return byte size of copied data.
sql/field.cc:
  Fixed bug #13191.
  Field_string::get_key_image() virtual function was overloaded
  to implement copying of variable length character (UTF-8) fields.
  Field::get_key_image() function prototype has been changed to
  return byte size of copied data.
sql/key.cc:
  Fixed bug #13191.
  INSERT...ON DUPLICATE KEY UPDATE may cause error 1032: 
  "Can't find record in ...".
  This error occurs because INSERT...ON DUPLICATE uses
  a wrong procedure to copy field parts for index search.
  key_copy() function has been fixed.
2007-04-29 04:16:17 +05:00
unknown
fd14779b21 Merge gshchepa.loc:/home/uchum/work/bk-trees/mysql-4.1-opt
into  gshchepa.loc:/home/uchum/work/bk-trees/mysql-5.0-opt
2007-04-29 02:46:27 +05:00
unknown
f90870e98f Fixed bug #20710.
This bug occurs when error message length exceeds allowed limit: my_error()
function outputs "%s" sequences instead of long string arguments.

Formats like %-.64s are very common in errmsg.txt files, however my_error()
function simply ignores precision of those formats.


mysys/my_error.c:
  Fixed bug #20710.
  This bug occurs when error message length exceeds allowed limit: my_error()
  function output "%s" sequences instead of long string arguments.
  my_error() function has been fixed to accept formats like %-.64s.
mysql-test/t/alter_table.test:
  Added test case for bug #20710.
mysql-test/r/alter_table.result:
  Added test case for bug #20710.
2007-04-29 00:50:33 +05:00
unknown
024dbd231a Avoid compiler warnings in Windows builds introduced by the patch for bug #24912 "problems with bigint in abs() ceiling() ruond() truncate() mod()" 2007-04-28 23:25:31 +04:00
unknown
ac86892f72 Merge polly.local:/home/kaa/src/maint/bug24912/my50-bug24912
into  polly.local:/home/kaa/src/maint/mysql-5.0-maint


sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2007-04-28 20:26:14 +04:00
unknown
38090df9b5 Fix for bug #24912 "problems with bigint in abs() ceiling() round() truncate() mod()" and a number of related problems:
- unsigned flag was not handled correctly for a number of mathematical funcions, which led to incorrect results
- passing large values as the number of decimals to ROUND() resulted in incorrect results and even server crashes in some cases
- reverted the fix and the testcase for bug #10083 as it violates the manual
- fixed some testcases which relied on broken ROUND() behavior


mysql-test/r/func_math.result:
  - Removed the testcase for bug #10083 (not a bug according to the manual)
  - Changed the testcase for bug #9837 to expect a correct ROUND() behavior
  - Added testcases for bug #24912 and all related bugs found
mysql-test/r/type_newdecimal.result:
  Fixed a truncate() testcase which relied on broken behavior
mysql-test/t/func_math.test:
  - Removed the testcase for bug #10083 (not a bug according to the manual)
  - Changed the testcase for bug #9837 to expect a correct ROUND() behavior
  - Added testcases for bug #24912 and all related bugs found
sql/item_func.cc:
  Various changes to fix bug #24912 and all related bugs found:
  - honor unsigned_flag in various Item_* functions
  - correctly handle out-of-range numbers of decimals in Item_func_round::fix_length_and_dec()
  - changed the argument specifying the number of decimals in my_double_round() from int to longlong, added a new argument to pass the 'unsigned flag'
  - changed my_double_round() to correctly handle large values passed as the 'number of decimals' argument
  - added a my_double_round() analog for BIGINT UNSIGNED arguments (my_unsigned_round())
  - fixed Item_func_round()::int_op() to not overflow even when the result is within integer range
  - fixed a bug Item_founc_round()::decimal_op() which resulted in crash when a large number of decimals was passed to my_decimal_round()
sql/item_func.h:
  Various fixed to correctly handle unsigned values.
sql/item_strfunc.cc:
  Changed the call to my_double_round() to match the new declaration.
sql/mysql_priv.h:
  Changed the declaration for my_double_round() to be able pass arbitrary integers as number of decimals (both signed and unsigned)
2007-04-28 20:01:01 +04:00
unknown
b183fbbb18 mtr_report.pl:
this has been driving me crazy: s/where/were/ in some messages


mysql-test/lib/mtr_report.pl:
  this has been driving me crazy: s/where/were/ in some messages
2007-04-28 10:13:27 +02:00