Commit graph

13713 commits

Author SHA1 Message Date
unknown
79112423af Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b16511
2006-02-07 12:06:06 +04:00
unknown
2ba25676d7 Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0
2006-02-06 11:40:39 -08:00
unknown
d8c96f286f Fixed bug #16203.
If check_quick_select returns non-empty range then the function cost_group_min_max
cannot return 0 as an estimate of the number of retrieved records.
Yet the function erroneously returned 0 as the estimate in some situations.


mysql-test/r/group_min_max.result:
  Added a test case for bug #16203.
mysql-test/t/group_min_max.test:
  Added a test case for bug #16203.
2006-02-06 11:35:13 -08:00
unknown
18aba0411e Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug16303/mysql-5.0


sql/sql_parse.cc:
  Auto merged
2006-02-06 17:58:15 +01:00
unknown
5f2b9f4f7c Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug16303/mysql-5.0


mysql-test/t/sp-destruct.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2006-02-06 16:07:13 +01:00
unknown
fa461152ef Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug16568/mysql-5.0


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2006-02-06 14:09:14 +01:00
unknown
c1cad51e00 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b16511


sql/sql_prepare.cc:
  Auto merged
2006-02-03 12:34:25 +04:00
unknown
ac21d0294d Fixes after manual merge 2006-02-02 23:56:08 -08:00
unknown
8300149963 Merge rurik.mysql.com:/home/igor/dev/mysql-4.1-0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0


mysql-test/t/having.test:
  Auto merged
mysql-test/r/having.result:
  Manual merge
sql/sql_lex.cc:
  Manual merge
sql/sql_lex.h:
  Manual merge
sql/sql_prepare.cc:
  Manual merge
sql/sql_select.cc:
  Manual merge
2006-02-02 21:23:36 -08:00
unknown
6757503847 Post-review fix for bug #14927. 2006-02-02 20:37:58 -08:00
unknown
afe4e93ed1 Merge rurik.mysql.com:/home/igor/mysql-4.1
into  rurik.mysql.com:/home/igor/dev/mysql-4.1-0
2006-02-02 17:56:05 -08:00
unknown
6a2a94b50b Merge rurik.mysql.com:/home/igor/mysql-5.0
into  rurik.mysql.com:/home/igor/dev/mysql-5.0-0


sql/sql_select.cc:
  Auto merged
2006-02-02 13:47:21 -08:00
unknown
2fb59bd72a Post-merge fixes. 2006-02-03 00:07:36 +03:00
unknown
95a3509a66 Merge mysql.com:/opt/local/work/mysql-4.1-root
into  mysql.com:/opt/local/work/mysql-5.0-root


BitKeeper/deleted/.del-rpl_ignore_table.result:
  Delete: mysql-test/r/rpl_ignore_table.result
BitKeeper/deleted/.del-rpl_multi_update4.result:
  Delete: mysql-test/r/rpl_multi_update4.result
BitKeeper/deleted/.del-rpl_ignore_table-slave.opt:
  Delete: mysql-test/t/rpl_ignore_table-slave.opt
BitKeeper/deleted/.del-rpl_ignore_table.test:
  Delete: mysql-test/t/rpl_ignore_table.test
BitKeeper/deleted/.del-rpl_multi_update4-slave.opt:
  Delete: mysql-test/t/rpl_multi_update4-slave.opt
BitKeeper/deleted/.del-disabled.def:
  Auto merged
BitKeeper/deleted/.del-rpl_multi_update4.test:
  Delete: mysql-test/t/rpl_multi_update4.test
heap/hp_create.c:
  Auto merged
mysql-test/r/date_formats.result:
  Auto merged
mysql-test/r/myisam.result:
  Auto merged
mysql-test/r/update.result:
  Auto merged
mysql-test/t/date_formats.test:
  Auto merged
mysql-test/t/heap.test:
  Auto merged
mysql-test/t/kill.test:
  Auto merged
mysql-test/t/update.test:
  Auto merged
ndb/include/mgmapi/mgmapi_config_parameters.h:
  Auto merged
ndb/test/ndbapi/testBlobs.cpp:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
configure.in:
  Manual merge.
libmysql/libmysql.c:
  Manual merge.
mysql-test/r/heap.result:
  Manual merge.
mysql-test/r/heap_hash.result:
  Manual merge.
mysql-test/r/kill.result:
  Manual merge.
