1
0
mirror of https://github.com/MariaDB/server.git synced 2025-12-07 17:42:39 +03:00
Commit Graph

13465 Commits

Author SHA1 Message Date
unknown
33e63d3b22 Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg20670-2
into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg20670


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
sql/sql_trigger.cc:
  Auto merged
sql/key.cc:
  Using 5.1 version of the code.
sql/mysql_priv.h:
  Using 5.1 version of the code.
sql/opt_range.cc:
  Using 5.1 version of the code.
sql/opt_range.h:
  Using 5.1 version of the code.
sql/sql_update.cc:
  Using 5.1 version of the code.
sql/sql_trigger.h:
  Manual merge.
2006-09-29 18:26:30 +04:00
unknown
0e4dd85d67 Fix for bug#20670 "UPDATE using key and invoking trigger that modifies
this key does not stop" (version for 5.0 only).

UPDATE statement which WHERE clause used key and which invoked trigger
that modified field in this key worked indefinetely.

This problem occured because in cases when UPDATE statement was
executed in update-on-the-fly mode (in which row is updated right
during evaluation of select for WHERE clause) the new version of
the row became visible to select representing WHERE clause and was
updated again and again.
We already solve this problem for UPDATE statements which does not
invoke triggers by detecting the fact that we are going to update
field in key used for scanning and performing update in two steps,
during the first step we gather information about the rows to be
updated and then doing actual updates. We also do this for
MULTI-UPDATE and in its case we even detect situation when such
fields are updated in triggers (actually we simply assume that
we always update fields used in key if we have before update
trigger).

The fix simply extends this check which is done in check_if_key_used()/
QUICK_SELECT_I::check_if_keys_used() routine/method in such way that
it also detects cases when field used in key is updated in trigger.
As nice side-effect we have more precise and thus more optimal
perfomance-wise check for the MULTI-UPDATE.
Also check_if_key_used()/QUICK_SELECT_I::check_if_keys_used() were
renamed to is_key_used()/QUICK_SELECT_I::is_keys_used() in order to
better reflect that boolean predicate.

Note that this check is implemented in much more elegant way in 5.1 


mysql-test/r/trigger.result:
  Added test case for bug#20670 "UPDATE using key and invoking trigger that
  modifies this key does not stop".
mysql-test/t/trigger.test:
  Added test case for bug#20670 "UPDATE using key and invoking trigger that
  modifies this key does not stop".
sql/key.cc:
  Renamed check_if_key_used() to is_key_used(). Also this routine checks if
  key uses field which can be updated by before update trigger defined on the
  table. As result we avoid using update-on-the-fly method in cases when trigger
  updates part of key which is used by select which filters rows to be updated
  and thus avoid infinite updates. By doing such check here we cover both UPDATE
  and MULTI-UPDATE cases.
sql/mysql_priv.h:
  Renamed check_if_key_used() to is_key_used().
sql/opt_range.cc:
  Renamed check_if_key_used()/QUICK_SELECT_I::check_if_keys_used() to
  is_key_used()/QUICK_SELECT_I::is_keys_used().
sql/opt_range.h:
  Renamed QUICK_SELECT_I::check_if_keys_used() method to is_keys_used(),
  also updated comment describing it to reflect its extended semantics
  (this change was caused by change in check_if_key_used()/is_key_used()
   routine semantics).
sql/sql_trigger.cc:
  Introduced Table_triggers_list::is_updated_in_before_update_triggers()
  method which is needed for checking if field of subject table can be
  changed in before update trigger.
sql/sql_trigger.h:
  Table_triggers_list:
    Removed has_before_update_triggers() method which is not used any longer.
    Added declaration of is_updated_in_before_update_triggers() which is
    needed for checking if field of subject table can be changed by before
    update trigger.
sql/sql_update.cc:
  safe_update_on_fly():
    check_if_key_used() routine and check_if_keys_used() method were
    renamed to is_key_used()/is_keys_used(). 
    Now cases when trigger updates fields which are part of key used for
    filtering rows for update are caught directly in is_key_used().
    This also allows to cover both UPDATE and MULTI-UPDATE cases.
2006-09-21 11:35:38 +04:00
unknown
f5e8d19f75 Fix im_instance_conf.imtest failure on AIX and HPUX.
The problem was in dummy grep on AIX and HPUX.

