1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-28 13:01:41 +03:00

10023 Commits

Author SHA1 Message Date
unknown
cb5d6dbf51 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mysql.com:/home/dlenev/mysql-5.0-bg12472


sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/sp.result:
  Manual merge.
mysql-test/t/sp.test:
  Manual merge.
2006-05-09 16:48:23 +04:00
unknown
4f15a043e2 Fix for bugs#12472/#15137 'CREATE TABLE ... SELECT ... which explicitly
or implicitly uses stored function gives "Table not locked" error'

CREATE TABLE ... SELECT ... statement which was explicitly or implicitly
(through view) using stored function gave "Table not locked" error.

The actual bug resides in the current locking scheme of CREATE TABLE SELECT
code, which first opens and locks tables of the SELECT statement itself,
and then, having SELECT tables locked, creates the .FRM, opens the .FRM and
acquires lock on it. This scheme opens a possibility for a deadlock, which
was present and ignored since version 3.23 or earlier. This scheme also
conflicts with the invariant of the prelocking algorithm -- no table can
be open and locked while there are tables locked in prelocked mode.

The patch makes an exception for this invariant when doing CREATE TABLE ...
SELECT, thus extending the possibility of a deadlock to the prelocked mode.
We can't supply a better fix in 5.0.


mysql-test/r/sp.result:
  Added tests for bugs#12472/#15137 'CREATE TABLE ... SELECT ... which
  explicitly or implicitly uses stored function gives "Table not locked" error'
mysql-test/t/sp.test:
  Added tests for bugs#12472/#15137 'CREATE TABLE ... SELECT ... which
  explicitly or implicitly uses stored function gives "Table not locked" error'
sql/mysql_priv.h:
  Added flag which can be passed to open_table() routine in order to ignore
  set of locked tables and prelocked mode.
  We don't need declaration of create_table_from_items() any longer as it was
  moved into sql_insert.cc and made static.
sql/sql_base.cc:
  open_table():
    Added flag which allows open table ignoring set of locked tables and
    prelocked mode.
sql/sql_insert.cc:
  Moved create_table_from_items() from sql_table.cc to sql_insert.cc as it was
  not used outside of sql_insert.cc and contains code which is specific for
  CREATE TABLE ... SELECT.
  Also now when we are executing CREATE TABLE ... SELECT ... statement which
  SELECT part requires execution in prelocked mode we ignore set of locked
  tables in order to get access to the table we just have created.
  We probably don't want to do this if we are under real LOCK TABLES since
  it will widen window for deadlock too much.
sql/sql_table.cc:
  Moved create_table_from_items() routine into sql_insert.cc, since it was not
  used anywhere outside of this file and contains logic which is specific for
  CREATE TABLE ... SELECT statement.
2006-05-09 16:39:11 +04:00
unknown
9f606932f7 Fix race condition of concurrent RENAME and SHOW TABLES which caused
random test failures.


mysql-test/t/rename.test:
  Fix race condition and add cleanup code.
2006-05-06 09:41:24 +04:00
unknown
e5d6108430 Merge mysql.com:/home/tomash/src/mysql_ab/mysql-5.0
into  mysql.com:/home/tomash/src/mysql_ab/mysql-5.0-bug6951
2006-05-04 15:09:40 +04:00
unknown
325151779d Merge mysql.com:/home/tomash/src/mysql_ab/mysql-5.0
into  mysql.com:/home/tomash/src/mysql_ab/mysql-5.0-bug6951


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
2006-05-04 15:05:16 +04:00
unknown
bf8dac3b19 Bug#15463: EXPLAIN SELECT..INTO hangs the client (QB, command line)
There were two distict bugs: parse error was returned for valid
statement and that error wasn't reported to the client.

The fix ensures that EXPLAIN SELECT..INTO is accepted by parser and any
other parse error will be reported to the client.


mysql-test/r/explain.result:
  Add result for bug#15463.
mysql-test/t/explain.test:
  Add test case for bug#15463.
sql/sql_parse.cc:
  Assert that if parsing error has occured then apropriate error message
  has been pushed into error stack.
