Commit graph

19779 commits

Author SHA1 Message Date
unknown
244fb387a3 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


client/mysqltest.c:
  Auto merged
mysql-test/r/udf.result:
  Auto merged
mysql-test/t/mysqltest.test:
  Auto merged
mysql-test/t/udf.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/udf_example.c:
  Auto merged
sql/udf_example.def:
  Auto merged
2007-10-18 19:21:07 -06:00
unknown
bf5bcb849f Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-base
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


client/mysqlcheck.c:
  Auto merged
client/mysqltest.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
mysql-test/include/mix1.inc:
  Auto merged
mysql-test/r/innodb_mysql.result:
  Auto merged
mysql-test/r/udf.result:
  Auto merged
mysql-test/t/udf.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2007-10-18 16:57:51 -06:00
unknown
6f2d5b301b Merge moksha.com.br:/Users/davi/mysql/bugs/21557-5.1
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-18 17:31:36 -03:00
unknown
7ae94a6887 Post merge fix for Bug 21557
mysql-test/r/log_tables.result:
  Update test result, general_log disabled.
mysql-test/t/log_tables.test:
  Disable the general_log before consulting it.
2007-10-18 17:24:57 -03:00
unknown
42d4be2c75 Merge moksha.com.br:/Users/davi/mysql/bugs/21557-5.1
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime


sql/sp_head.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2007-10-18 15:47:22 -03:00
unknown
b9b481ec70 Bug#21557 entries in the general query log truncated at 1000 characters.
The general log write function (general_log_print) uses printf style
arguments which need to be pre-processed, meaning that the all arguments
are copied to a single buffer and the problem is that the buffer size is
constant (1022 characters) but queries can be much larger then this.

The solution is to introduce a new log write function that accepts a
buffer and it's length as arguments. The function is to be used when
a formatted output is not required, which is the case for almost all
query write-to-log calls.

This is a incompatible change with respect to the log format of prepared
statements.


mysql-test/r/log_tables.result:
  Add test case result for Bug#21557
mysql-test/t/log_tables.test:
  Add test case for Bug#21557
sql/log.cc:
  Introduce the logger function general_log_write which is similar to
  general_log_print but accepts a single buffer and the buffer length.
  The function doesn't perform any formatting and sends the buffer
  directly to the underlying log handlers.
sql/log.h:
  Introduce the logger function general_log_write.
sql/log_event.cc:
  Pass the query buffer directly to the logger function, formatting
  is not required on this case.
sql/mysql_priv.h:
  Prototype for the logger function general_log_write.
sql/sp_head.cc:
  Pass the query buffer directly to the logger function, formatting
  is not required on this case.
sql/sql_parse.cc:
  Pass the buffer directly to the logger function when formatting
  is not required.
sql/sql_prepare.cc:
  Don't log the statement id, it avoids making a extra copy of the query
  and the query is not truncated anymore if it exceeds the limit.
2007-10-18 15:45:07 -03:00
unknown
c0d2ce4c88 Merge moksha.com.br:/Users/davi/mysql/bugs/31608-5.1
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-17 16:45:49 -03:00
unknown
e512572827 Bug#31608 missing mysqltest change_user command
Post merge fixes: close any open statement before
the change user command and fix test case output.


client/mysqltest.c:
  Close an open statement since it won't work after a change_user command.
mysql-test/r/change_user.result:
  Fixed test case output.
mysql-test/t/change_user.test:
  Fix test case output to return 1 or 0.