The fix is to use more portable patterns.

The patch is only for test suite
(i.e. does not touch server codebase).


mysql-test/r/im_instance_conf.result:
  Updated result file.
mysql-test/t/disabled.def:
  Fix typo.
mysql-test/t/im_instance_conf.imtest:
  Make grep-pattern aix/hpux-compatible.
mysql-test/t/im_options.imtest:
  Make grep-pattern aix/hpux-compatible.
mysql-test/t/im_options-im.opt:
  Speedup IM-tests.
2006-08-31 18:48:50 +04:00
unknown
0ec1397d03 Post-merge fixes.
mysql-test/lib/mtr_process.pl:
  Apply manually the merge from 5.0
mysql-test/mysql-test-run.pl:
  Apply manually the merge from 5.0
mysql-test/r/grant.result:
  A post-merge fix.
mysql-test/r/im_cmd_line.result:
  A post-merge fix.
mysql-test/r/im_instance_conf.result:
  A post-merge fix.
mysql-test/r/sp.result:
  A post-merge fix.
mysql-test/t/grant.test:
  A post-merge fix.
mysql-test/t/im_cmd_line.imtest:
  A post-merge fix.
mysql-test/t/im_instance_conf.imtest:
  A post-merge fix.
sql/field.cc:
  A post-merge fix.
sql/item_cmpfunc.cc:
  A post-merge fix.
sql/sp_head.cc:
  A post-merge fix.
sql/sp_head.h:
  A post-merge fix.
2006-08-30 23:09:47 +04:00
unknown
5fab3969af Merge bodhi.local:/opt/local/work/mysql-5.0-runtime-safemerge
into  bodhi.local:/opt/local/work/mysql-5.1-runtime-merge


BitKeeper/deleted/.del-im_check_os.inc:
  Auto merged
BitKeeper/deleted/.del-im_options_set.imtest~b53d9d60e5684833:
  Auto merged
BitKeeper/deleted/.del-im_options_set.result~59278f56be61d921:
  Auto merged
BitKeeper/deleted/.del-im_options_unset.imtest~768eb186b51d0048:
  Auto merged
configure.in:
  Auto merged
BitKeeper/deleted/.del-im_options_unset.result~20a4790cd3c70a4f:
  Auto merged
include/mysql_com.h:
  Auto merged
mysql-test/lib/mtr_io.pl:
  Auto merged
mysql-test/r/im_daemon_life_cycle.result:
  Auto merged
mysql-test/r/im_life_cycle.result:
  Auto merged
mysql-test/r/im_utils.result:
  Auto merged
mysql-test/r/sp-error.result:
  Auto merged
mysql-test/r/trigger.result:
  Auto merged
mysql-test/r/type_varchar.result:
  Auto merged
mysql-test/r/view.result:
  Auto merged
mysql-test/t/im_daemon_life_cycle.imtest:
  Auto merged
mysql-test/t/im_life_cycle.imtest:
  Auto merged
mysql-test/t/im_utils.imtest:
  Auto merged
mysql-test/t/sp-error.test:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
mysql-test/t/type_varchar.test:
  Auto merged
mysql-test/t/view.test:
  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_row.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_strfunc.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_error.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_trigger.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/mysql-test-run.pl:
  Use local. Alik will merge his changes manually.
mysql-test/lib/mtr_process.pl:
  Use local.
mysql-test/r/grant.result:
  Use local.
mysql-test/r/sp.result:
  Use local.
mysql-test/r/ps.result:
  Manual merge.
mysql-test/t/grant.test:
  Manual merge.
mysql-test/t/ps.test:
  Manual merge.
mysql-test/t/sp.test:
  Manual merge.
sql/Makefile.am:
  Manual merge.
sql/field.cc:
  Manual merge.
sql/mysqld.cc:
  Manual merge.
sql/share/errmsg.txt:
  Manual merge.
sql/sp.cc:
  Manual merge.
sql/sp_head.h:
  Manual merge.
sql/sql_trigger.cc:
  Manual merge.
sql/sql_view.cc:
  Manual merge.