sql/sql_yacc.yy:
  If there is no lex->result in select_var_ident rule, then we have
  to be in DESCRIBE mode.
2006-05-03 18:02:43 +04:00
unknown
853f5413f6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/mysql-5.0-bg11081
2006-05-02 17:07:23 +04:00
unknown
4d1cd02ef6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  zippy.(none):/home/cmiller/work/mysql/mysql-5.0__bug17667


mysys/Makefile.am:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-05-01 22:50:36 -04:00
unknown
3010890e58 SECURITY FIX
Bug#17667: An attacker has the opportunity to bypass query logging.

This adds a new, local-only printf format specifier to our *printf functions
that allows us to print known-size buffers that must not be interpreted as 
NUL-terminated "strings."

It uses this format-specifier to print to the log, thus fixing this 
problem.


include/my_sys.h:
  Add prototype for my_memmem() .
mysys/Makefile.am:
  Add reference to new file, my_memmem.c
mysys/mf_iocache2.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
  
  Also, simplify the code a bit.
  
  TODO:  This code should be unified with the strings/my_vnsprintf.c code in 
  the future.
sql/sql_parse.cc:
  The query is not a C-string, but is a sized buffer, containing any character 
  at all, which may include NUL characters.
strings/my_vsnprintf.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
tests/Makefile.am:
  We may need some of our local functions.
tests/mysql_client_test.c:
  Add a "%.1234b" and "%.*b" percent-code.  It takes a width, just like "%s", 
  but unlike the string-indicator, it requires the width and doesn't stop printing
  at NUL characters.
mysql-test/t/mysql_client_test.opt:
  New BitKeeper file ``mysql-test/t/mysql_client_test.opt''
  
  Add '--log' server parameter.
mysys/my_memmem.c:
  New BitKeeper file ``mysys/my_memmem.c''
  
  Implement memmem, a black-box work-alike of the GNU memmem(), which functions
  like strstr() but for arbitrary blocks of memory.
2006-05-01 22:10:50 -04:00
unknown
a223550fa1 Merge zippy.(none):/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.(none):/home/cmiller/work/mysql/merge/mysql-5.0


mysql-test/r/null.result:
  Auto merged
mysql-test/t/null.test:
  Auto merged
sql/sql_table.cc:
  Merge.
2006-05-01 09:46:00 -04:00
unknown
dd68976a24 BUG#19145: mysqld crashes if you set the default value of an enum field to NULL
Now test for NULLness the pointers returned from objects created from the
default value. Pushing patch on behalf of cmiller.


mysql-test/r/null.result:
  Add test case
mysql-test/t/null.test:
  Add test case
sql/sql_table.cc:
  No longer blindly dereference pointer of the string representation of the
  values, where "NULL" is NUL. Raise INVALID DEFAULT error messages where
  appropriate.
  
  Note that the -O1 optimization flag made debugging this extremely tricky, with
  misleading results, and that removing it from the Makefile during debugging can
  be invaluable.
2006-04-28 12:15:29 -04:00
unknown
74566d84b0 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/users/msvensson/mysql-5.0
2006-04-28 16:05:05 +02:00
unknown
ef7ec424e6 Merge lsmy3.wdf.sap.corp:/data/users/gkodinov/mysql-4.1-B18492
into  lsmy3.wdf.sap.corp:/data/users/gkodinov/mysql-5.0-B18492


mysql-test/r/subselect.result:
  merged
sql/item.cc:
  merged
sql/item.h:
  merged
sql/item_subselect.cc:
  merged