2007-10-17 16:43:30 -03:00
unknown
eea87d9e9b Merge moksha.com.br:/Users/davi/mysql/bugs/31608-5.1
into  moksha.com.br:/Users/davi/mysql/mysql-5.1-runtime
2007-10-17 14:05:52 -03:00
unknown
3fe4de96fe Fix result files (BUG#24923). 2007-10-17 15:44:22 +04:00
unknown
9e1604a46c Fix for BUG#24923: Functions with ENUM issues.
The problem was that the RETURNS column in the mysql.proc was of
CHAR(64). That was not enough for storing long-named datatypes.

The fix is to change CHAR(64) to LONGBLOB, and to throw warnings
at the time a stored routine is created if some data is truncated
during writing into mysql.proc.


mysql-test/r/sp.result:
  Update test result.
mysql-test/t/sp.test:
  Add a test case for BUG#24923.
scripts/mysql_system_tables.sql:
  Change the data type of column 'returns' from char(64) to longblob.
scripts/mysql_system_tables_fix.sql:
  Change the data type of column 'returns' from char(64) to longblob.
sql/sp.cc:
  Produce warnings if any data was truncated during writing
  into mysql.proc.
sql/sp.h:
  Add new error code.
sql/share/errmsg.txt:
  Add new error message.
sql/sql_parse.cc:
  Hande
2007-10-17 12:13:56 +04:00
unknown
d5cf878e52 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/repair.result:
  Auto merged
mysql-test/t/repair.test:
  Auto merged
2007-10-17 10:38:26 +04:00
unknown
d73ab388b1 Merge polly.(none):/home/kaa/src/maint/mysql-4.1-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint


mysql-test/r/repair.result:
  Auto merged
mysql-test/t/repair.test:
  Auto merged
2007-10-17 10:32:05 +04:00
unknown
77f287556b Fixed the test case for bug #31174 to not fail on 64-bit platforms. 2007-10-17 10:29:51 +04:00
unknown
84984f9111 Manual merge of 5.0-runtime to 5.1-runtime
mysql-test/r/sp-error.result:
  Manual merge
mysql-test/r/sp.result:
  Manual merge
mysql-test/r/udf.result:
  Manual merge
mysql-test/t/sp.test:
  Manual merge
mysql-test/t/udf.test:
  Manual merge
sql/item_create.cc:
  Manual merge
sql/sp_head.cc:
  Manual merge
sql/sql_yacc.yy:
  Manual merge
2007-10-16 20:47:08 -06:00
unknown
1dc0efc606 Merge lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.0-runtime
into  lambda.hsd1.co.comcast.net.:/home/malff/TREE/mysql-5.1-rt-merge


mysql-test/t/sp-error.test:
  Auto merged
mysql-test/t/udf.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_udf.cc:
  Auto merged
mysql-test/r/sp-error.result:
  failed auto merge
mysql-test/r/sp.result:
  failed auto merge
mysql-test/r/udf.result:
  failed auto merge
mysql-test/t/sp.test:
  failed auto merge
sql/sp_head.cc:
  failed auto merge
sql/sql_yacc.yy:
  failed auto merge
2007-10-16 15:43:16 -06:00
unknown
c9d5274867 Fixed query_cache_notembedded test program failure because of dependencies between
test programs.


mysql-test/r/query_cache.result:
  Reset query cache parameters to prevent dependency between test programs.
mysql-test/t/query_cache.test:
  Reset query cache parameters to prevent dependency between test programs.
2007-10-16 19:32:38 +02:00
unknown
28ef3b2a7f Implementing code review comments
mysql-test/r/sp.result:
  Added tests for coverage
mysql-test/t/sp.test:
  Added tests for coverage
sql/sql_udf.cc:
  Code cleanup
2007-10-16 11:16:31 -06:00
unknown
88e5aa69f7 Bug#31608 missing mysqltest change_user command
The problem is that currently there is no way to test the behavior
of the mysql_change_user() function using the mysqltest suite because
there is no internal command for it.

The solution is to introduce a change_user command that can be used
to test aspects of the MySQL client function mysql_change_user().


client/mysqltest.c:
  Add change_user command to mysqltest.
mysql-test/r/mysqltest.result:
  Add test case result for change_user command
mysql-test/t/mysqltest.test:
  Add test case for change_user command
mysql-test/r/change_user.result:
  Add new file with test case results for bugs 20023 and 31418.
mysql-test/t/change_user.test:
  Add new file with test cases for bugs 20023 and 31418.
2007-10-16 12:29:22 -03:00
unknown
6f471bff96 Merge polly.(none):/home/kaa/src/maint/mysql-5.0-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.1-maint


storage/myisam/sort.c:
  Auto merged
mysql-test/r/repair.result:
  SCCS merged
mysql-test/t/repair.test:
  SCCS merged
2007-10-16 19:25:04 +04:00
unknown
9ef7b5f6f0 Merge polly.(none):/home/kaa/src/maint/mysql-4.1-maint
into  polly.(none):/home/kaa/src/maint/mysql-5.0-maint


myisam/sort.c:
  Auto merged
mysql-test/r/repair.result:
  Auto merged
mysql-test/t/repair.test:
  Auto merged
2007-10-16 19:20:00 +04:00
unknown
99a7866a93 Merge polly.(none):/home/kaa/src/maint/bug31174/my41-bug31174
into  polly.(none):/home/kaa/src/maint/mysql-4.1-maint
2007-10-16 19:17:00 +04:00
unknown
5254686e53 Merge kpettersson@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  adventure.(none):/home/thek/Development/cpp/mysql-5.1-runtime
2007-10-16 14:45:52 +02:00
unknown
1f8126190b Bug#30710 query_cache.test fails on embedded - per-column privs test
The embedded version of the server doesn't use column level grants, and 
the compile directive NO_EMBEDDED_ACCESS_CHECKS should be checked instead of
the redundant HAVE_QUERY_CACHE (which is always the case) to determine if 
column level grants should be compiled or not.


mysql-test/r/query_cache.result:
  Updated result file
mysql-test/r/query_cache_notembedded.result:
  Updated result file
mysql-test/t/query_cache.test:
  Moved test with GRANT to query_cache_notembedded test.
mysql-test/t/query_cache_notembedded.test:
  Moved test with GRANT to query_cache_notembedded test.
sql/sql_cache.cc:
  Changed the conditional compilation directive to only compile column level grant
  checks if NO_EMBEDDED_ACCESS_CHECKS isn't defined.
2007-10-16 14:42:42 +02:00
unknown
f1d7a96b0a Bug#28318 (CREATE FUNCTION (UDF) requires a schema) -- part II
The root cause of the issue was that the CREATE FUNCTION grammar,
for User Defined Functions, was using the sp_name rule.
The sp_name rule is intended for fully qualified stored procedure names,
like either ident.ident, or just ident but with a default database
implicitly selected.

A UDF does not have a fully qualified name, only a name (ident), and should
not use the sp_name grammar fragment during parsing.

The fix is to re-organize the CREATE FUNCTION grammar, to better separate:
- creating UDF (no definer, can have AGGREGATE, simple ident)
- creating Stored Functions (definer, no AGGREGATE, fully qualified name)

With the test case provided, another issue was exposed which is also fixed:
the DROP FUNCTION statement was using sp_name and also failing when no database
is implicitly selected, when droping UDF functions.
The fix is also to change the grammar so that DROP FUNCTION works with
both the ident.ident syntax (to drop a stored function), or just the ident
syntax (to drop either a UDF or a Stored Function, in the current database)


mysql-test/r/sp-error.result:
  Adjust test results
mysql-test/r/udf.result:
  Adjust test results
mysql-test/t/sp-error.test:
  Adjust test results
mysql-test/t/udf.test:
  Adjust test results
sql/sql_parse.cc:
  CREATE UDF FUNCTION does not use a fully qualified name.
sql/sql_yacc.yy:
  Fix grammar for CREATE / DROP FUNCTION, FOR udf
  Improve error messages for select no_such_function()
2007-10-15 19:15:38 -06:00
unknown
70ee3aa75f Merge pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-maint
into  pilot.mysql.com:/data/msvensson/mysql/mysql-5.1-new-maint


libmysql/libmysql.c:
  Auto merged
mysql-test/r/type_float.result:
  Auto merged
mysql-test/t/type_float.test:
  Auto merged
2007-10-15 10:59:01 +02:00
unknown
13afffd03b Merge pilot.mysql.com:/data/msvensson/mysql/bug11589/my50-test_latest
into  pilot.mysql.com:/data/msvensson/mysql/mysql-5.0-maint


libmysql/libmysql.c:
  Auto merged
mysql-test/r/type_float.result:
  Manual merge
mysql-test/t/type_float.test:
  Manual merge
2007-10-15 09:22:11 +02:00
unknown
8b7ee0d67a Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.1
2007-10-15 10:41:26 +05:00
unknown
4eb5506257 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.0
2007-10-15 10:40:28 +05:00
unknown
e9668a9b55 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.0
2007-10-15 10:28:58 +05:00
unknown
fbb2d1ff69 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  mysql.com:/home/ram/work/b31154/b31154.5.1
2007-10-15 10:21:22 +05:00
unknown
29b06fd022 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  mysql.com:/home/ram/work/b30885/b30885.5.0
2007-10-15 09:57:11 +05:00
unknown
b777dbfba8 Merge mysql.com:/home/ram/work/b31154/b31154.5.0
into  mysql.com:/home/ram/work/b31154/b31154.5.1


mysql-test/r/func_gconcat.result:
  Auto merged
mysql-test/t/func_gconcat.test:
  Auto merged
sql/item_sum.cc:
  Auto merged
2007-10-15 09:44:22 +05:00
unknown
782ce0243a Merge mysql.com:/home/ram/work/mysql-5.1-maint
into  mysql.com:/home/ram/work/b30885/b30885.5.1
2007-10-15 09:43:31 +05:00
unknown
0de6438060 Merge mysql.com:/home/ram/work/b30885/b30885.5.0
into  mysql.com:/home/ram/work/b30885/b30885.5.1


mysql-test/r/heap_btree.result:
  Auto merged
mysql-test/t/heap_btree.test:
  Auto merged
storage/heap/hp_hash.c:
  the code was changed to use bitmaps instead of key length, so ul
2007-10-15 09:41:30 +05:00
unknown
d1aabe3897 Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.1-maint
into  sin.intern.azundris.com:/home/tnurnberg/30951/51-30951
2007-10-12 11:56:51 +02:00
unknown
e0bdce865a Merge tnurnberg@bk-internal.mysql.com:/home/bk/mysql-5.0-maint
into  sin.intern.azundris.com:/home/tnurnberg/30951/50-30951
2007-10-12 11:54:44 +02:00
unknown
b9be40cc1e Merge sin.intern.azundris.com:/home/tnurnberg/30951/50-30951
into  sin.intern.azundris.com:/home/tnurnberg/30951/51-30951


mysql-test/r/func_sapdb.result:
  Auto merged
mysql-test/t/func_sapdb.test:
  Auto merged
sql-common/my_time.c:
  Auto merged
2007-10-12 11:47:28 +02:00
unknown
91f6d169a6 Bug#30951: makedate returns different results depending on version of mysql
makedate() will fold years below 100 into the 1970-2069 range. CS removes code
that also wrongly folded years between 100 and 200 into that range, which should
be left unchanged. Backport from 5.1.


mysql-test/r/func_sapdb.result:
  Show that makedate() works correctly for 100 <= year < 200.
mysql-test/t/func_sapdb.test:
  Show that makedate() works correctly for 100 <= year < 200.
sql-common/my_time.c:
  Remove unnecessary date magic. Syncs behaviour with 5.1+
  and manual.
2007-10-12 11:46:48 +02:00
unknown
f22b95401e Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.1-27858-b


mysql-test/r/log_tables.result:
  Auto merged
2007-10-11 17:58:32 -06:00
unknown
3df1613f27 Bug#27858 (Failing to log to a log table doesn't log anything to error log)
Before this patch, failures to write to the log tables (mysql.slow_log
and mysql.general_log) were improperly printed (the time was printed twice),
or not printed at all.

With this patch, failures to write to the log tables is reported in the
error log, for all cases of failures.


mysql-test/r/log_tables.result:
  Bug#27858 (Failing to log to a log table doesn't log anything to error log)
mysql-test/t/log_tables.test:
  Bug#27858 (Failing to log to a log table doesn't log anything to error log)
sql/log.cc:
  Bug#27858 (Failing to log to a log table doesn't log anything to error log)
2007-10-11 17:55:18 -06:00
unknown
03e74b8c5e Bug#29223 declare cursor c for SHOW .....
"DECLARE CURSOR FOR SHOW ..." is a syntax that currently appears to work,
but is untested for some SHOW commands and does not work for other SHOW
commands.

Since this is an un-intended feature that leaked as a result of a coding bug
(in the parser grammar), the correct fix is to fix the grammar to not accept
this construct.

In other words, "DECLARE CURSOR FOR SHOW <other commands that don't work>"
is not considered a bug, and we will not implement other features to make all
the SHOW commands usable inside a cursor just because someone exploited a bug.


mysql-test/r/sp-error.result:
  Only allow declaring cursors for SELECT statements to avoid
  possible further confusion/problems.
mysql-test/t/information_schema.test:
  Only SELECT statements are allowed in cursors.
mysql-test/t/sp-error.test:
  Add test case for Bug#29223. Non-SELECT statements in cursors now
  yields a parser error.
sql/sql_yacc.yy:
  Rework DECLARE CURSOR statement to not allow non-SELECT statements.
2007-10-11 17:38:40 -03:00
unknown
24a567e9f6 Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
Problem: GROUP_CONCAT(DISTINCT BIT_FIELD...) uses a tree to store keys;
which are constructed using a temporary table fields,
see Item_func_group_concat::setup().
As a) we don't store null bits in the tree where the bit fields store parts 
of their data and b) there's no method to properly compare two table records
we've got problem.

