Commit graph

9369 commits

Author SHA1 Message Date
unknown
487d56b096 Merge joerg@trift2:/M50/part2-ramil
into trift-lap.fambruehe:/MySQL/M51/merge-5.1


sql/sp_head.cc:
  Auto merged
sql/table.cc:
  Auto merged
2005-12-14 23:05:08 +01:00
unknown
59789c7f4b Merge trift-lap.fambruehe:/MySQL/M51/part1-kent-knielsen
into trift-lap.fambruehe:/MySQL/M51/merge-5.1


mysql-test/t/symlink.test:
  Auto merged
mysql-test/t/trigger-compat.test:
  Auto merged
mysql-test/t/trigger-grant.test:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-12-14 21:39:17 +01:00
unknown
c99f3d41d9 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  mysql.com:/home/alexi/innodb-ss/mysql-5.1-ss28


mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
2005-12-14 18:08:56 +03:00
unknown
2d40e25231 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.1-new
into  hundin.mysql.fi:/home/jani/mysql-5.1-new


storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
2005-12-14 12:32:58 +02:00
unknown
4e98c2e886 Merge perch.ndb.mysql.com:/home/jonas/src/mysql-5.0
into  perch.ndb.mysql.com:/home/jonas/src/mysql-5.1-new


mysql-test/r/ndb_basic.result:
  Auto merged
mysql-test/t/ndb_basic.test:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
  Auto merged
storage/ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
storage/ndb/src/kernel/vm/SimulatedBlock.cpp:
  merge
storage/ndb/src/ndbapi/ndberror.c:
  merge
2005-12-14 11:06:40 +01:00
unknown
2c808bed24 bug#15682 - ndb - invalid handling of varchar in position/rnd_pos
mysql-test/r/ndb_basic.result:
  bug#15682 - invalid handling of varchar in position/rnd_pos
mysql-test/t/ndb_basic.test:
  bug#15682 - invalid handling of varchar in position/rnd_pos
ndb/src/kernel/blocks/dbtc/Dbtc.hpp:
  New error code for invalid key
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Handle invalid key gracefully
ndb/src/kernel/vm/SimulatedBlock.cpp:
  Handle invalid key gracefully
ndb/src/ndbapi/ndberror.c:
  New error code
sql/ha_ndbcluster.cc:
  Fix varchar keys in position/rnd_pos
2005-12-14 10:57:09 +01:00
unknown
c108939d19 Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-new


extra/Makefile.am:
  Auto merged
mysql-test/t/disabled.def:
  Merged from 5.0
sql/handler.cc:
  Merged from 5.0
sql/mysqld.cc:
  Merged from 5.0
2005-12-14 09:42:05 +02:00
unknown
06042b36f4 Disabled test. Fails in ps-protocol mode. 2005-12-14 02:56:34 +02:00
unknown
b141917a0a Merge a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0
into  a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.1-new


mysql-test/r/ndb_read_multi_range.result:
  Auto merged
sql/ha_archive.cc:
  SCCS merged
2005-12-14 01:38:10 +02:00
unknown
67183a7b8a Fixed test case. 2005-12-14 00:23:46 +02:00
unknown
27970ee72e Merge epotemkin@bk-internal.mysql.com:/home/bk/mysql-5.0
into moonbone.local:/work/15268-bug-5.0-mysql
2005-12-13 23:26:35 +03:00
unknown
11b6afd3b3 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb-ss/mysql-5.0-ss92
2005-12-13 22:29:36 +03:00
unknown
778d212b8c Fix BUG#12071: "Windows hang:'Opening tables' or 'Waiting for
table' lockup".
 Changes from the innodb-5.0-ss92 snapshot.
 Do not call os_file_create_tmpfile() at runtime. Instead, create
 all tempfiles at startup and guard access to them with mutexes.


innobase/btr/btr0sea.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/buf0buf.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/os0file.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/include/srv0srv.h:
  Changes from the innodb-5.0ss92 snapshot.
innobase/row/row0ins.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/srv/srv0srv.c:
  Changes from the innodb-5.0ss92 snapshot.
innobase/srv/srv0start.c:
  Changes from the innodb-5.0ss92 snapshot.
mysql-test/r/innodb.result:
  Changes from the innodb-5.0ss92 snapshot.