2006-04-28 12:06:54 +02:00
unknown
3a0d0b4ce5 BUG#18492: mysqld reports ER_ILLEGAL_REFERENCE in --ps-protocol
In the code that converts IN predicates to EXISTS predicates it is changing
the select list elements to constant 1. Example :
SELECT ... FROM ...  WHERE a IN (SELECT c FROM ...)
is transformed to :
SELECT ... FROM ... WHERE EXISTS (SELECT 1 FROM ...  HAVING a = c)
However there can be no FROM clause in the IN subquery and it may not be
a simple select : SELECT ... FROM ... WHERE a IN (SELECT f(..) AS
c UNION SELECT ...) This query is transformed to : SELECT ... FROM ...
WHERE EXISTS (SELECT 1 FROM (SELECT f(..) AS c UNION SELECT ...)
x HAVING a = c) In the above query c in the HAVING clause is made to be
an Item_null_helper (a subclass of Item_ref) pointing to the real
Item_field (which is not referenced anywhere else in the query anymore).
This is done because Item_ref_null_helper collects information whether
there are NULL values in the result.  This is OK for directly executed
statements, because the Item_field pointed by the Item_null_helper is
already fixed when the transformation is done.  But when executed as
a prepared statement all the Item instances are "un-fixed" before the
recompilation of the prepared statement. So when the Item_null_helper
gets fixed it discovers that the Item_field it points to is not fixed
and issues an error.  The remedy is to keep the original select list
references when there are no tables in the FROM clause. So the above
becomes : SELECT ... FROM ...  WHERE EXISTS (SELECT c FROM (SELECT f(..)
AS c UNION SELECT ...) x HAVING a = c) In this way c is referenced
directly in the select list as well as by reference in the HAVING
clause. So it gets correctly fixed even with prepared statements.  And
since the Item_null_helper subclass of Item_ref_null_helper is not used
anywhere else it's taken out.


mysql-test/r/ps_11bugs.result:
  Test case for the bug
mysql-test/r/subselect.result:
  Explain updated because of the tranformation
mysql-test/t/ps_11bugs.test:
  Testcase for the bug
sql/item.cc:
  Taking out Item_null_helper as it's no longer needed
sql/item.h:
  Taking out Item_null_helper as it's no longer needed
sql/item_subselect.cc:
  The described change to the IN->EXISTS transformation
2006-04-28 11:23:31 +02:00
unknown
e4b9795cc6 Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-04-28 08:30:49 +02:00
unknown
dc101c2cd0 Merge jwinstead@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/nfstmp1/jwinstead/mysql-5.0-clean


mysql-test/mysql-test-run.pl:
  Auto merged
2006-04-28 00:33:47 +02:00
unknown
c357525e42 Disable udf.test 2006-04-27 22:30:14 +02:00
unknown
185c89c419 Return empty string if file does not exist
Set LD_LIBRARY_PATH and UDF_EXAMPLE_LIB from $lib_udf_example


mysql-test/lib/mtr_misc.pl:
  Return empty string if file does not exist
mysql-test/mysql-test-run.pl:
  Set LD_LIBRARY_PATH and UDF_EXAMPLE_LIB from $lib_udf_example variable
2006-04-27 21:26:24 +02:00
unknown
d985ed4ca9 Bug #19393: Federated tests fail on Windows under pushbuild
Supplying --skip-rpl to mysql-test-run.pl would always disable the
  slaves, but those slaves may still be needed for the federated tests.
  Now we only disable the slaves when they are not used by any of the
  tests.


mysql-test/mysql-test-run.pl:
  Decide whether to set up and start slave databases based entirely on
  which tests are used, and don't allow --skip-rpl to ruin the party,
  since other tests than replication rely on the slaves (namely federated).
2006-04-27 10:53:19 -07:00
unknown
8d1230c6ad Merge shellback.(none):/home/msvensson/mysql/mysql-5.0
into  shellback.(none):/home/msvensson/mysql/mysql-5.0-maint


client/mysql.cc:
  Auto merged
configure.in:
  Auto merged
extra/yassl/include/openssl/rsa.h:
  Auto merged
extra/yassl/include/yassl_int.hpp:
  Auto merged
extra/yassl/include/yassl_types.hpp:
  Auto merged
extra/yassl/src/template_instnt.cpp:
  Auto merged
extra/yassl/taocrypt/include/integer.hpp:
  Auto merged
extra/yassl/taocrypt/include/misc.hpp:
  Auto merged
extra/yassl/taocrypt/src/algebra.cpp:
  Auto merged
