Commit graph

14952 commits

Author SHA1 Message Date
unknown
0586acd05d Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-18239


mysql-test/t/sp.test:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2006-11-15 11:24:57 -07:00
unknown
418fd54843 Bug#18239 (Possible to overload internal functions with stored functions)
Bug#21025 (misleading error message when creating functions named 'x', or 'y')
Bug#22619 (Spaces considered harmful)

This change contains a fix to report warnings or errors, and multiple tests
cases.

Before this fix, name collisions between:
- Native functions
- User Defined Functions
- Stored Functions
were not systematically reported, leading to confusing behavior.

I) Native / User Defined Function

Before this fix, is was possible to create a UDF named "foo", with the same
name as a native function "foo", but it was impossible to invoke the UDF,
since the syntax "foo()" always refer to the native function.
After this fix, creating a UDF fails with an error if there is a name
collision with a native function.

II) Native / Stored Function

Before this fix, is was possible to create a SF named "db.foo", with the same
name as a native function "foo", but this was confusing since the syntax
"foo()" would refer to the native function. To refer to the Stored Function,
the user had to use the "db.foo()" syntax.
After this fix, creating a Stored Function reports a warning if there is a
name collision with a native function.

III) User Defined Function / Stored Function

Before this fix, creating a User Defined Function "foo" and a Stored Function
"db.foo" are mutually exclusive operations. Whenever the second function is
created, an error is reported. However, the test suite did not cover this
behavior.
After this fix, the  behavior is unchanged, and is now covered by test cases.

Note that the code change in this patch depends on the fix for Bug 21114.


mysql-test/r/sp.result:
  New test cases.
mysql-test/r/udf.result:
  New test cases.
mysql-test/t/sp.test:
  New test cases.
mysql-test/t/udf.test:
  New test cases.
sql/sql_lex.cc:
  Name collisions with native functions.
sql/sql_lex.h:
  Name collisions with native functions.
sql/sql_yacc.yy:
  Name collisions with native functions.
sql/share/errmsg.txt:
  Name collisions with native functions.
mysql-test/r/sp_gis.result:
  New test cases.
mysql-test/t/sp_gis.test:
  New test cases.
2006-11-14 19:34:16 -07:00
unknown
0b0a695220 give a bit more time for the execution of the events
mysql-test/t/events_bugs.test:
  give a bit more time for execution
2006-11-13 15:28:23 +01:00
unknown
458fb082d0 Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg23651
into  mockturtle.local:/home/dlenev/src/mysql-5.1-merge


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/item_func.cc:
  Auto merged
2006-11-13 11:29:40 +03:00
unknown
1031c460de Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg23651


sql/item_func.cc:
  Auto merged
2006-11-13 11:15:02 +03:00
unknown
fc83f787cb Fix for bug bug#23651 "Server crashes when trigger which uses
stored function invoked from different connections".

Invocation of trigger which was using stored function from different
connections caused server crashes (for non-debug server this happened
in highly concurrent environment, but debug server failed on assertion
in relatively simple scenario).

Item_func_sp was not safe to use in triggers (in other words for
re-execution from different threads) as artificial TABLE object
pointed by Item_func_sp::dummy_table referenced incorrect THD
object. To fix the problem we force re-initialization of this
object for each re-execution of statement.


mysql-test/r/trigger.result:
  Added test for bug#23651 "Server crashes when trigger which uses
  stored function invoked from different connections".
mysql-test/t/trigger.test:
  Added test for bug#23651 "Server crashes when trigger which uses
  stored function invoked from different connections".
sql/item_func.cc:
  To make Item_func_sp safe for usage in triggers (in other words safe
  for re-execution in different threads) we need to ensure that artificial
  TABLE object pointed by Item_func_sp::dummy_table references correct
  THD object. To achieve this we simply force its re-initialization for
  each re-execution of statement.
2006-11-13 11:10:49 +03:00
unknown
d1f5f590da Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  bodhi.local:/opt/local/work/mysql-5.1-runtime
2006-11-12 10:56:10 +03:00
unknown
383fbde532 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime
2006-11-12 10:55:33 +03:00
unknown
47bdda0b9d Merge mysql.com:/Users/kent/mysql/bk/mysql-5.0
into  mysql.com:/Users/kent/mysql/bk/mysql-5.1


mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-11 14:46:06 +01:00
unknown
3af223ed9b Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1
into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
2006-11-11 14:32:10 +01:00
unknown
c6d317831a mysql-test-run.pl:
Test for base directory when a RPM install corrected


mysql-test/mysql-test-run.pl:
  Test for base directory when a RPM install corrected
2006-11-11 14:12:30 +01:00
unknown
c3d9588eaf Merge bodhi.local:/opt/local/work/mysql-5.0-runtime
into  bodhi.local:/opt/local/work/mysql-5.1-runtime


configure.in:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
mysql-test/t/rename.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/time.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
2006-11-11 14:59:14 +03:00
unknown
75a0878fbf Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  bodhi.local:/opt/local/work/mysql-5.0-runtime