sql/ha_heap.cc:
  Manual merge.
sql/ha_heap.h:
  Manual merge.
sql/item_timefunc.cc:
  Manual merge.
sql/sql_class.cc:
  Manual merge.
sql/sql_parse.cc:
  Manual merge.
sql/sql_update.cc:
  Manual merge.
tests/mysql_client_test.c:
  Manual merge.
2006-02-02 18:17:18 +03:00
unknown
7fd41b20a0 Minor fix for BUG#16303 in sp.cc: Simplified code in sp_routine_exists_in_table().
(No change of functionality)


sql/sp.cc:
  Simplified code in sp_routine_exists_in_table().
2006-02-02 15:37:29 +01:00
unknown
32691e6e37 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b16511
2006-02-02 13:21:45 +04:00
unknown
7ea60ae91e Fixed bug #16382.
When an ambiguous field name is used in a group by clause a warning is issued
in the find_order_in_list function by a call to push_warning_printf.
An expression that was not always valid was passed to this call as the field
name parameter.


mysql-test/r/view.result:
  Added a test case for bug #16382.
mysql-test/t/view.test:
  Added a test case for bug #16382.
2006-02-01 20:43:43 -08:00
unknown
11ec4175f0 Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug15011/mysql-5.0
2006-02-01 16:01:22 +01:00
unknown
6643f32028 Post-review fix for BUG#15011.
Added comments.


sql/sp_rcontext.cc:
  Added comments to sp_rcontext::find_handler()
2006-02-01 16:00:11 +01:00
unknown
6400ef8bcd Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b16511
2006-02-01 12:11:07 +04:00
unknown
a400e7feb9 FIxed bug #14927.
A query with a group by and having clauses could return a wrong
result set if the having condition contained a constant conjunct 
evaluated to FALSE.
It happened because the pushdown condition for table with
grouping columns lost its constant conjuncts.
Pushdown conditions are always built by the function make_cond_for_table
that ignores constant conjuncts. This is apparently not correct when
constant false conjuncts are present.


mysql-test/r/having.result:
  Added A test case for bug #14927.
mysql-test/t/having.test:
  Added A test case for bug #14927.
sql/sql_lex.cc:
  Fixed bug #14927.
  Initialized fields for having conditions in  st_select_lex::init_query().
sql/sql_lex.h:
  Fixed bug #14927.
  Added a field to restore having condititions for execution in SP and PS.
sql/sql_prepare.cc:
  Fixed bug #14927.
  Added code to restore havinf conditions for execution in SP and PS.
sql/sql_select.cc:
  Fixed bug #14927.
  Performed evaluation of constant expressions in having clauses.
  If the having condition contains a constant conjunct that is always false
  an empty result set is returned after the optimization phase.
  In this case the corresponding EXPLAIN command now returns 
  "Impossible HAVING" in the last column.
2006-01-31 21:48:32 -08:00
unknown
86733db80b Merge aivanov@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/alexi/innodb/mysql-5.0-ss162
2006-01-31 21:49:20 +03:00
unknown
6a9a96dc61 Fixed: BUG#15653, BUG#16157, BUG#16229, BUG#16298, BUG#16387, BUG#16582.
Applied innodb-5.0-ss149/162 snapshots.