2006-08-30 03:00:19 +04:00
unknown
4355ea5a38 A fix for Bug#14897 "ResultSet.getString("table.column") sometimes
doesn't find the column"

When a user was using 4.1 tables with VARCHAR column and 5.0 server
and a query that used a temporary table to resolve itself, the
table metadata for the varchar column sent to client was incorrect:
MYSQL_FIELD::table member was empty.

The bug was caused by implicit "upgrade" from old VARCHAR to new
VARCHAR hard-coded in Field::new_field, which did not preserve
the information about the original table. Thus, the field metadata
of the "upgraded" field pointed to an auxiliary temporary table
created for query execution.

The fix is to copy the pointer to the original table to the new field.


mysql-test/r/type_varchar.result:
  Update test results (Bug#14897)
mysql-test/t/type_varchar.test:
  Add a test case for Bug#14897 "ResultSet.getString("table.column") 
  sometimes doesn't find the column"
sql/field.cc:
  Preserve the original table name when converting fields from 
  old VARCHAR to new VARCHAR.
mysql-test/std_data/14897.frm:
  New BitKeeper file ``mysql-test/std_data/14897.frm''
2006-08-30 00:38:58 +04:00
unknown
2592d4a139 Merge lamia.home:/home/timka/mysql/src/5.0-bug-21456
into  lamia.home:/home/timka/mysql/src/5.1-bug-21456


mysql-test/r/distinct.result:
  Auto merged
sql/sql_select.cc:
  Auto merged
2006-08-29 16:39:09 +03:00
unknown
c923270f21 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug17591
2006-08-29 16:24:00 +04:00
unknown
33294b1b50 Preliminary patch for the following bugs:
- BUG#15934: Instance manager fails to work;
  - BUG#18020: IM connect problem;
  - BUG#18027: IM: Server_ID differs;
  - BUG#18033: IM: Server_ID not reported;
  - BUG#21331: Instance Manager: Connect problems in tests;

The only test suite has been changed
(server codebase has not been modified).


BitKeeper/deleted/.del-im_check_os.inc:
  Rename: mysql-test/include/im_check_os.inc -> BitKeeper/deleted/.del-im_check_os.inc
mysql-test/include/im_check_env.inc:
  Include only this file from all IM-tests.
mysql-test/lib/mtr_io.pl:
  Update mtr_get_pid_from_file() to workaround race,
  described in BUG#21884.
mysql-test/lib/mtr_process.pl:
  Refactor im_start()/im_stop() so that they will be more
  reliable. There are the following user-visible changes:
    - if one of these functions fails, the test suite
      is aborted;
    - mtr_im_stop() now determines whether the component is
      alive or not not only by checking PID, but also by trying
      to connect to the component;
    - after starting IM, the test suite waits for it to start
      accepting client connections and to start all its guarded
      mysqld instances;
    - a lot of debug-logs have been added in order to simplify
      investigation of future failures.
mysql-test/mysql-test-run.pl:
  1. Get rid of kill_and_cleanup();
  2. Move im_start()/im_stop() to mtr_process.pl;
  3. Change default IM port to 9311 so that it does not interfere
     with default slave port;
mysql-test/r/im_daemon_life_cycle.result:
  Updated result file.
mysql-test/r/im_life_cycle.result:
  Updated result file.
mysql-test/r/im_options_set.result:
  Updated result file.
mysql-test/r/im_options_unset.result:
  Updated result file.
mysql-test/r/im_utils.result:
  Updated result file.
mysql-test/t/im_daemon_life_cycle.imtest:
  Updated IM-test.
mysql-test/t/im_life_cycle.imtest:
  Updated IM-test.
mysql-test/t/im_options_set.imtest:
  Updated IM-test.
mysql-test/t/im_options_unset.imtest:
  Updated IM-test.
mysql-test/t/im_utils.imtest:
  Updated IM-test.
2006-08-29 15:46:40 +04:00
unknown
b2d1f7a444 Merge moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0
into  moonlight.intranet:/home/tomash/src/mysql_ab/mysql-5.0-bug17591


mysql-test/r/view.result:
  Manual merge.
mysql-test/t/view.test:
  Manual merge.
2006-08-29 14:37:52 +04:00
unknown
7a5a2544bf BUG#17591: Updatable view not possible with trigger or stored function
When a view was used inside a trigger or a function, lock type for
tables used in a view was always set to READ (thus making the view
non-updatable), even if we were trying to update the view.

The solution is to set lock type properly.


mysql-test/r/view.result:
  Add result for bug#17591: Updatable view not possible with trigger
  or stored function.
mysql-test/t/view.test:
  Add test case for bug#17591: Updatable view not possible with trigger
  or stored function.
sql/sql_view.cc:
  Move the code that sets requested lock type before the point where
  we exit from mysql_make_view() when we process a placeholder for
  prelocked table.
2006-08-29 14:32:59 +04:00
unknown
133d2aa599 Fix for bug#21795: SP: sp_head::is_not_allowed_in_function() contains
erroneous check

Problem: Actually there were two problems in the server code. The check
for SQLCOM_FLUSH in SF/Triggers were not according to the existing
architecture which uses sp_get_flags_for_command() from sp_head.cc .
This function was also missing a check for SQLCOM_FLUSH which has a
problem combined with prelocking. This changeset fixes both of these
deficiencies as well as the erroneous check in
sp_head::is_not_allowed_in_function() which was a copy&paste error.


mysql-test/r/sp-error.result:
  update result
mysql-test/r/trigger.result:
  update result
mysql-test/t/sp-error.test:
  FLUSH can create a problem with prelocking, hence it's disabled.
  There is a better way to check this than a check in the parser.
  Now we use sp_get_flags_for_command() and the error returned is
  different.
mysql-test/t/trigger.test:
  FLUSH can create a problem with prelocking, hence it's disabled.
  There is a better way to check this than a check in the parser.
  Now we use sp_get_flags_for_command() and the error returned is
  different.
sql/sp_head.cc:
  FLUSH and RESET are not allowed inside a SF/Trigger.
  Because they don't imply a COMMIT sp_head::HAS_COMMIT_OR_ROLLBACK
  cannot be used. Two new flags were introduced for that reason.
sql/sp_head.h:
  Don't check m_type as this check is erroneous. This is probably
  a copy and paste error when moving code from somewhere else. Another
  fact which supports this was prefixing the enum value with the name
  of class sp_head.
  
  Adding two new flags HAS_SQLCOM_RESET and HAS_SQLCOM_FLUSH. The values
  are 2048 and 4096 because in the 5.1 branch there are already new flags
  which are with values up-to 1024.
sql/sql_parse.cc:
  FLUSH can cause a problem with prelocking in SF/Trigger and
  therefore is already disabled. RESET is also disabled because
  is handled by the same code as FLUSH. We won't allow RESET inside
  SF/Trigger at that stage without thorough analysis. The check for
  them is already done in the parser by calling
  is_not_allowed_in_function()
sql/sql_yacc.yy:
  By listing SQLCOM_FLUSH as command which implies COMMIT
  in sp_get_flags_for_command() the check in sql_yacc.yy is
  obsolete.
2006-08-25 15:51:29 +02:00
unknown
807ecdf43a Fix for bug#21416 SP: Recursion level higher than zero needed for non-recursive call
The following procedure was not possible if max_sp_recursion_depth is 0
create procedure show_proc() show create procedure show_proc;
  
Actually there is no recursive call but the limit is checked.
  
Solved by temporarily increasing the thread's limit just before the fetch from cache
and decreasing after that.


mysql-test/r/sp.result:
  update result
mysql-test/t/sp.test:
  Test for bug #21416 SP: Recursion level higher than zero needed for non-recursive call
sql/sp.cc:
  Increase the max_sp_recursion_depth temporarily for SHOW CREATE PROCEDURE call.
  This call is in fact not recursive but is counted as such. Outcome, it will work
  always but if max_sp_recursion_depth is reached we are going to cache one more
  sp_head instance.
2006-08-24 19:36:26 +02:00
unknown
43dbfa66c5 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin
2006-08-24 16:18:58 +04:00
unknown
8eeac5a727 after merge fix 2006-08-24 16:17:42 +04:00
unknown
965a3970c9 BUG#21166: Prepared statement causes signal 11 on second execution
Changes in an item tree done by optimizer weren't properly
registered and went unnoticed, which resulted in preliminary freeing
of used memory.


mysql-test/r/ps.result:
  Add result for bug#21166: Prepared statement causes signal 11
  on second execution.
mysql-test/t/ps.test:
  Add test case for bug#21166: Prepared statement causes signal 11
  on second execution.
sql/item.cc:
  Move Item::transform() and Item_default_value::transform() from
  item.h here and use THD::change_item_tree() instead of plain
  assignment.
  Change Item_field::set_no_const_sub() to be used with Item::walk()
  instead of Item::transform().
sql/item.h:
  Move definition of Item::transform() and Item_default_value::transform()
  to item.cc.
  Change Item::set_no_const_sub() to be used with Item::walk()
  instead of Item::transform().
sql/item_cmpfunc.cc:
  Use Item::walk() to execute Item::set_no_const_sub().
  Use THD::change_item_tree() instead of plain assignment.
sql/item_func.cc:
  Add assert and comment to Item_func::traverse_cond().
sql/item_row.cc:
  Use THD::change_item_tree() instead of plain assignment.
sql/item_strfunc.cc:
  Move Item_func_make_set::transform() from item_strfunc.h here and use
  THD::change_item_tree() instead of plain assignment.
sql/item_strfunc.h:
  Move definition of Item_func_make_set::transform() to item_strfunc.cc.
2006-08-24 15:49:12 +04:00
unknown
f96ee72fb0 Fix for BUG#16899: Possible buffer overflow in handling of DEFINER-clause
User name (host name) has limit on length. The server code relies on these
limits when storing the names. The problem was that sometimes these limits
were not checked properly, so that could lead to buffer overflow.

The fix is to check length of user/host name in parser and if string is too
long, throw an error.


mysql-test/r/grant.result:
  Updated result file.
mysql-test/r/sp.result:
  Updated result file.
mysql-test/r/trigger.result:
  Updated result file.
mysql-test/r/view.result:
  Updated result file.
mysql-test/t/grant.test:
  Added test for BUG#16899.
mysql-test/t/sp.test:
  Added test for BUG#16899.
mysql-test/t/trigger.test:
  Added test for BUG#16899.
mysql-test/t/view.test:
  Added test for BUG#16899.
sql/mysql_priv.h:
  Added prototype for new function.
sql/share/errmsg.txt:
  Added new resources.
sql/sql_acl.cc:
  Remove outdated checks.
sql/sql_parse.cc:
  Add a new function for checking string length.
sql/sql_yacc.yy:
  Check length of user/host name.
2006-08-23 21:31:00 +04:00
unknown
e3181c59e7 Merge lamia.home:/home/timka/mysql/src/4.1-bug-21456
into  lamia.home:/home/timka/mysql/src/5.0-bug-21456


mysql-test/r/distinct.result:
  Merge the fix for BUG#21456
mysql-test/t/distinct.test:
  Merge the fix for BUG#21456
sql/sql_select.cc:
  Merge the fix for BUG#21456
2006-08-23 18:22:53 +03:00
unknown
9a770f5318 Merge ahristov@bk-internal.mysql.com:/home/bk/mysql-5.1-runtime
into  example.com:/work/mysql-5.1-runtime
2006-08-23 15:51:37 +02:00
unknown
7a37eeae62 Fix for bug #20665 All commands supported in Stored Procedures
should work in Prepared Statements. Post-review changeset.

Problem: There are some commands which are avaiable to be executed in SP
         but cannot be prepared. This patch fixes this and makes it possible
         prepare these statements.

Changes: The commands later are made available in PS. RESET has been forbidden
         in SF/Trigger.

Solution: All current server commands where checked and those missing (see later)
          we added. Tests for all of the commands with repeated executions were
          added - testing with SP, SF and PS.

SHOW BINLOG EVENTS
SHOW (MASTER | SLAVE) STATUS
SHOW (MASTER | BINARY) LOGS
SHOW (PROCEDURE | FUNCTION) CODE (parsable only in debug builds)
SHOW CREATE (PROCEDURE | FUNCTION | EVENT | TABLE | VIEW)
SHOW (AUTHORS | CONTRIBUTORS | WARNINGS | ERRORS)
CHANGE MASTER
RESET (MASTER | SLAVE | QUERY CACHE)
SLAVE (START | STOP)
CHECKSUM (TABLE | TABLES)
INSTALL PLUGIN
UNINSTALL PLUGIN
CACHE INDEX
LOAD INDEX INTO CACHE
GRANT
REVOKE
KILL
(CREATE | RENAME | DROP) DATABASE
(CREATE | RENAME | DROP) USER
FLUSH (TABLE | TABLES | TABLES WITH READ LOCK | HOSTS | PRIVILEGES |
       LOGS | STATUS | MASTER | SLAVE | DES_KEY_FILE | USER_RESOURCES)


mysql-test/r/ps.result:
  update result
mysql-test/r/ps_1general.result:
  update result
mysql-test/r/ps_grant.result:
  update result
mysql-test/r/sp-dynamic.result:
  update result
mysql-test/t/ps.test:
  Add more statements, probably all currently missing which are possible in
  a SP but not preparable.
  Every statement is tested in a SP, in a SF and attempted to prepare.
mysql-test/t/ps_1general.test:
  - Enable some of the statements, which are already possible in SP.
  - 1295 -> ER_UNSUPPORTED_PS
mysql-test/t/ps_grant.test:
  Enable statements already possible in SP.
sql/sp_head.cc:
  - Reorder to keep some alphabet order.
  - Add missing SHOW_SCHEDULER_STATUS.
sql/sql_prepare.cc:
  Add possibility to prepare statements, which are already allowed in SP.
2006-08-23 15:50:06 +02:00
unknown
2baf2fdf13 Bug #21456: SELECT DISTINCT(x) produces incorrect results when using order by
GROUP BY/DISTINCT pruning optimization must be done before ORDER BY 
optimization because ORDER BY may be removed when GROUP BY/DISTINCT
sorts as a side effect, e.g. in 
  SELECT DISTINCT <non-key-col>,<pk> FROM t1
  ORDER BY <non-key-col> DISTINCT
must be removed before ORDER BY as if done the other way around
it will remove both.


mysql-test/r/distinct.result:
  Test for BUG#21456.
mysql-test/t/distinct.test:
  Test for BUG#21456.
sql/sql_select.cc:
  Bug #21456: SELECT DISTINCT(x) produces incorrect results when using order by
  
  GROUP BY/DISTINCT pruning optimization must be done before ORDER BY 
  optimization because ORDER BY may be removed when GROUP BY/DISTINCT
  sorts as a side effect.
2006-08-23 16:46:57 +03:00
unknown
d08dd523a2 Merge mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin


storage/csv/ha_tina.cc:
  merge later
mysql-test/r/csv.result:
  manual merge
mysql-test/t/csv.test:
  manual merge
2006-08-23 17:15:24 +04:00
unknown
118677a293 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.1
into  mysql.com:/home/cps/mysql/trees/mysql-5.1-virgin


sql/mysql_priv.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/handler.cc:
  manual merge
2006-08-23 16:48:39 +04:00
unknown
09e9b2f6cd Bug#8153 (Stored procedure with subquery and continue handler, wrong result)
Implemented code review comments
Test cleanup


sql/protocol.cc:
  Bug#8153 (Stored procedure with subquery and continue handler, wrong result)
  
  Implemented code review comments
2006-08-22 18:58:14 -07:00
unknown
5e1039b234 Merge malff@bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  weblab.(none):/home/marcsql/TREE/mysql-5.0-8153


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
2006-08-22 09:06:00 -07:00
unknown
a649c63130 Update result file for "grant" to 5.1 version
mysql-test/r/grant.result:
  Update result file format to 5.1 version
2006-08-22 14:16:39 +02:00
unknown
1b6858ea50 Merge bk-internal.mysql.com:/home/bk/mysql-5.1
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1
2006-08-21 16:59:53 -04:00
unknown
bfaef559c0 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-21 20:27:32 +02:00
unknown
167aaaa5a4 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1


mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
mysql-test/t/mysql.test:
  Auto merged
mysql-test/t/mysql_client_test.test:
  Auto merged
server-tools/instance-manager/listener.cc:
  Auto merged
server-tools/instance-manager/portability.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
BitKeeper/deleted/.del-openssl.m4~41cebd0ba8281769:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
client/mysql.cc:
  Manual merge.
mysql-test/mysql-test-run.pl:
  Manual merge.
2006-08-21 12:59:46 -04:00
unknown
a611307811 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.1


mysql-test/r/func_time.result:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
mysql-test/t/func_time.test:
  Manual merge.
2006-08-21 12:55:43 -04:00
unknown
524914b217 mysql-test/mysql-test-run.pl : Use fixed path names for all NDB binaries,
because searching for them makes the script abort with all non-NDB builds.


mysql-test/mysql-test-run.pl:
  Checking with "mtr_exe_exists()" for the location of a binary will yield an error
  if the binary is found nowhere at all, and this happens with NDB binaries in all
  builds that do not contain NDB;  so the correct way is fixed path names only.
  Still part of the fix for the #21721 bug.
2006-08-21 16:19:29 +02:00
unknown
c75d6dbd9b Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt
2006-08-21 14:38:58 +02:00
unknown
e84fd6df50 Merge bk-internal.mysql.com:/home/bk/mysql-5.0-runtime
into  mockturtle.local:/home/dlenev/src/mysql-5.0-bg21216-2
2006-08-21 13:08:49 +04:00
unknown
cda7278dc6 Merge mockturtle.local:/home/dlenev/src/mysql-5.0-bg21216-2
into  mockturtle.local:/home/dlenev/src/mysql-5.1-bg19403-2


mysql-test/r/drop.result:
  Auto merged
sql/lock.cc:
  Use 5.1 version of code as bug#21216 will be fixed there in different way.
2006-08-21 12:28:35 +04:00
unknown
8daf4e8373 Fix for bug#21216 "Simultaneous DROP TABLE and SHOW OPEN TABLES causes
server to crash".

Crash caused by assertion failure happened when one ran SHOW OPEN TABLES
while concurrently doing DROP TABLE (or RENAME TABLE, CREATE TABLE LIKE
or any other command that takes name-lock) in other connection.
For non-debug version of server problem exposed itself as wrong output
of SHOW OPEN TABLES statement (it was missing name-locked tables).
Finally in 5.1 both debug and non-debug versions simply crashed in
this situation due to NULL-pointer dereference.

This problem was caused by the fact that table placeholders which were
added to table cache in order to obtain name-lock had TABLE_SHARE::table_name
set to 0. Therefore they broke assumption that this member is non-0 for
all tables in table cache which was checked by assert in list_open_tables()
(in 5.1 this function simply relies on it).
The fix simply sets this member for such placeholders to appropriate value
making this assumption true again.

This patch also includes test for similar bug 12212 "Crash that happens
during removing of database name from cache" reappeared in 5.1 as bug 19403.


mysql-test/r/drop.result:
  Added test for bug#21216 "Simultaneous DROP TABLE and SHOW OPEN TABLES
  causes server to crash" and bug#12212/19403 "Crash that happens during
  removing of database name from cache".
mysql-test/t/drop.test:
  Added test for bug#21216 "Simultaneous DROP TABLE and SHOW OPEN TABLES
  causes server to crash" and bug#12212/19403 "Crash that happens during
  removing of database name from cache".
sql/lock.cc:
  lock_table_name():
    Our code assumes that TABLE_SHARE::table_name for objects in table cache
    is non-NULL (for example look at assertion in list_open_tables()). This
    was not true for table placeholders that were added to table cache for
    name-locking. So let us set this member for such placeholders.
2006-08-21 12:18:59 +04:00
unknown
8e2b4a3399 Fix for the failing gis.test
mysql-test/r/gis.result:
  result fixed
sql/item_geofunc.cc:
  new_field->init() call added
2006-08-18 22:29:35 +05:00
unknown
bc4215111c mysql-test-run.pl : Fix the search path for "ndb_mgmd" and "ndbd". bug#21721
mysql-test/mysql-test-run.pl:
  In 5.1 packages, the binaries "ndbd" and "ndb_mgmd" are in subdirectory "bin", not in "libexec".
  Use the search function "mtr_exe_exists()", in case there might be exceptions.
2006-08-18 18:24:38 +02:00
unknown
70b7378898 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/cps/mysql/trees/mysql-5.0-virgin


sql/examples/ha_tina.cc:
  Auto merged
2006-08-18 16:48:32 +04:00
unknown
eda1afe222 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt


mysql-test/r/type_newdecimal.result:
  Auto merged
mysql-test/t/type_newdecimal.test:
  Auto merged
2006-08-17 22:30:32 +02:00
unknown
b32b2ce7af Merge bk-internal.mysql.com:/data0/bk/tmp_reg
into  bk-internal.mysql.com:/data0/bk/mysql-5.1


client/mysql.cc:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/gis.result:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/r/im_life_cycle.result:
  Auto merged
mysql-test/r/information_schema_db.result:
  Auto merged
mysql-test/r/type_newdecimal.result:
  Auto merged
mysql-test/r/type_ranges.result:
  Auto merged
mysql-test/r/type_timestamp.result:
  Auto merged
mysql-test/t/ctype_utf8.test:
  Auto merged
mysql-test/t/gis.test:
  Auto merged
mysql-test/t/im_life_cycle.imtest:
  Auto merged
mysql-test/t/type_newdecimal.test:
  Auto merged
mysql-test/t/type_timestamp.test:
  Auto merged
server-tools/instance-manager/messages.cc:
  Auto merged
sql/item_geofunc.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
sql/share/errmsg.txt:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-08-17 17:19:41 +02:00
unknown
5c8c2ab43b Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0


BitKeeper/deleted/.del-mysql_client.result:
  Auto merged
BitKeeper/deleted/.del-mysql_client.test:
  Auto merged
client/mysql.cc:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
2006-08-17 10:55:57 -04:00
unknown
d82c1514e7 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0


mysql-test/r/grant.result:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
2006-08-17 10:47:23 -04:00
unknown
d3efda57e0 Merge zippy.cornsilk.net:/home/cmiller/work/mysql/merge/tmp_merge
into  zippy.cornsilk.net:/home/cmiller/work/mysql/merge/mysql-5.0


mysql-test/r/grant.result:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
2006-08-17 10:42:50 -04:00
unknown
62af392e62 Merge bk-internal.mysql.com:/data0/bk/mysql-5.1
into  bk-internal.mysql.com:/data0/bk/mysql-5.1-kt


mysql-test/r/view.result:
  Auto merged
2006-08-17 16:37:16 +02:00
unknown
0073d9be28 merge warning test results (!) 2006-08-16 20:39:33 -07:00
unknown
2eb9eb9f54 test result changes (non-functional) for 5.1-5.0 merge
mysql-test/r/federated_transactions.result:
  merge fixes to result file (case sensitivity)
mysql-test/r/warnings.result:
  wrong warning message result
2006-08-16 17:16:36 -07:00
unknown
b2cfa703f4 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint_20328
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-merge


sql/item_timefunc.cc:
  Auto merged
sql/slave.cc:
  Auto merged
mysql-test/r/func_time.result:
  manual merge
mysql-test/r/mysql_client.result:
  manual merge
mysql-test/t/func_time.test:
  manual merge
mysql-test/t/mysql_client.test:
  manual merge
sql/sql_acl.cc:
  manual merge
2006-08-16 19:31:33 -04:00
unknown
46f25b3b98 Merge rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-4.1-maint_20328
into  rolltop.ignatz42.dyndns.org:/mnt/storeage/mysql-5.0-maint_20328


sql/item_timefunc.cc:
  Auto merged
sql/slave.cc:
  Auto merged
BitKeeper/deleted/.del-mysql_client.result:
  manual merge
BitKeeper/deleted/.del-mysql_client.test:
  manual merge
mysql-test/r/func_time.result:
  manual merge
mysql-test/t/func_time.test:
  manual merge
sql/sql_acl.cc:
  manual merge
2006-08-16 16:16:10 -04:00
unknown
4934231545 Bug#20328 - Correction to test/result for broken Windows build.
mysql-test/r/mysql_client.result:
  Removed OS dependant output.
mysql-test/t/mysql_client.test:
  Re-directed output to a temporary file because the actual output isn't important and was causing a Windows test failure.
2006-08-16 13:55:16 -04:00
unknown
8ef847ea42 merge 5.0 -> 5.1, re-enabling federated, disabled partition 2006-08-16 10:47:53 -07:00