Fix: convert BIT fields to INT in the temporary table used.


mysql-test/r/func_gconcat.result:
  Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
    - test result.
mysql-test/t/func_gconcat.test:
  Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
    - test case.
sql/item_sum.cc:
  Fix for bug #31154: field.h:1649: virtual int Field_bit::cmp(const uchar*, const uchar*): Assertion
    - force the create_tmp_table() to convert BIT columns to INT 
      in order to be able to compare records containing BIT fields.
2007-10-11 17:20:34 +05:00
unknown
1c7b80dff9 Fix for bug #31174: "Repair" command on MyISAM crashes with small
myisam_sort_buffer_size.

An incorrect length of the sort buffer was used when calculating the
maximum number of keys. When myisam_sort_buffer_size is small enough,
this could result in the number of keys < number of
BUFFPEK structures which in turn led to use of uninitialized BUFFPEKs.

Fixed by correcting the buffer length calculation.


myisam/sort.c:
  Use a correct buffer length when calculating the maximum number of keys.
  Assert that for each BUFFPEK structure there is at least one
  corresponding key. Otherwise we would fail earlier and not reach
  merge_buffers().
mysql-test/r/repair.result:
  Added a test case for bug #31174.
mysql-test/t/repair.test:
  Added a test case for bug #31174.
2007-10-11 14:28:12 +04:00
unknown
27e2f30e05 Post-merge test case for Bug 31409
mysql-test/include/handler.inc:
  Add test case for Bug 31409