innobase/btr/btr0sea.c:
  Applied innodb-5.0-149/162 snapshots.
    Account for a race condition when dropping the adaptive hash
    index for a B-tree page (Bug #16582).
    btr_search_drop_page_hash_index(): Retry the operation if a
      hash index with different parameters was built meanwhile.
      Add diagnostics for the case that hash node pointers to
      the page remain. This fix is from Heikki.
    btr_search_info-update_hash(), btr_search_info_update_slow():
      Document the parameter "info" as in/out.
innobase/dict/dict0dict.c:
  Applied innodb-5.0-149/162 snapshots.
    Do not mistake TABLENAME_ibfk_0 for auto generated id (Bug #16387).
    dict_table_get_highest_foreign_id(): Ignore foreign constraint
      identifiers starting with the pattern TABLENAME_ibfk_0.
innobase/dict/dict0load.c:
  Applied innodb-5.0-149/162 snapshots.
    dict_load_columns(): Set the charset-collation code
    DATA_MYSQL_BINARY_CHARSET_COLL for those binary string columns
    that lack a charset-collation code, i.e., the tables were created
    with an older version of MySQL/InnoDB than 4.1.2 (Bug #16298).
innobase/fil/fil0fil.c:
  Applied innodb-5.0-149/162 snapshots.
    Keep track on unflushed modifications to file spaces. When there
    are tens of thousands of file spaces, flushing all files in
    fil_flush_file_spaces() would be very slow (Bug #15653).
    fil_flush_file_spaces(): Only flush unflushed file spaces.
    fil_space_t, fil_system_t: Add a list of unflushed spaces.
innobase/include/univ.i:
  Applied innodb-5.0-149/162 snapshots.
    Avoid breaking --with-debug builds on QNS and other systems
    whose compiler pretends to be GCC 2.
    Outside __WIN__ define UNIV_INLINE as static inline.
innobase/os/os0sync.c:
  Applied innodb-5.0-149/162 snapshots.
    Replace goto in os_event_wait with a normal loop.
innobase/srv/srv0start.c:
  Applied innodb-5.0-149/162 snapshots.
    Fix bug #16157, a crash when innodb_log_group_home_dir is set
    to an empty string. This patch is from Heikki.
mysql-test/r/innodb.result:
  Applied innodb-5.0-149/162 snapshots.
    Fixed results for added test cases.
mysql-test/t/innodb.test:
  Applied innodb-5.0-149/162 snapshots.
    Added test cases.
sql/ha_innodb.cc:
  Applied innodb-5.0-149/162 snapshots.
    Remove some declarations of unused global variables and member
      variables of class ha_innobase.
    Added diagnostic code trx_print() to
      innobase_query_caching_of_table_permitted() to find reason
      why we are holding adaptive search latch.
    Fixed bug #16229 MySQL/InnoDB uses full explicit table locks
      in trigger processing. Take a InnoDB table lock only if user
      has explicitly requested a table lock. Added some additional
      comments to store_lock() and external_lock(). Fixed some
      code style errors.
    Remember to use noninlined versions of the functions on
      ha_innodb.cc !
sql/ha_innodb.h:
  Applied innodb-5.0-149/162 snapshots.
    Remove some declarations of unused global variables and member
    variables of class ha_innobase.
2006-01-31 21:41:48 +03:00
unknown
c98077d610 Merge msvensson@msvensson.mysql.internal:/home/msvensson/mysql/bug15302/my41-bug15302
into  devsrv-b.mysql.com:/space/magnus/my41-bug15302
2006-01-31 18:51:15 +01:00
unknown
47b9860231 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-5.0
into  devsrv-b.mysql.com:/space/magnus/my50-bug15302
2006-01-31 16:42:25 +01:00
unknown
1a53ee1a65 Merge msvensson@msvensson.mysql.internal:/home/msvensson/mysql/bug15302/my50-bug15302
into  devsrv-b.mysql.com:/space/magnus/my50-bug15302


client/mysqltest.c:
  Auto merged
sql/sql_db.cc:
  Auto merged
2006-01-31 15:14:46 +01:00
unknown
852a5405e6 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-bg16829


sql/sql_yacc.yy:
  Auto merged
2006-01-31 15:51:55 +03:00
unknown
b498114fba Merge neptunus.(none):/home/msvensson/mysql/bug15302/my41-bug15302
into  neptunus.(none):/home/msvensson/mysql/bug15302/my50-bug15302


client/mysqltest.c:
  Already in 5.0
sql/sql_db.cc:
  "mysql_create_db" is already silent in 5.0
2006-01-31 12:52:25 +01:00
unknown
c35be28149 Bug #15302 LOAD DATA FROM MASTER -> Packets out of order (Found: 2, expected 1)
- Change "mysql_create_db" to not call "send_ok" if in silent mode i.e. called from "load_master_data"
 - Change mysqltest to detect when there aren't as many warnings available as was reported.


client/mysqltest.c:
  Call "die" if warnings were reported but there weren't any warnings to retrieve
sql/sql_db.cc:
  Don't call "send_ok" if in silent mode.
2006-01-31 12:47:22 +01:00
unknown
4675b563e2 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/home/dlenev/src/mysql-5.0-bg16829


mysql-test/r/trigger.result:
  Auto merged
mysql-test/t/trigger.test:
  Auto merged
2006-01-31 14:43:41 +03:00
unknown
b5e313f364 Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug15737/mysql-5.0
2006-01-31 09:49:54 +01:00
unknown
d77bfdbc4a Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into  mysql.com:/usr/home/ram/work/5.0.b16511
2006-01-31 10:53:37 +04:00
unknown
6065cacb8a Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into  govinda.patg.net:/home/patg/mysql-build/mysql-5.0
2006-01-30 10:55:24 -08:00
unknown
79e09501ca Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug15737/mysql-5.0
2006-01-30 16:27:35 +01:00
unknown
907c38cdb3 Merge mysql.com:/extern/mysql/bk/mysql-5.0
into  mysql.com:/extern/mysql/work/bug15737/mysql-5.0
2006-01-30 15:06:33 +01:00
unknown
d42c472e31 Merge svlasenko@bk-internal.mysql.com:/home/bk/mysql-5.0
into  selena.:H:/MYSQL/src/#15634-mysql-5.0


sql/field.cc:
  Auto merged
2006-01-30 17:03:09 +03:00
unknown
ef0cd2f58a information_schema_db.result, information_schema.result:
Fix test result.
table.h, sql_show.cc:
  Put I_S tables in lexical order.


sql/sql_show.cc:
  Put I_S tables in lexical order.
sql/table.h:
  Put I_S tables in lexical order.
mysql-test/r/information_schema.result:
  Fix test result.
mysql-test/r/information_schema_db.result:
  Fix test result.
2006-01-28 19:44:51 -06:00
unknown
a1b67ce2a2 Fix for bug #16829 "Firing trigger with RETURN crashes the server"
We should disallow usage of RETURN statement in triggers and emit
error at parsing time (instead of crashing when trigger is fired).


mysql-test/r/trigger.result:
  Added test for bug #16829 "Firing trigger with RETURN crashes the server".
mysql-test/t/trigger.test:
  Added test for bug #16829 "Firing trigger with RETURN crashes the server".
sql/sql_yacc.yy:
  We should disallow usage of RETURN statement in triggers and emit
  error at parsing time (instead of crashing when trigger is fired).
2006-01-28 12:50:16 +03:00
unknown
6bfbba34c7 Fixed bug #16260.
The problem has manifested itself in the cases when we have a nested outer join
for which it can be inferred that one of the inner tables is a single row table.


mysql-test/r/join_nested.result:
  Added a test case for bug #16260.
mysql-test/t/join_nested.test:
  Added a test case for bug #16260.
sql/sql_select.cc:
  Fixed bug #16260.
  The problem has manifested itself in the cases when we have a nested outer join
  for which it can be inferred that one of the inner tables is a single row table.
  A table is never considered as a const table if it is used in a nested join 
  that serves as an inner operand of an outer join.
2006-01-27 21:20:28 -08:00
unknown
e13a840ad7 BUG# 14768
Added fixes to make last_insert_id() to work.


mysql-test/r/federated.result:
  BUG #14768
  
  New test results for last_insert_id()
mysql-test/t/federated.test:
  BUG #14768
  
  Tests for last_insert_id()
sql/ha_federated.cc:
  BUG# 14768
  
  * Added code to set last_insert_id()
  * Added code to free share->scheme
sql/ha_federated.h:
  BUG #14768
  
  New method for setting last_insert_id()
2006-01-27 15:43:44 -08:00
unknown
7f3f9027d9 Added comments to specify why no much mutex is needed. 2006-01-27 12:44:33 -05:00
unknown
79f575a8f7 Merge mronstrom@bk-internal.mysql.com:/home/bk/mysql-4.1
into  c-5c0be253.1238-1-64736c10.cust.bredbandsbolaget.se:/home/pappa/bug12796
2006-01-27 09:29:59 -05:00
unknown
e7f4df036b Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug8-4.1
2006-01-26 19:01:54 +02:00
unknown
af187fa29d Fixed on BUG#16568: Continue handler with simple CASE not working correctly
After trying multiple inheritance (to messy and hard make it work) and
  sublassing jump_if_not (worked, but ugly), decided to on this solution
  instead:
  Inserting an abstract sp_instr_opt_meta class as parent for all instructions
  with destinations makes it possible to handle a continuation pointer for
  sp_instr_set_case_expr too.
  Note: No special test case; the fix is captured by the changed behaviour of
  bug14643_2, and bug14498_4 (formerly disabled), in sp.test.


mysql-test/r/sp.result:
  Updated results for BUG#16568 (affects results for bug14643_2 and bug14498_4)
mysql-test/t/sp.test:
  Enabled test bug14498_4 for BUG#16568.
sql/sp_head.cc:
  Changed type of some parameters and variables (sp_instr_opt_meta instead of sp_instr_jump*).
  Added consistency check of m_ip member in instructions in sp_head::show_routine_code().
  Updated print() method of, and added opt_mark() and opt_move() methods to
  sp_instr_set_case_expr, to handle the new continuation destination.
sql/sp_head.h:
  New abstract class between sp_instr and instructions with destinations, in particular
  sp_instr_set_case_expr, for continuation destination handling.
  Changed type of some parameters and variables (sp_instr_opt_meta instead of sp_instr_jump*).
  Added opt_mark(), opt_move() and set_destination() methods to
  sp_instr_set_case_expr.
sql/sql_parse.cc:
  Fixed small bug at show_routine_code() call (tested return value the wrong way).
sql/sql_yacc.yy:
  sp_instr_set_case_expr is now added to backpatch list (for the new cont. destination).
2006-01-26 17:26:25 +01:00
unknown
f9ab554985 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into  sanja.is.com.ua:/home/bell/mysql/bk/work-bug8-4.1


sql/sql_select.cc:
  Auto merged
2006-01-26 16:00:49 +02:00
unknown
cce719fba8 Fixed BUG#16303: erroneus stored procedures and functions should be droppable
Use a special lookup function for DROP, which doesn't attempt to parse the
  definition.


mysql-test/r/sp-destruct.result:
  Updated test result for BUG#16303.
mysql-test/t/sp-destruct.test:
  Added test case for BUG#16303.
sql/sp.cc:
  New function sp_routine_exists_in_table() for DROP PROCEDURE/FUNCTION; which doesn't
  want to parse the definition, only know if it exists.
  
  Renamed sp_exists_routine to sp_exist_routines and added comment,
  and changed the misnamed parameter/variable 'tables'/'table' to
  'routines'/'routine'.
sql/sp.h:
  New function sp_routine_exists_in_table() for DROP PROCEDURE/FUNCTION.
  
  Renamed sp_exists_routine to sp_exist_routines,
  and changed the misnamed parameter 'tables' to 'routines'.
sql/sql_acl.cc:
  Call to sp_exists_routine() renamed to sp_exist_routines().
sql/sql_parse.cc:
  Use the new sp_routine_exists_in_table() instead of sp_find_routine(), since we don't
  want the routine definition parsed when doing DROP PROCEDURE/FUNCTION.
2006-01-26 13:29:46 +01:00
unknown
956a5b6dfa BUG#15699 importing the fix from 5.0
sql/sql_parse.cc:
  BUG#15699,16487 merge of the fix made in 5.0
mysql-test/r/rpl_multi_update4.result:
  New BitKeeper file ``mysql-test/r/rpl_multi_update4.result''
mysql-test/t/rpl_multi_update4-slave.opt:
  New BitKeeper file ``mysql-test/t/rpl_multi_update4-slave.opt''
mysql-test/t/rpl_multi_update4.test:
  New BitKeeper file ``mysql-test/t/rpl_multi_update4.test''
mysql-test/r/rpl_ignore_table.result:
  New BitKeeper file ``mysql-test/r/rpl_ignore_table.result''
2006-01-26 12:49:55 +02:00
unknown
27c25d38ef Fix for bug #16511: Decimal data types broken with prepared statements.
sql/sql_prepare.cc:
  Fix for bug #16511: Decimal data types broken with prepared statements.
  - should add the real length.
2006-01-26 13:15:47 +04:00
unknown
7dd2ec0f1b BUG#15935: post-review fixes: added comment 2006-01-26 00:09:04 +03:00
unknown
d33ac37ba6 BUG#15935: In mysql_update, don't use full index scan when we could have used quick select scan.
mysql-test/r/update.result:
  Testcase for BUG#15935
mysql-test/t/update.test:
  Testcase for BUG#15935
sql/sql_update.cc:
  BUG#15935: 
  - Do account for the fact that used_index!=MAX_KEY is also true for cases
    when quick select is used, and use quick select then (and not full index scan).
  - Also removed the redundant "used_index= MAX_KEY" statement
2006-01-25 23:25:23 +03:00