mysql-test/t/innodb.test:
  Changes from the innodb-5.0ss92 snapshot.
sql/ha_innodb.cc:
  Changes from the innodb-5.0ss92 snapshot.
2005-12-13 21:35:24 +03:00
unknown
a0a942fb6f Bug#15675 - ndb - fix read_multi_range.test drop all tables it using
NOTE: only changes to test script


mysql-test/t/ndb_read_multi_range.test:
  Bug#15675 - ndb - fix read_multi_range.test drop all tables it using
2005-12-13 17:33:19 +01:00
unknown
ad4d877350 Changes from the innodb-5.1-ss28 snapshot.
Removed include/Makefile.am and the reference to it.
 Deleted db/db0err.h and db directory.
 Check index column sizes in a better way (bug 13315).
 Fixed comments for memory allocation functions and added
 some extra checks. Adapted callers.


BitKeeper/deleted/.del-Makefile.am~ab5c84d46412dc2e:
  Delete: storage/innobase/include/Makefile.am
BitKeeper/deleted/.del-db0err.h~bfeec2efe86ac48b:
  Delete: storage/innobase/db/db0err.h
mysql-test/r/innodb.result:
  Changes from the innodb-5.1-ss28 snapshot.
mysql-test/t/innodb.test:
  Changes from the innodb-5.1-ss28 snapshot.
sql/ha_innodb.cc:
  Changes from the innodb-5.1-ss28 snapshot.
sql/ha_innodb.h:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/Makefile.am:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/configure.in:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/ha/ha0ha.c:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/include/ha0ha.h:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/include/ha0ha.ic:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/include/mem0mem.h:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/include/mem0mem.ic:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/lock/lock0lock.c:
  Changes from the innodb-5.1-ss28 snapshot.
storage/innobase/mem/mem0mem.c:
  Changes from the innodb-5.1-ss28 snapshot.
2005-12-13 16:49:24 +03:00
unknown
3cb80d328d Fix sp.result after merge
mysql-test/r/sp.result:
  Update results (t3 does exist here)
2005-12-12 14:53:47 -08:00
unknown
6a53fec551 Merge mysql.com:/home/jimw/my/mysql-5.0-clean
into  mysql.com:/home/jimw/my/mysql-5.1-clean


mysql-test/r/sp.result:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/sql_base.cc:
  Resolve conflict
2005-12-12 11:57:07 -08:00
unknown
50bcb9623d Merge bk-internal:/home/bk/mysql-5.0
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2005-12-12 11:39:33 -08:00
unknown
d6e5fdf08a Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into  mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/r/bdb.result:
  Resolve conflicts
mysql-test/t/bdb.test:
  Resolve conflicts
sql/sql_delete.cc:
  Resolve conflicts
sql/sql_insert.cc:
  Resolve conflicts
sql/sql_update.cc:
  Resolve conflicts
2005-12-12 10:11:56 -08:00
unknown
edf3915a07 Merge mysql.com:/M50/mysql-5.0 into mysql.com:/M50/bug12429 2005-12-12 19:04:47 +01:00
unknown
16d4b1d888 Merge mysql.com:/M50/bug12429 into mysql.com:/M51/merge-5.1 2005-12-12 18:50:00 +01:00
unknown
cc3f2163c3 rpl_until.test + rpl_until.result Fix (completion) for bug#12429
Manual merge from 4.1,
extension of the old fix (1.1976 05/12/05 17:57:48 mleich@mysql.com) to two other places.


mysql-test/t/rpl_until.test:
  Auto merged
mysql-test/r/rpl_until.result:
  Manual merge from 4.1,
  extension of the old fix (1.1976 05/12/05 17:57:48 mleich@mysql.com) to two other places.
2005-12-12 18:00:37 +01:00
unknown
56830072d3 rpl_until.test + rpl_until.result
Fix for bug#12429: Replication tests fail: "Slave_IO_Running" differs:
The value is not important, and it depends on timing. Mask it.

Backport and extension of a fix made by Matthias in 5.0, originally it was
1.1976 05/12/05 17:57:48 mleich@mysql.com