extra/yassl/taocrypt/src/template_instnt.cpp:
  Auto merged
mysql-test/t/disabled.def:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
extra/yassl/include/openssl/ssl.h:
  Manual merge
extra/yassl/src/handshake.cpp:
  Manual merge
extra/yassl/src/yassl_int.cpp:
  Manual merge
extra/yassl/taocrypt/include/runtime.hpp:
  Manual merge
extra/yassl/taocrypt/src/integer.cpp:
  Manual merge
mysql-test/mysql-test-run.pl:
  Manual merge
mysql-test/r/trigger.result:
  Manual merge
mysql-test/t/trigger.test:
  Manual merge
2006-04-27 17:35:29 +02:00
unknown
36261a96fb Merge bk-internal:/home/bk/mysql-5.0
into  neptunus.(none):/home/msvensson/mysql/mysql-5.0


mysql-test/mysql-test-run.pl:
  Auto merged
sql/sql_parse.cc:
  Auto merged
mysql-test/r/trigger.result:
  Manual merge
mysql-test/t/trigger.test:
  Manual merge
2006-04-27 17:30:56 +02:00
unknown
1bdc15e100 Add test to mysql-test-run.pl to see if the udf_example.so is availble. Set envioronment variable UDF_EXAMPLE_LIB if it is.
Then check in have_udf if that variable is set. Finally use tahe variable when loading the shared library. 


mysql-test/include/have_udf.inc:
  Add check if udf_example.so(or similar) is available
mysql-test/lib/mtr_misc.pl:
  Add funcion "mtr_file_exist" to search for files
mysql-test/mysql-test-run.pl:
  Add checks to find the udf_example.so library
mysql-test/r/udf.result:
  Update result
mysql-test/t/disabled.def:
  Remove udf.test from disabled tests
mysql-test/t/udf.test:
  Use variable UDF_EXAMPLE_LIB when looking for shared library to load
mysql-test/r/have_udf_example.require:
  New BitKeeper file ``mysql-test/r/have_udf_example.require''
2006-04-27 16:32:40 +02:00
unknown
8b553a3f6b Fix bug in ndbcluster.sh on Solaris (now that line is the same as in 5.1)
mysql-test/ndb/ndbcluster.sh:
  redirect to /dev/null to avoid grep -q
2006-04-26 20:50:27 -07:00
unknown
47ce2876b5 Remove obsolete test
mysql-test/r/user_var.result:
  Update results
mysql-test/t/user_var.test:
  Remove unnecessary test
2006-04-26 17:09:41 -07:00
unknown
c09e213b61 Merge bk-internal:/home/bk/mysql-5.0
into  mysql.com:/home/jimw/my/mysql-5.0-clean
2006-04-26 15:29:32 -07:00
unknown
8d52b8a6b7 Merge mysql.com:/home/jimw/my/mysql-5.0-12792
into  mysql.com:/home/jimw/my/mysql-5.0-clean


sql/item_func.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
mysql-test/r/variables.result:
  Resolve conflict
mysql-test/t/variables.test:
  Resolve conflict
2006-04-26 11:39:48 -07:00
unknown
2d91c31b3d Merge mysql.com:/home/jimw/my/mysql-5.0-18617
into  mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/mysql-test-run.pl:
  Resolve conflict
2006-04-26 11:37:53 -07:00
unknown
2d85fd8083 Merge
sql/item.cc:
  Auto merged
sql/share/errmsg.txt:
  SCCS merged
2006-04-26 22:35:40 +04:00
unknown
19cae2e699 Merge mysql.com:/home/jimw/my/mysql-5.0-16195
into  mysql.com:/home/jimw/my/mysql-5.0-clean


sql/set_var.cc:
  Auto merged
mysql-test/r/variables.result:
  Resolve conflict
mysql-test/t/variables.test:
  Resolve conflict
2006-04-26 11:34:45 -07:00
unknown
7ab5d5a75e Merge mysql.com:/home/jimw/my/mysql-5.0-19083
into  mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/ndb/ndbcluster.sh:
  Auto merged