configure.in:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/time.cc:
  Auto merged
mysql-test/t/rename.test:
  Use local (resolve a conflict)
2006-11-11 14:51:19 +03:00
unknown
0b2cb6628f Merge trift2.:/MySQL/M50/push-5.0
into  trift2.:/MySQL/M51/push-5.1


BitKeeper/deleted/.del-gcc.cpp~3d2e013cfac48838:
  Auto merged
configure.in:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/mysql-test-run-shell.sh:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/rename.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/time.cc:
  Auto merged
storage/myisam/sort.c:
  Auto merged
2006-11-10 20:02:33 +01:00
unknown
e0854cbc14 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51


mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-10 19:41:47 +01:00
unknown
0bd4eaa765 Merge tsmith@bk-internal.mysql.com:/home/bk/mysql-5.1
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51


mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-10 19:39:26 +01:00
unknown
56934f9dd4 Merge trift2.:/MySQL/M41/push-4.1
into  trift2.:/MySQL/M50/push-5.0


BitKeeper/deleted/.del-gcc.cpp~3d2e013cfac48838:
  Auto merged
configure.in:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/rename.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/time.cc:
  Auto merged
myisam/sort.c:
  Manual merge: "use local" (= 5.0 version).
mysql-test/mysql-test-run.pl:
  Manual merge, part of the fix for bug#17194.
2006-11-10 19:07:52 +01:00
unknown
aa341c498e Merge trift2.:/MySQL/M41/bug17194-4.1
into  trift2.:/MySQL/M41/push-4.1
2006-11-10 15:54:58 +01:00
unknown
744aadbef9 Merge trift2.:/MySQL/M41/clone-4.1
into  trift2.:/MySQL/M41/push-4.1


myisam/sort.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/mysql-test-run.pl:
  Manual merge.
2006-11-10 15:52:53 +01:00
unknown
1cb38d3be6 Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-4.1
into  kahlann.erinye.com:/home/df/mysql/build/mtr-4.1
2006-11-10 14:49:07 +01:00
unknown
694227c08a Merge dfischer@bk-internal.mysql.com:/home/bk/mysql-5.0
into  kahlann.erinye.com:/home/df/mysql/build/mtr-5.0


mysql-test/mysql-test-run.pl:
  merge
2006-11-10 14:44:01 +01:00
unknown
9cbd8a0414 Merge kahlann.erinye.com:/home/df/mysql/build/mtr-5.0
into  kahlann.erinye.com:/home/df/mysql/build/51


mysql-test/mysql-test-run.pl:
  SCCS merged
2006-11-10 13:27:50 +01:00
unknown
0f8e62b492 Merge kahlann.erinye.com:/home/df/mysql/build/mtr-4.1
into  kahlann.erinye.com:/home/df/mysql/build/mtr-5.0


mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-10 13:14:21 +01:00
unknown
df1b6ae6e1 add --report-features to mysql-test-run.pl
mysql-test/mysql-test-run.pl:
  add --report-features
mysql-test/include/report-features.test:
  test file showing server features for mysql-test-run.pl --report-features
2006-11-10 13:12:08 +01:00
unknown
cb80733a89 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-4.1
into  outpost.site:/home/cps/mysql/trees/4.1-runtime-bug9191


configure.in:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/time.cc:
  Auto merged
mysql-test/t/rename.test:
  choose one of the race problem solutions. It was solved
  differently in -runtime and mainstream
2006-11-10 15:05:38 +03:00
unknown
f7e7f20ba8 Merge mysql.com:/Users/kent/mysql/bk/lic/my51-lic
into  mysql.com:/Users/kent/mysql/bk/mysql-5.1
2006-11-10 02:45:34 +01:00
unknown
65d25c7574 Merge mysql.com:/Users/kent/mysql/bk/lic/my50-lic
into  mysql.com:/Users/kent/mysql/bk/lic/my51-lic


mysql-test/mysql-test-run-shell.sh:
  Auto merged
2006-11-10 02:36:29 +01:00
unknown
71c646f34d Merge mysql.com:/Users/kent/mysql/bk/lic/my50-lic
into  mysql.com:/Users/kent/mysql/bk/mysql-5.0
2006-11-10 02:35:01 +01:00
unknown
bb662f6e62 Merge mysql.com:/Users/kent/mysql/bk/lic/my41-lic
into  mysql.com:/Users/kent/mysql/bk/lic/my50-lic


mysql-test/mysql-test-run.sh:
  Auto merged
2006-11-10 02:28:31 +01:00
unknown
facaaeb4c4 mysql-test-run.sh:
Added --force-restart pseudo server argument to shell version as well


mysql-test/mysql-test-run.sh:
  Added --force-restart pseudo server argument to shell version as well
2006-11-10 02:22:33 +01:00
unknown
62e0e608ff mysql-test/install_test_db.sh
Adapt to the different path of the server program, if installation was by RPM.
    Missing in the first changeset for bug#17194.