mysql-test/r/handler_innodb.result:
  Add test case result for InnoDB run of the handler test for Bug 31409
mysql-test/r/handler_myisam.result:
  Add test case result for MyISAM run of the handler test for Bug 31409
2007-10-10 21:39:22 -03:00
unknown
86cb5ae9bc Post-merge test case for Bug 21587
mysql-test/include/handler.inc:
  Add test case for Bug 21587
mysql-test/r/handler_innodb.result:
  Add test case result for InnoDB run of the handler test for Bug 21587
mysql-test/r/handler_myisam.result:
  Add test case result for MyISAM run of the handler test for Bug 21587
2007-10-10 19:06:53 -03:00
unknown
17c19299af Merge ramayana.hindu.god:/home/tsmith/m/bk/51
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/51


configure.in:
  Auto merged
mysql-test/Makefile.am:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
scripts/Makefile.am:
  Auto merged
scripts/mysql_system_tables_data.sql:
  Auto merged
scripts/mysqld_safe.sh:
  Auto merged
sql/sql_select.cc:
  Auto merged
storage/innobase/handler/ha_innodb.cc:
  Auto merged
2007-10-10 14:15:09 -06:00
unknown
c7ca2283a9 Merge ramayana.hindu.god:/home/tsmith/m/bk/50
into  ramayana.hindu.god:/home/tsmith/m/bk/maint/50


mysql-test/mysql-test-run.pl:
  Auto merged
scripts/mysql_system_tables_data.sql:
  Auto merged
2007-10-10 14:12:36 -06:00
unknown
74ce197bda Merge polly.(none):/home/kaa/src/maint/bug28878/my41-bug28878
into  polly.(none):/home/kaa/src/maint/mysql-4.1-maint
2007-10-10 23:39:53 +04:00
unknown
77c5085882 Cleanup sp.test.
mysql-test/r/sp.result:
  Update result file.
2007-10-10 14:42:29 +04:00