2006-04-26 11:32:53 -07:00
unknown
130c26a02a Bug #17849: sql_big_selects not shown in SHOW VARIABLES output
This patch simply adds sql_big_selects to the list of variables
  output by SHOW VARIABLES.


mysql-test/r/variables.result:
  Update results
mysql-test/t/variables.test:
  Add new regression test (and make end-of-tests marker add output)
sql/set_var.cc:
  Add sql_big_selects to SHOW VARIABLES output
2006-04-26 09:21:53 -07:00
unknown
101e3703d9 fixed error message text 2006-04-26 17:57:41 +03:00
unknown
2f4f68be53 Change sleep_until_file_created to sleep 100 millisecond instead of sleeping 1 seconds between each iteration. 2006-04-26 13:22:18 +02:00
unknown
115100c743 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0-ss492
2006-04-26 12:45:29 +04:00
unknown
c2e1ba6405 Merge mysql.com:/home/alexi/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0-ss492
2006-04-26 12:43:38 +04:00
unknown
966658fa48 Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-4.1
into  mysql.com:/home/alexi/innodb/mysql-4.1-innodb
2006-04-26 12:39:47 +04:00
unknown
0fc093fa19 Merge mysql.com:/home/alexi/innodb/mysql-4.1-innodb-work
into  mysql.com:/home/alexi/innodb/mysql-5.0-ss492-work
2006-04-26 11:23:43 +04:00
unknown
c2e6c898ac Make innodb_mysql produce a non-empty output.
mysql-test/r/innodb_mysql.result:
  Fix result.
2006-04-26 11:15:09 +04:00
unknown
47a0479811 Merge mysql.com:/home/alexi/innodb/mysql-4.1-innodb-work
into  mysql.com:/home/alexi/innodb/mysql-5.0-ss492-work


mysql-test/t/innodb.test:
  Auto merged
2006-04-26 09:56:06 +04:00
unknown
a4c62dbb8a Files innodb.[test|result] are to be used by Innobase only.
Use files innodb_mysql.[test|result] instead.


mysql-test/t/innodb.test:
  This file is to be used by Innobase only.
mysql-test/r/innodb_mysql.result:
  New BitKeeper file ``mysql-test/r/innodb_mysql.result''
   Use this file instead of innodb.result.
mysql-test/t/innodb_mysql.test:
  New BitKeeper file ``mysql-test/t/innodb_mysql.test''
   Use this file instead of innodb.test.
2006-04-26 09:51:57 +04:00
unknown
7c018c39bb Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/psergey/mysql-5.0-bug15827-r2
2006-04-26 00:30:54 +04:00
unknown
15e00f1f3d BUG#15872: Don't run the range analyzer on "t1.keypart NOT IN (const1, ..., )", as that consumes
too much memory. Instead, either create the equvalent SEL_TREE manually, or create only two ranges that
strictly include the area to scan
(Note: just to re-iterate: increasing NOT_IN_IGNORE_THRESHOLD will make optimization run slower for big 
IN-lists, but the server will not run out of memory. O(N^2) memory use has been eliminated)


mysql-test/r/func_in.result:
  Testcase for BUG#15872
mysql-test/t/func_in.test:
  Testcase for BUG#15872
sql/item.cc:
  BUG#15872: Added Item_decimal::set_decimal_value()
sql/item.h:
  UG#15872: Added Item_decimal::set_decimal_value()
sql/item_cmpfunc.h:
  BUG#15872: Added in_vector::create_item(), in_vector::value_to_item() and their implementations in concrete
  classes.