mysql-test/install_test_db.sh:
  Adapt to the different path of the server program, if installation was by RPM.
  Missing in the first changeset for bug#17194.
2006-11-09 17:43:31 +01:00
unknown
1a0a6142a9 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51


client/mysql_upgrade.c:
  Auto merged
configure.in:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_time.h:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/rename.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
mysql-test/t/rename.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/time.cc:
  Auto merged
2006-11-09 00:38:34 +01:00
unknown
81369793df Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/g51
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/51


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/im_daemon_life_cycle.result:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
vio/viosslfactories.c:
  Auto merged
2006-11-09 00:28:31 +01:00
unknown
6004231787 Merge quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/g50
into  quadxeon.mysql.com:/benchmarks/ext3/TOSAVE/tsmith/bk/50
2006-11-09 00:26:22 +01:00
unknown
b3e24bedd3 Merge bk-internal:/home/bk/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
2006-11-08 23:24:16 +01:00
unknown
b1520eb3e2 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-08 23:17:09 +01:00
unknown
d3b049a6bf Update of --mem flag after comments
mysql-test/mysql-test-run.pl:
  Allow --mem to be specified as a flag or --mem=<dir>
  Add /tmp to locations to search
  Update comments and usage description
2006-11-08 23:16:44 +01:00
unknown
26e6d78845 No need to pass an additional arg to to mtr_add_arg when there is no % sign 2006-11-08 22:56:06 +01:00
unknown
39c8672fb6 Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
2006-11-08 22:54:22 +01:00
unknown
427f1acaaa Pass location of charsets dir to mysqltest to avoid using the charsetdir locally installed on machine.
client/mysqltest.c:
  Add new option --character-sets-dir to mysqltest
  Set MYSQL_SET_CHRSET_DIR before connecting to mysqld if the above variable is set
mysql-test/mysql-test-run.pl:
  Pass $path_charsetsdir to mysqltest
2006-11-08 22:53:40 +01:00
unknown
c98a6dc8af Don't run mysqltest with both --silent and --verbose 2006-11-08 22:45:52 +01:00
unknown
96a78a6321 Merge trift2.:/MySQL/M41/bug17194-4.1
into  trift2.:/MySQL/M41/clone-4.1
2006-11-08 21:22:52 +01:00
unknown
78be2cdcbe Merge alik.:/mnt/raid/alik/MySQL/devel/5.1
into  alik.:/mnt/raid/alik/MySQL/devel/5.1-rt


configure.in:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
sql/handler.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
2006-11-08 22:20:58 +03:00
unknown
75d86b93b5 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my51-bug10963
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.1-maint
2006-11-08 10:19:02 -05:00
unknown
eca59e1faf Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my50-bug10963
into  zippy.cornsilk.net:/home/cmiller/work/mysql/mysql-5.0-maint
2006-11-08 10:18:16 -05:00
unknown
d75c784ec2 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my50-bug10963
into  zippy.cornsilk.net:/home/cmiller/work/mysql/bug10963/my51-bug10963


mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
2006-11-08 10:12:06 -05:00
unknown
3a86738289 Bug#10963: LEFT/RIGHT/SUBSTR/.. string functions returns wrong result \
on large length
  
Problem:  Most (all) of the numeric inputs were being coerced into
int (32 bit) sized variables.  Works OK for sane inputs; any input
larger than 2^32 (or 2^31 for signed vars) exihibited predictable
wrapping behavior (up to about 10^18) and then started having really
strange behaviour past that point (since the conversion to 64 bit int
from the DECIMAL type can do weird things on out of range numbers).

Solution: 1)  Add many tests.  2)  Convert input from (u)long type to
(u)longlong.  3)  Do (sometimes multiple) sanity checks on input,
keeping in mind that sometimes a negative longlong is not a negative
longlong (if the unsigned_flag is set).  4) Emulate existing behavior
w/rt negative and "small" out-of-bounds values.


mysql-test/r/func_str.result:
  Additional test results for #10963
mysql-test/t/func_str.test:
  Additional test results for #10963
sql/item_func.cc:
  Used larger type for counting, to avoid truncation.
sql/item_strfunc.cc:
  Fix for #10963, including comments and cleaned up logic
2006-11-08 10:11:02 -05:00
unknown
4a3d614352 Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


configure.in:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
2006-11-08 11:40:33 +01:00
unknown
5576bfb454 Merge neptunus.(none):/home/msvensson/mysql/mysql-5.0-maint
into  neptunus.(none):/home/msvensson/mysql/mysql-5.1-new-maint
2006-11-08 11:32:07 +01:00
unknown
13dc35cd0d Merge ted.mysql.internal:/home/ted/src/mysql/mysql-5.0-maint
into  ted.mysql.internal:/home/ted/src/mysql/mysql-5.1-new-maint


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/im_daemon_life_cycle.result:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
vio/viosslfactories.c:
  Auto merged
2006-11-08 06:16:12 +03:00