mysql-test/r/rpl_until.result:
  Fix for bug#12429: Replication tests fail: "Slave_IO_Running" differs:
  The value is not important, and it depends on timing. Mask it.
  
  Backport and extension of a fix made by Matthias in 5.0, originally it was
  1.1976 05/12/05 17:57:48 mleich@mysql.com
mysql-test/t/rpl_until.test:
  Fix for bug#12429: Replication tests fail: "Slave_IO_Running" differs:
  The value is not important, and it depends on timing. Mask it.
  
  Backport and extension of a fix made by Matthias in 5.0, originally it was
  1.1976 05/12/05 17:57:48 mleich@mysql.com
2005-12-12 17:51:56 +01:00
unknown
fb0d4c3b41 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-5.1-new


mysql-test/t/symlink.test:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-12-12 16:12:36 +01:00
unknown
346694bddf Merge mysql.com:/home/dlenev/src/mysql-5.0-merges
into  mysql.com:/home/dlenev/src/mysql-5.1-merges


mysql-test/r/view.result:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2005-12-12 14:59:14 +03:00
unknown
e8edf40f43 Merge WL#2984
mysql-test/r/sp-vars.result:
  Merge
mysql-test/r/sp.result:
  Merge
mysql-test/r/type_newdecimal-big.result:
  Merge
mysql-test/t/type_newdecimal-big.test:
  Merge
sql/sp_head.cc:
  Merge
sql/sql_select.cc:
  Merge
2005-12-12 13:29:48 +03:00
unknown
95cabee1dc Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/dev/mysql-5.0-14614
2005-12-12 13:16:06 +03:00
unknown
a21e8517ed Merge mysqldev@production.mysql.com:my/mysql-5.0-release
into  mysql.com:/usr/home/ram/work/mysql-5.0-release
2005-12-12 11:55:49 +04:00
unknown
a26e2c2009 Fixed BUG #14614: Replication of tables with trigger generates
error message if database is changed.


mysql-test/r/rpl_trigger.result:
  Fixed results for the added test cases
mysql-test/t/rpl_trigger.test:
  Added test cases for bug #14614
sql/sql_db.cc:
  Fixed bug #14614.
   Modified mysql_change_db(): The memory where db name resides
   is freed by a slave thread.
2005-12-11 17:06:36 +03:00
unknown
53f8fed437 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-2


sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2005-12-10 23:31:03 -08:00
unknown
cb06e0c125 Fix bug #15268 Unchecked null value caused server crash
cmp_item_sort_string::cmp() wasn't checking values_res variable for null.
Later called function was dereferenced it and crashed server.

Added null check to cmp_item_sort_string::cmp().



sql/item_cmpfunc.h:
  Fix bug#15268  Unchecked null value caused server crash
  Added null check to cmp_item_sort_string::cmp().
mysql-test/t/select.test:
  Test case for bug#15268 Unchecked null value caused server crash
mysql-test/r/select.result:
  Test case for bug#15268 Unchecked null value caused server crash
2005-12-09 23:01:52 +03:00
unknown
6abb702cf9 Fix for bug #15605: 5.0.17 test case 'mysqltest' failure.
mysql-test/t/mysqltest.test:
  Fix for bug #15605: 5.0.17 test case 'mysqltest' failure.
  - use 'test -s' instead of 'cat' to get assured 1 (cat returns >0 in case of errors)
2005-12-09 20:18:25 +04:00
unknown
171d9fcb38 Merge mysqldev@production.mysql.com:my/mysql-5.0-release
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-release
2005-12-09 15:32:07 +01:00
unknown
8ec8f2d745 trigger-grant.test, trigger-compat.test:
Removed --text from grep, not portable


mysql-test/t/trigger-compat.test:
  Removed --text from grep, not portable
mysql-test/t/trigger-grant.test:
  Removed --text from grep, not portable
2005-12-09 15:28:20 +01:00
unknown
70d3e45ba9 Attempt to fix rpl_relayrotate.test for host openbsd, fix suggested by Guilhem 2005-12-09 14:38:35 +01:00
unknown
16bca98267 Merge mysql.com:/home/alik/MySQL/devel/5.0-wl2984
into  mysql.com:/home/alik/MySQL/devel/5.1-wl2984-merge


mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/sp.result:
  Auto merged
BitKeeper/deleted/.del-type_newdecimal-big.result:
  Auto merged