sql/opt_range.cc:
  BUG#15872: Don't run the range analyzer on "t1.keypart NOT IN (const1, ..., )", as that 
  consumes too much memory. Instead, either 
   A) create the equivalent SEL_TREE manually, making use of the fact that item_not_in->array
      has an ordered IN-list, or
   B) create only two ranges: (-inf|NULL) < X < min_value_from_in_list,  max_value_from_in_list < X
  (Choose #B if the IN-list has > 10K elements)
2006-04-25 23:33:31 +04:00
unknown
8f38fc670b Merge epotemkin@lsmy3:/data/users/bk/mysql-5.0-opt-bugs
into moonbone.local:/work/18739-bug-5.0-mysql
2006-04-25 17:45:31 +04:00
unknown
f28b9a3423 A fix and a test case for Bug#19308 "REPAIR/OPTIMIZE/ANALYZE
supported in SP but not in PS": just enable them in prepared
statements, the supporting functionality was implemented when
they were enabled in stored procedures.


mysql-test/r/ps.result:
  Bug#19308: test results fixed.
mysql-test/r/ps_1general.result:
  Adjust existing test cases (ANALYZE/OPTIMIZE/REPAIR are now
  allowed in prepared statements.
mysql-test/r/sp-dynamic.result:
  Adjust existing test cases (ANALYZE/OPTIMIZE/REPAIR are now
  allowed in prepared statements.
mysql-test/t/ps.test:
  Add a test case for Bug#19308 "REPAIR/OPTIMIZE/ANALYZE supported 
  in SP but not in PS"
mysql-test/t/ps_1general.test:
  Adjust existing test cases (ANALYZE/OPTIMIZE/REPAIR are now
  allowed in prepared statements.
sql/sql_prepare.cc:
  Enable ANALYZE, OPTIMIZE, REPAIR in prepared statements.
2006-04-25 04:27:23 +04:00
unknown
413256c814 Merge mysql.com:/usr/local/mysql/mysql-4.1
into  mysql.com:/usr/local/mysql/mysql-5.0-mtr-fix


mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/t/case.test:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
mysql-test/r/case.result:
  SCCS merged
2006-04-24 23:51:47 +02:00
unknown
fefc045274 Revert use of octal numbers for chmod 2006-04-24 21:42:44 +02:00
unknown
1dad067fda having.test:
After merge fix for bug#18739


mysql-test/t/having.test:
  After merge fix for bug#18739
2006-04-24 20:59:23 +04:00
unknown
ef82f93dcc Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mysql.com:/home/dlenev/mysql-5.0-bg11081
2006-04-24 19:00:37 +04:00
unknown
dfbf652165 Fix for bug#11081 "Using a CONVERT_TZ function in a stored function or
trigger fails".

In cases when CONVERT_TZ() function was used in trigger or stored function
(or in stored procedure which was called from trigger or stored function)
error about non existing '.' table was reported.

Statements that use CONVERT_TZ() function should have time zone related
tables in their table list. tz_init_table_list() function which is used
to produce part of table list containing those tables didn't set
TABLE_LIST::db_length/table_name_length members properly. As result time
zone tables needed for CONVERT_TZ() function were incorrectly handled by
prelocking algorithm and "Table '.' doesn't exist' error was emitted.
This fix changes tz_init_table_list() in such way that it properly inits
TABLE_LIST::table_name_length/db_length members and thus produces table list
which can be handled by prelocking algorithm correctly.


mysql-test/r/timezone2.result:
  Added test for bug #11081 "Using a CONVERT_TZ function in a stored function
  or trigger fails".
mysql-test/t/timezone2.test:
  Added test for bug #11081 "Using a CONVERT_TZ function in a stored function
  or trigger fails".
sql/tztime.cc:
  Now tz_init_table_list() inits table_name_length and db_length members in
  TABLE_LIST objects, so table lists produced with its help can be handled 
  by prelocking algorithm properly.
  
  Also two clean-ups are included:
  - Now we use MY_TZ_TABLES_COUNT instead of magical number 4 in places where
    it is appropriate.
  - TZ_NAMES_ENTRY structure was converted to Tz_names_entry class in order 
    to emphasize its non-POD nature.
sql/tztime.h:
  Added MY_TZ_TABLES_COUNT constant to be used as number of time zone related
  tables which are needed for dynamical loading of time zone descriptions.
2006-04-24 18:57:00 +04:00
unknown
ccee4036c2 Manually merged
sql/item.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-04-24 17:52:15 +04:00