BitKeeper/deleted/.del-type_newdecimal-big.test:
  Auto merged
mysql-test/t/show_check.test:
  Auto merged
sql/field.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_trigger.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/field.cc:
  Merge.
sql/sp_head.cc:
  Merge.
sql/sql_select.cc:
  Merge.
2005-12-09 15:14:19 +03:00
unknown
9c4985de77 A fix and a test case for Bug#15441 "Running SP causes Server
to Crash": the bug was that due to non-standard name
resolution precedence in stored procedures (See Bug#5967)
a stored procedure variable took precedence over a table column
when the arguments for VALUES() function were resolved.
The implementation of VALUES() function was not designed to work
with Item_splocal and crashed.
VALUES() function is non-standard. It can refer to, and
is meaningful for, table columns only. The patch disables SP 
variables as possible arguments of VALUES() function.


mysql-test/r/sp.result:
  Test results fixed (Bug#15441).
  Also make sure that the recently added test cases follow sp.test
  internal tests standard.
mysql-test/t/sp.test:
  Add a test case for Bug#15441 "Running SP causes Server to Crash".
sql/item.cc:
  Cleanup Item_insert_value::fix_fields().
sql/item.h:
  Add a comment for Item_insert_value.
sql/sql_yacc.yy:
  Actual fix for Bug#15441 "Running SP causes Server to Crash":
  we should not allow VALUES() function to reference SP variables.
2005-12-09 00:58:59 +03:00
unknown
ab597139a7 Fix calls to free_underlaid_joins() in INSERT, DELETE, and UPDATE
handling so that indexes are closed before trying to commit the
transaction. (Bug #15536)


mysql-test/r/bdb.result:
  Add new results
mysql-test/t/bdb.test:
  Add new test
sql/sql_delete.cc:
  Move call to free_underlaid_joins() to before ha_autocommit_or_rollback().
sql/sql_insert.cc:
  Move call to free_underlaid_joins() to before ha_autocommit_or_rollback().
sql/sql_update.cc:
  Move call to free_underlaid_joins() to before ha_autocommit_or_rollback().
2005-12-08 12:33:33 -08:00
unknown
51fd81acf4 Merge mysql.com:/Users/kent/mysql/bk/mysql-4.1
into mysql.com:/Users/kent/mysql/bk/mysql-5.0-release


mysql-test/t/symlink.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-12-08 16:15:27 +01:00
unknown
eea6e15d11 mysqld.cc:
Bug#14960, reverted code to make symdir work on Windows
symlink.test:
  Disabled test case on Windows


mysql-test/t/symlink.test:
  Disabled test case on Windows
sql/mysqld.cc:
  Bug#14960, reverted code to make symdir work on Windows
2005-12-08 16:13:53 +01:00
unknown
f8d6d13781 The innodb-5.0-ss52 snapshot changes were erroneously auto-merged
to 5.1. Undoing the merge.


mysql-test/r/innodb.result:
  Undoing erroneous auto-merge 5.0 -> 5.1
mysql-test/t/innodb.test:
  Undoing erroneous auto-merge 5.0 -> 5.1
sql/ha_innodb.cc:
  Undoing erroneous auto-merge 5.0 -> 5.1
sql/ha_innodb.h:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/btr/btr0sea.c:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/dict/dict0dict.c:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/dict/dict0load.c:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/include/buf0buf.h:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/include/dict0dict.h:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/include/dict0load.h:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/include/rem0cmp.h:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/rem/rem0cmp.c:
  Undoing erroneous auto-merge 5.0 -> 5.1
storage/innobase/row/row0mysql.c:
  Undoing erroneous auto-merge 5.0 -> 5.1
2005-12-08 15:00:18 +03:00
unknown
3b3034edc3 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-merges
2005-12-07 23:07:06 +03:00
unknown
06e9966396 Fix commit error: sp-vars.test should belong to mysql-test/t directory.
mysql-test/t/sp-vars.test:
  Rename: mysql-test/sp-vars.test -> mysql-test/t/sp-vars.test
2005-12-07 22:06:30 +03:00
unknown
4da61404a6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-merges


sql/sp.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
2005-12-07 20:31:10 +03:00
unknown
09e75b98a5 Updated sp.result.
mysql-test/r/sp.result:
  Updated result.
2005-12-07 16:58:11 +01:00
unknown
6b6eb1aba4 BUG#9535 Warning for "create table t as select uuid();"
- Set max_length of Item_func_uuid to max_length*system_charset_info->mbmaxlen
    Note! Item_func_uuid should be set to use 'ascii' charset when hex(), format(), md5()
etc will use 'ascii'
    - Comitting again, the old patch seems to have been lost.


mysql-test/r/func_misc.result:
  Test results updated
mysql-test/t/func_misc.test:
  Test case
sql/item_strfunc.h:
  Multiply max_length of Item_func_uuid with system_charset_info->mbmaxlen
2005-12-07 15:45:31 +01:00
unknown
943edab9a5 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alik/Documents/AllProgs/MySQL/devel/5.0-sp-vars-merge-2


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/sp_head.cc:
  Merge.
2005-12-07 17:17:42 +03:00
unknown
2dbeedd504 Merge mysql.com:/usr/home/pem/bug14834/mysql-5.0
into  mysql.com:/usr/home/pem/mysql-5.1-new


BitKeeper/triggers/post-commit:
  Merge.
configure.in:
  Manual merge.
mysql-test/r/sp.result:
  Merge.
mysql-test/r/view.result:
  Merge.
sql/share/errmsg.txt:
  Manual merge.
sql/sp_head.cc:
  Merge.
sql/sql_parse.cc:
  Merge.
sql/sql_table.cc:
  Merge.
sql/sql_yacc.yy:
  Merge.
2005-12-07 15:17:18 +01:00
unknown
6b2f13098a Patch for WL#2894: Make stored routine variables work
according to the standard.

The idea is to use Field-classes to implement stored routines
variables. Also, we should provide facade to Item-hierarchy
by Item_field class (it is necessary, since SRVs take part
in expressions).

The patch fixes the following bugs:
  - BUG#8702: Stored Procedures: No Error/Warning shown for inappropriate data 
    type matching; 
 
  - BUG#8768: Functions: For any unsigned data type, -ve values can be passed 
    and returned; 
 
  - BUG#8769: Functions: For Int datatypes, out of range values can be passed 
    and returned; 
 
  - BUG#9078: STORED PROCDURE: Decimal digits are not displayed when we use 
    DECIMAL datatype; 
 
  - BUG#9572: Stored procedures: variable type declarations ignored; 
 
  - BUG#12903: upper function does not work inside a function; 
 
  - BUG#13705: parameters to stored procedures are not verified; 
 
  - BUG#13808: ENUM type stored procedure parameter accepts non-enumerated
    data; 
 
  - BUG#13909: Varchar Stored Procedure Parameter always BINARY string (ignores 
    CHARACTER SET); 
 
  - BUG#14161: Stored procedure cannot retrieve bigint unsigned;

  - BUG#14188: BINARY variables have no 0x00 padding;

  - BUG#15148: Stored procedure variables accept non-scalar values;


mysql-test/r/ctype_ujis.result:
  Explicitly specify correct charset.
mysql-test/r/schema.result:
  Drop our test database to not affect this test if some test
  left it cause of failure.
mysql-test/r/show_check.result:
  Drop our test database to not affect this test if some test
  left it cause of failure.
mysql-test/r/skip_name_resolve.result:
  Ignore columns with unpredictable values.
mysql-test/r/sp-big.result:
  Add cleanup statement.
mysql-test/r/sp-dynamic.result:
  Add cleanup statements.
mysql-test/r/sp.result:
  Update result file.
mysql-test/r/sum_distinct-big.result:
  Update result file.
mysql-test/r/type_newdecimal-big.result:
  Update result file.
mysql-test/t/ctype_ujis.test:
  Explicitly specify correct charset.
mysql-test/t/schema.test:
  Drop our test database to not affect this test if some test
  left it cause of failure.
mysql-test/t/show_check.test:
  Drop our test database to not affect this test if some test
  left it cause of failure.
mysql-test/t/skip_name_resolve.test:
  Ignore columns with unpredictable values.
mysql-test/t/sp-big.test:
  Add cleanup statement.
mysql-test/t/sp-dynamic.test:
  Add cleanup statements.
mysql-test/t/sp.test:
  Non-scalar values prohibited for assignment to SP-vars;
  polishing.
mysql-test/t/type_newdecimal-big.test:
  Update type specification so that the variables
  can contain the large values used in the test.
sql/field.cc:
  Extract create_field::init() to initialize an existing
  instance of create_field from new_create_field().
sql/field.h:
  Extract create_field::init() to initialize an existing
  instance of create_field from new_create_field().
sql/item.cc:
  - Introduce a new class: Item_sp_variable -- a base class
    of stored-routine-variables classes;
  - Introduce Item_case_expr -- an Item, which is used to access
    to the expression of CASE statement;
sql/item.h:
  - Introduce a new class: Item_sp_variable -- a base class
    of stored-routine-variables classes;
  - Introduce Item_case_expr -- an Item, which is used to access
    to the expression of CASE statement;
sql/item_func.cc:
  Pass the Field (instead of Item) for the return value of
  a function to the function execution routine.
sql/item_func.h:
  Pass the Field (instead of Item) for the return value of
  a function to the function execution routine.
sql/mysql_priv.h:
  Move create_virtual_tmp_table() out of sql_select.h.
sql/sp.cc:
  Use create_result_field() instead of make_field().
sql/sp_head.cc:
  - Add a function to map enum_field_types to Item::Type;
  - Add sp_instr_push_case_expr instruction -- an instruction
    to push CASE expression into the active running context;
  - Add sp_instr_pop_case_expr instruction -- an instruction
    to pop CASE expression from the active running context;
  - Adapt the SP-execution code to using Fields instead of Items
    for SP-vars;
  - Use create_field structure for field description instead of
    a set of members.
sql/sp_head.h:
  - Add a function to map enum_field_types to Item::Type;
  - Add sp_instr_push_case_expr instruction -- an instruction
    to push CASE expression into the active running context;
  - Add sp_instr_pop_case_expr instruction -- an instruction
    to pop CASE expression from the active running context;
  - Adapt the SP-execution code to using Fields instead of Items
    for SP-vars;
  - Use create_field structure for field description instead of
    a set of members.
sql/sp_pcontext.cc:
  - Change rules to assign an index of SP-variable: use
    transparent index;
  - Add an operation to retrieve a list of defined SP-vars
    from the processing context recursively.
sql/sp_pcontext.h:
  - Change rules to assign an index of SP-variable: use
    transparent index;
  - Add an operation to retrieve a list of defined SP-vars
    from the processing context recursively.
sql/sp_rcontext.cc:
  - Change rules to assign an index of SP-variable: use
    transparent index;
  - Use a tmp virtual table to store SP-vars instead of Items;
  - Provide operations to work with CASE expresion.
sql/sp_rcontext.h:
  - Change rules to assign an index of SP-variable: use
    transparent index;
  - Use a tmp virtual table to store SP-vars instead of Items;
  - Provide operations to work with CASE expresion.
sql/sql_class.cc:
  - Reflect Item_splocal ctor changes;
  - Item_splocal::get_offset() has been renamed to get_var_idx().
sql/sql_class.h:
  Polishing.
sql/sql_parse.cc:
  Extract create_field::init() to initialize an existing
  instance of create_field from new_create_field().
sql/sql_select.cc:
  Take care of BLOB columns in create_virtual_tmp_table().
sql/sql_select.h:
  Move create_virtual_tmp_table() out of sql_select.h.
sql/sql_trigger.cc:
  Use boolean constants for boolean type instead of numerical ones.
sql/sql_yacc.yy:
  Provide an instance of create_field for each SP-var.
mysql-test/include/sp-vars.inc:
  The definitions of common-procedures, which are created
  under different circumstances.
mysql-test/r/sp-vars.result:
  Result file for the SP-vars test.
mysql-test/sp-vars.test:
  A new test for checking SP-vars functionality.
2005-12-07 17:01:17 +03:00
unknown
83142adf50 Fixed sp-error.test result after merging fix for bug #11555 "Stored procedures:
current SP tables locking make impossible view security" with main tree.


mysql-test/r/sp-error.result:
  Fixed test result after merging fix for bug #11555 "Stored procedures: current
  SP tables locking make impossible view security" with main tree.
2005-12-07 16:55:16 +03:00