Commit graph

5147 commits

Author SHA1 Message Date
unknown
a199cc208a Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
2005-03-23 21:37:56 +01:00
unknown
f0b89ba5aa A test case for Bug#6282 "Packet error with SELECT INTO"
(the bug itself is no longer repeatable).


mysql-test/r/variables.result:
  Results fixed (Bug#6282)
mysql-test/t/variables.test:
  A test case for Bug#6282 "Packet error with SELECT INTO"
2005-03-23 21:36:15 +03:00
unknown
6bc324ed21 "After Monty's review" changes to the fix for BUG#8325 "Deadlock in replication thread stops replication":
s/sleep/safe_sleep (thread safe); sleep 0/1/2/3/4/5/5/5 (get slave less late);
no message on error log (deadlock is too common sometimes), a global counter
instead (SHOW STATUS LIKE 'slave_retried_transactions').
Plus a fix for libmysql/Makefile.shared


libmysql/Makefile.shared:
  When we "make clean" in libmysql/ we remove the symlinks there, so we
  need to mark that they have to be recreated later: this is done by removing
  ../linked_libmysql_sources. If we don't do this, 'make' will fail after 'cd libmysql;make clean'.
  This Makefile.shared is used by libmysql_r too.
  No reason to remove linked_client_sources as we don't remove the links in client/.
mysql-test/r/rpl_deadlock.result:
  result fix
mysql-test/t/rpl_deadlock.test:
  small test addition
sql/mysqld.cc:
  if active_mi could not be alloced, die. New SHOW STATUS LIKE "slave_retried_transactions".
sql/slave.cc:
  If slave retries automatically a transaction, no message on error log
  (too common situation); sleep 0 secs at first retry, then 1, 2, 3, 4,
  5, 5, 5... Sleeping 0 is to get the least possible late, as deadlocks
  are usually resolved at first try. New global counter rli->retried_trans
  (for SHOW STATUS: total number of times the slave had to retry
  any transaction). safe_sleep() is thread-safe, sleep() was not.
  I change the rli->trans_retries counter to go from 0 to max instead
  of the other way (better for new sleep()).
sql/slave.h:
  new global counter rli->retried_trans
sql/sql_show.cc:
  SHOW STATUS LIKE "slave_retried_transactions"; needs replication mutexes.
  Can't be a simple SHOW_LONG, because active_mi is unset (not alloced yet)
  when the static global status_vars is created (active_mi is set
  in init_slave()).
sql/structs.h:
  new SHOW_SLAVE_RETRIED_TRANS
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-23 19:19:36 +01:00
unknown
c9659f0e6d sql/sql_acl.cc
report correct errror in MODE_NO_AUTO_CREATE_USER
    cleanup
after merge fixes


mysql-test/r/grant2.result:
  updated after merge
mysql-test/r/grant3.result:
  updated after merge
mysql-test/r/rpl_temporary.result:
  sqlstate fixed
mysql-test/t/grant2.test:
  updated after merge
mysql-test/t/grant3.test:
  updated after merge
sql/share/errmsg.txt:
  sqlstate fixed
sql/sql_acl.cc:
  report correct errror in MODE_NO_AUTO_CREATE_USER
  cleanup
2005-03-23 19:18:25 +01:00
unknown
a3762d793e Merge neptunus.(none):/home/msvensson/mysql/mysql-4.1
into neptunus.(none):/home/msvensson/mysql/mysql-5.0


mysql-test/r/warnings.result:
  Auto merged
mysql-test/t/warnings.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-03-23 13:25:31 +01:00
unknown
d27a709f3d merged
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/information_schema.result:
  Auto merged
mysql-test/r/ndb_autodiscover.result:
  Auto merged
mysql-test/r/ps_1general.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/sp.result:
  Auto merged
mysql-test/r/view.result:
  Auto merged
scripts/fill_func_tables.sh:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
sql/field.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/table.cc:
  Auto merged
2005-03-23 09:42:24 +01:00
unknown
903d1b6b51 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2005-03-23 09:27:59 +01:00
unknown
5a42525027 fixed union types merging and table related metadata (BUG#8824)
mysql-test/r/func_group.result:
  new result
mysql-test/r/metadata.result:
  new result
  test of metadata of variables, unions and derived tables
mysql-test/r/union.result:
  new results
  test of union of enum
mysql-test/t/metadata.test:
  test of metadata of variables, unions and derived tables
mysql-test/t/union.test:
  test of union of enum
sql/field.cc:
  Field type merging rules added
  Fixed table name/alias returting for field made from temporary tables
sql/field.h:
  removed unned field type reporting
sql/item.cc:
  fixed bug in NEW_DATE type field creartion
  replaced mechanism of merging types of UNION
sql/item.h:
  replaced mechanism of merging types of UNION
sql/item_func.h:
  new item type to make correct field type detection possible
sql/item_subselect.cc:
  added table name parameter to prepare() to show right table alias for derived tables
sql/sql_derived.cc:
  added table name parameter to prepare() to show right table alias for derived tables
sql/sql_lex.h:
  added table name parameter to prepare() to show right table alias for derived tables
sql/sql_parse.cc:
  made function for enum/set pack length calculation
sql/sql_prepare.cc:
  added table name parameter to prepare() to show right table alias for derived tables
sql/sql_select.cc:
  new temporary table field creation by Item_type_holder
  fixed table alias for temporary table
sql/sql_union.cc:
  added table name parameter to prepare() to show right table alias for derived tables
2005-03-23 08:36:48 +02:00
unknown
8a99997d60 Additional storage engine called "blackhole". Customer request, and for that matter a Zawodny request. With this you can alter table to a type of table that would never store data. Its a /dev/null for a database.
acinclude.m4:
  New macro rule for ha_blackhole.
configure.in:
  Rule enabling blackhole engine
sql/Makefile.am:
  Additions to Makefile for blackhole engine
sql/handler.cc:
  Ifdef enable code for blackhole (and message for "what does this thing do").
sql/handler.h:
  Flag for storage engine type.
sql/mysql_priv.h:
  Added blackhole type.
sql/mysqld.cc:
  Updates for building backhole.
sql/set_var.cc:
  Show variable for blackhole engine
2005-03-22 16:10:39 -08:00
unknown
47a1612d6e Merge mysql.com:/home/jimw/my/mysql-5.0-5036
into mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/mysql-test-run.sh:
  Auto merged
2005-03-22 16:09:51 -08:00
unknown
968410b034 BUG#9339 - Updating a column does not work if the table has a UTF-8 VARCHAR primary key
fixed my_charpos() call in Field_varstring::get_key_image


mysql-test/t/type_varchar.test:
  BUG#9339 - Updating a column does not work if the table has a UTF-8 VARCHAR primary key
mysql-test/r/type_varchar.result:
  BUG#9339 - Updating a column does not work if the table has a UTF-8 VARCHAR primary key
2005-03-22 20:13:49 +01:00
unknown
e31642727b Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


innobase/include/trx0trx.h:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2005-03-22 16:11:43 +01:00
unknown
30a2327848 sql_acl.cc, sql_acl.h, sql_parse.cc
New privilege CREATE USER (CREATE_USER_ACL, Create_user_priv) added
grant2.test:
  new tests (mostly backported from jani's patch)
system_mysql_db.result, sp.result, grant2.result, grant.result:
  results updated


mysql-test/r/grant.result:
  results updated
mysql-test/r/grant2.result:
  results updated
mysql-test/r/sp.result:
  results updated
mysql-test/r/system_mysql_db.result:
  results updated
mysql-test/t/grant2.test:
  new tests (mostly backported from jani's patch)
scripts/mysql_create_system_tables.sh:
  Create_user_priv added
scripts/mysql_fix_privilege_tables.sql:
  Create_user_priv added
sql/sql_acl.cc:
  Create_user_priv added
sql/sql_acl.h:
  Create_user_priv added
sql/sql_parse.cc:
  Create_user_priv added
sql/sql_show.cc:
  Create_user_priv added
sql/sql_yacc.yy:
  Create_user_priv added
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-22 15:54:18 +01:00
unknown
c851595c67 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0
into ua141d10.elisa.omakaista.fi:/home/my/bk/mysql-5.0
2005-03-22 15:58:07 +02:00
unknown
06abeb4f63 - Added new error message.
- Changed error message in sql_acl.cc
- Added some more tests for GRANT.


Docs/mysqld_error.txt:
  Added new error message.
mysql-test/r/grant2.result:
  Error message changed.
mysql-test/r/grant3.result:
  Clean up.
mysql-test/t/grant2.test:
  Error message changed.
sql/share/errmsg.txt:
  Added new error message.
sql/sql_acl.cc:
  Changed error message.
mysql-test/t/grant3.test:
  Error message changed.
2005-03-22 15:57:24 +02:00
unknown
0550fead3b disabling rpl_timezone.test if --ps-protocol, as binlogging of CONVERT_TZ(,,@@time_zone)
fails there; until we find reason (me and possibly Konstantin).


mysql-test/t/rpl_timezone.test:
  disabling test if --ps-protocol, until we find reason
sql/slave.cc:
  fixing comment
2005-03-22 11:38:51 +01:00
unknown
a2bf9d52ee Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into production.mysql.com:/nfstmp1/guilhem/mysql-5.0-prod


BitKeeper/etc/logging_ok:
  auto-union
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-03-22 00:28:33 +01:00
unknown
ac46bf77ae Last part of WL#1062: better replication of timezones: no more use
of SET ONE_SHOT; storing tz info directly in event (if this info is needed),
it's now allowed to have different global tz on master and slave.


client/mysqlbinlog.cc:
  we need MAX_TIME_ZONE_NAME_LENGTH when processing log_event.h, and it's declared in mysql_priv.h
mysql-test/r/rpl_timezone.result:
  result update
mysql-test/t/rpl_timezone-slave.opt:
  Now that we can have different global value of timezone on master and slave, let's test it.
mysql-test/t/rpl_timezone.test:
  Tests of the new replication of timezones: checking the output of mysqlbinlog,
  replication of CONVERT_TZ().
sql/ha_innodb.cc:
  No very fast shutdown on Netware (anyway it's disabled on all platforms,
  but this is so that we don't forget to keep it disabled on Netware in the future).
sql/log.cc:
  No more need to write SET ONE_SHOT to binlog for character set and timezone
  (as we store this info  directly nin the Query_log_event now).
sql/log_event.cc:
  Exclude ::write() methods if MYSQL_CLIENT.
  Storing timezone info in the Query_log_event in master. Re-reading it in slave.
  Small code cleanups. I plan to not store the end 0 of catalog in binlog
  events soon.
sql/log_event.h:
  replication of time zones: a place for tz info in Query_log_event,
  in LAST_EVENT_INFO. Plus if we are compiling a client, we don't need
  the ::write() methods, so keeping them out (of mysqlbinlog.cc;
  keeping them in, resulted in problem that mysqlbinlog does not know Timezone
  structure).
sql/mysql_priv.h:
  moving this define from tztime.h (tztime.h has things which are
  too much for a client like mysqlbinlog).
sql/set_var.cc:
  It's now allowed to change global value of charset or timezone even if using binlogging
  or if being a slave.
  Making CONVERT_TZ(,,@@session.time_zone) replicate.
sql/set_var.h:
  these ::check()s are not needed anymore (changing global charset
  or timezone is now allowed even if binlogging or slave)
sql/slave.cc:
  No more need to check for same global timezone if master is 5.x
  (ok, strictly speaking if it is > 5.0.3 but this is alpha).
sql/slave.h:
  a function to wrap settings of charset to default.
sql/tztime.cc:
  Adaptation of my_tz_find() to the case where it's not called from inside
  a query (i.e. cannot join its tz tables to the query's ones): this variant
  opens the tz tables itself, reads from them, and closes them. This is presently
  only used by the slave SQL thread (when it sets the tz before executing a query).
sql/tztime.h:
  declaration of new function, plus moving symbol to mysql_priv.h
  for easier usage in mysqlbinlog (Dmitri, pardon me).
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-22 00:26:12 +01:00
unknown
61f1e9a3e4 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-03-21 23:46:11 +02:00
unknown
802c41e04d Cleanups during review of code
Fixed newly introduced bug in rollup


client/mysqldump.c:
  Safer buffer allocation
  Removed wrong assert
mysql-test/r/olap.result:
  more tests
mysql-test/t/olap.test:
  more tests
sql/handler.cc:
  Simple cleanup
  Fixed wrong check for next digit (wrong debug output)
sql/item.cc:
  Replace shrink_to_length() with mark_as_const() as the former allowed one to do changes to the string
sql/item_sum.cc:
  Change reference to pointer
  Trivial optimzation of testing 'allways_null'
sql/mysqld.cc:
  Proper indentation of comment
sql/sql_select.cc:
  Fixed newly introduced bug in rollup
sql/sql_string.h:
  Remove not needed 'shrink_to_length()'
  Added 'mark_as_const()' to be used when one want to ensure that a string is not changed
2005-03-21 23:41:28 +02:00
unknown
82182de387 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


libmysql/libmysql.c:
  Auto merged
sql/field.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2005-03-21 13:43:25 +01:00
unknown
11e01bfa2d BUG#9072 'Max_error_count' system variable cannot be set to zero
- Chaned min value in mysqld.cc
 - Added testcase to warnings.test


mysql-test/r/warnings.result:
  Added testcase for testing max and min value of max_error_count
mysql-test/t/warnings.test:
  Added testcase for testing max and min value of max_error_count
sql/mysqld.cc:
  Change min value of max_error_count from 1 to 0
2005-03-21 11:07:31 +01:00
unknown
3d8ea9d112 Manual merge of csets from -build tree into main 5.0 tree.
innobase/include/data0type.ic:
  Auto merged
mysql-test/r/endspace.result:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
support-files/mysql.spec.sh:
  Manual merge.
2005-03-21 11:39:47 +03:00
unknown
b7264f8bc1 Federated Storage Handler - test and result fix.
mysql-test/r/federated.result:
  made sure result has SLAVE_PORT!
mysql-test/t/federated.test:
  added --replace_result to a table creation that I forgot to add before
2005-03-20 23:17:35 -08:00
unknown
2ba3544f0e func_group.test, func_group.result:
Added a test case for bug #9210.
sql_select.cc:
  Fixed bug #9210.
  The function calc_group_buffer did not cover the case
  when the GROUP BY expression was decimal.
  Slightly optimized the other code.


sql/sql_select.cc:
  Fixed bug #9210.
  The function calc_group_buffer did not cover the case
  when the GROUP by expression was decimal.
  Slightly optimized the other code.
mysql-test/t/func_group.test:
  Added a test case for bug #9210.
2005-03-19 23:12:50 -08:00
unknown
9739b7a6af Fix 'kill' test to actually test that the connection has
been killed.


mysql-test/r/kill.result:
  Update results
mysql-test/t/kill.test:
  Fix 'ping' to be '--ping' and make test that this is a new
  connection actually test that.
2005-03-18 16:17:10 -08:00
unknown
4fd832bf91 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


libmysql/libmysql.c:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-03-18 20:12:31 +01:00
unknown
b6193540c0 Merge jamppa@bk-internal.mysql.com:/home/bk/mysql-5.0
into a193-229-222-105.elisa-laajakaista.fi:/home/my/bk/mysql-5.0


sql/sql_parse.cc:
  Auto merged
2005-03-18 19:04:09 +02:00
unknown
6c621bbd7f Fixed BUG#6600: Stored procedure crash after repeated calls with check table
mysql-test/r/sp.result:
  New test case for BUG#6600.
mysql-test/t/sp.test:
  New test case for BUG#6600.
sql/sp_head.cc:
  Added yet another multiple result set statement to the list.
sql/sql_parse.cc:
  Have to invalidate SP caches in CHECK TABLE, or it will produce very
  strange results when called in SPs.
2005-03-18 16:52:41 +01:00
unknown
7e79e70515 Did some SP test style changes and added explanatory comments,
and removed a have_innodb.inc inclusion which was left by mistake
in an earlier change.


mysql-test/r/sp_trans.result:
  Changed procedure name and delimiter setting to follow the style of the other SP test files.
mysql-test/t/sp-error.test:
  Added comment with hint for bug test case style.
mysql-test/t/sp-threads.test:
  Added comments, with hint for bug test case style.
mysql-test/t/sp.test:
  Removed have_innodb.inc inclusion.
  Added comments about different SP test files, table usage and
  hint for bug test case style.
mysql-test/t/sp_trans.test:
  Changed procedure name and delimiter setting to follow the style of the other SP test files.
2005-03-18 14:33:46 +01:00
unknown
c94570057c Added more tests to grant2. Fixed some previous tests.
Added new logic to ACL system:

1) If GRANT OPTION (not mysql db):
   Ok to update existing user, but not password.
   Not allowed to make a new user.

2) If UPDATE_ACL to mysql DB:
   Ok to update current user, but not make a new one.

3) If INSERT_ACL to mysql DB:
   Ok to add a new user, but not modify existing.

4) If GRANT OPTION to mysql DB:
   All modifications OK.


mysql-test/r/grant2.result:
  Added more ACL tests and fixed results in some old tests.
mysql-test/t/grant2.test:
  Added more ACL tests and fixed results in some old tests.
sql/sql_acl.h:
  Made check_acl_user() visible to sql_parse.cc
sql/sql_parse.cc:
  Added new logic to ACL system:
  
  1) If GRANT OPTION (not mysql db):
     Ok to update existing user, but not password.
     Not allowed to make a new user.
  
  2) If UPDATE_ACL to mysql DB:
     Ok to update current user, but not make a new one.
  
  3) If INSERT_ACL to mysql DB:
     Ok to add a new user, but not modify existing.
  
  4) If GRANT OPTION to mysql DB:
     All modifications OK.
2005-03-18 13:32:28 +02:00
unknown
0f58efbd48 Manual merge
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/olap.result:
  Auto merged
sql/sql_select.cc:
  Auto merged
BitKeeper/deleted/.del-isamchk.1.in~9d44303f6d951962:
  Auto merged
BitKeeper/deleted/.del-isamlog.1.in~416d91adbf665b19:
  Auto merged
2005-03-17 21:47:46 -08:00
unknown
ee2633a7e2 olap.test:
Added a test case for bug #8617.
sql_select.cc:
  Fixed bug #8617.
  Queries with ROLLUP and LIMIT n returned more than n rows
  if SQL_CALC_FOUND_ROWS was used.


sql/sql_select.cc:
  Fixed bug #8617.
  Queries with ROLLUP and LIMIT n returned more than n rows
  if SQL_CALC_FOUND_ROWS was used.
mysql-test/t/olap.test:
  Added a test case for bug #8617.
2005-03-17 20:18:19 -08:00
unknown
37130fc15d Merge mysql.com:/home/jimw/my/mysql-5.0-build
into mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/t/sp.test:
  Auto merged
2005-03-17 13:38:07 -08:00
unknown
cc9e66f565 sp.test, sp.result:
transactional test removed
sp_trans.test, sp_trans.result:
  new file


mysql-test/r/sp.result:
  transactional test removed
mysql-test/t/sp.test:
  transactional test removed
2005-03-17 22:15:23 +01:00
unknown
04e027156f Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2005-03-17 19:23:45 +01:00
unknown
262bed0a37 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-5.0
into sinisa.nasamreza.org:/mnt/work/petica
2005-03-17 19:33:08 +02:00
unknown
25099e0902 sp.test:
Fix for a bug with test failing with Classic.


mysql-test/t/sp.test:
  Fix for a bug with test failing with Classic.
2005-03-17 19:26:36 +02:00
unknown
eec84895b7 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/item.cc:
  Auto merged
2005-03-17 17:00:31 +01:00
unknown
17791f9500 Merge 4.1 -> 5.0
heap/hp_create.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/olap.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/key.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_string.h:
  Auto merged
client/mysqldump.c:
  Manual merge
mysql-test/r/func_gconcat.result:
  Manual merge
mysql-test/r/func_str.result:
  Manual merge
mysql-test/t/func_gconcat.test:
  Manual merge
sql/ha_heap.cc:
  Manual merge
sql/sql_select.cc:
  Manual merge
2005-03-17 16:51:07 +03:00
unknown
621abfacfe Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0
2005-03-17 13:25:19 +03:00
unknown
278e691ba8 Automerge
sql/log_event.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-03-17 10:10:26 +01:00
unknown
4079a85af4 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0
2005-03-17 11:02:11 +03:00
unknown
5c1b91f1ee Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/handler.cc:
  Auto merged
sql/lock.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2005-03-17 08:46:48 +01:00
unknown
3e4ae65a14 Merge
sql/key.cc:
  Auto merged
mysql-test/r/update.result:
  SCCS merged
mysql-test/t/update.test:
  SCCS merged
2005-03-17 10:59:25 +04:00
unknown
7ceb5c6cef A fix (bug #8942: SUBSTRING_INDEX in UPDATE causes internal loop).
sql/key.cc:
  A fix (bug #8942: SUBSTRING_INDEX in UPDATE causes internal loop).
  For "partial" key parts (e.g. key(a(20), ...) we create different
  key_part->field, see sql/table.cc; so we have to use the eq() 
  function here to compare fields.
2005-03-17 10:24:50 +04:00
unknown
2bbde22d84 Fixed two bugs in MySQL ACL.
First one is related to Bug#7905. One should not be allowed to
create new user with password without UPDATE privilege to
MySQL database. Furthermore, executing the same GRANT statement
twice would actually crash the server and corrupt privilege database.

Other bug was that one could update a column, using the existing
value as basis to calculate the new value (e.g. UPDATE t1 SET a=a+1)
without SELECT privilege to the field (a in the above example)

Fixed tests grant.pl and grant2, which were wrong.
2005-03-17 08:16:56 +02:00
unknown
a131e4d12d Merge rurik.mysql.com:/home/igor/mysql-4.1
into rurik.mysql.com:/home/igor/dev/mysql-4.1-0


sql/item.h:
  Auto merged
2005-03-16 17:50:03 -08:00
unknown
31f6b0dde8 olap.result, olap.test:
Added a test for bug #8615.
sql_select.cc:
  Fixed bug #8615.
  This fix only removed the cause of the reported crash.
  It does not resolve other problems of rollup queries
  with DISTINCT. They were fixed in the previous patch 
  for bug 8616.


sql/sql_select.cc:
  Fixed bug #8615.
  This fix only removed the cause of the reported crash.
  It does not resolve other problems of rollup queries
  with DISTINCT. They were fixed in the previous patch 
  for bug 8616.
mysql-test/t/olap.test:
  Added a test for bug #8615.
mysql-test/r/olap.result:
  Added a test for bug #8615.
2005-03-16 15:55:04 -08:00
unknown
b766082bfb Merge with global tree
mysql-test/r/federated.result:
  merge
sql/ha_federated.cc:
  merge
2005-03-17 01:27:04 +02:00
unknown
1c5ca8061d Move handler dependent tests to the specific handler (myisam, bdb, innodb)
Enabled VARCHAR testing for innodb

NOTE: innodb.test currently fails becasue of a bug in InnoDB. 
I have informed Heikki about this and expect him to fix this ASAP


mysql-test/include/varchar.inc:
  Move handler dependent tests to the specific handler (myisam, bdb, innodb)
mysql-test/r/innodb.result:
  Added varchar tests
mysql-test/r/myisam.result:
  Update results
mysql-test/t/bdb.test:
  Move handler dependent tests to the specific handler (myisam, bdb, innodb)
mysql-test/t/innodb.test:
  Enabled VARCHAR testing
mysql-test/t/myisam.test:
  Move handler dependent tests to the specific handler (myisam, bdb, innodb)
sql/sql_parse.cc:
  Indentation fixes
sql/sql_table.cc:
  Fixed bug introduced when doing cleanup
2005-03-17 01:22:12 +02:00
unknown
94ad6930fb drop database on the right server :) 2005-03-16 23:56:37 +01:00
unknown
e28dc4c7ef log_event.cc:
#ifdef USING_TRANSACTIONS
ha_innodb.cc:
  comment
rpl_drop_temp.test, rpl_drop_temp.result:
  cleanup


mysql-test/r/rpl_drop_temp.result:
  cleanup
mysql-test/t/rpl_drop_temp.test:
  cleanup
sql/ha_innodb.cc:
  comment
sql/log_event.cc:
  #ifdef USING_TRANSACTIONS
2005-03-16 23:47:38 +01:00
unknown
b3ff091f15 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/sql_parse.cc:
  Auto merged
2005-03-16 22:40:58 +01:00
unknown
61a717f67e Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.:/home/patg/test/mysql-5.0
2005-03-16 12:56:40 -08:00
unknown
f9792042eb Fixed binlog.test failure which occured after patch implementing
WL#874 "Extended LOAD DATA" was pushed.


mysql-test/r/binlog.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar
  changes.
mysql-test/t/binlog.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar
  changes.
2005-03-16 23:12:27 +03:00
unknown
a97fd472a9 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.:/home/patg/test/mysql-5.0
2005-03-16 12:05:58 -08:00
unknown
91df4830f2 Merge pcgem.rdg.cyberkinetica.com:/var/db/bk/work-acurtis/bug8670.2
into pcgem.rdg.cyberkinetica.com:/var/db/bk/work-acurtis/bug8670.3


sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2005-03-16 16:27:07 +00:00
unknown
1f91905231 merged
sql/ha_innodb.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-03-16 17:13:43 +01:00
unknown
a3869dd811 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.:/home/patg/test/mysql-5.0
2005-03-16 07:55:56 -08:00
unknown
01774e960b Small fix to innodb.test that Heikki probably simply forgot to commit.
mysql-test/r/innodb.result:
  Added proper cleanup after test.
mysql-test/t/innodb.test:
  We don't expect error if we create varchar(16384) column in Innodb
  table anymore. (Heikki already removed error message from .result
  file.) Also we should do proper cleanup after the test.
2005-03-16 18:48:13 +03:00
unknown
98eecc7b35 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-4.1
2005-03-16 17:06:04 +02:00
unknown
d5ec9ed899 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/dlenev/src/mysql-5.0-eld-exp
2005-03-16 17:00:13 +03:00
unknown
b3a5e5b1fd Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
not always correct for NULL values.
Now they always result a non NULL value even
the argument is NULL. It is more usefull for 
debugging purposes.


mysql-test/r/func_str.result:
  Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
  not always correct for NULL values.
  
  Also, a mistake in EXPORT_SET was fixed.
mysql-test/t/func_str.test:
  Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
  not always correct for NULL values.
sql/item_func.cc:
  Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
  not always correct for NULL values.
sql/item_strfunc.cc:
  Bugs#9129: CHARSET(), COLLATION(), COERCIBILITY()
  not always correct for NULL values.
  
  A minor mistake in EXPORT_SET() was fixed.
2005-03-16 17:44:29 +04:00
unknown
a5c87958a6 Fix for bug#8656: Crash with group_concat on alias in outer table
fixed result_field support of Item_ref
2005-03-16 16:44:28 +03:00
unknown
9245168429 Fix for bug #7100: relay_log_space_max missing from SHOW VARIABLES 2005-03-16 15:57:57 +03:00
unknown
964b6b31bb Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0
2005-03-16 13:37:08 +03:00
unknown
ec919d7428 Fixed behavior of LOAD DATA with subqueries in SET clause.
The idea is to use TABLE_LIST::lock_type for passing type of lock for
target table to mysql_load() instead of using LEX::lock_option 
(which were rewritten by first subselect in SET clause).

This should also fix potential problem with LOAD DATA in SP
(it is important for them to have right lock_type in the table
 list by the end of statement parsing).


mysql-test/r/loaddata.result:
  Added nice test for LOAD DATA with subquery.
mysql-test/t/loaddata.test:
  Added nice test for LOAD DATA with subquery.
sql/log_event.cc:
  Now we don't pass type of lock for target table to mysql_load()
  explicitly . Instead we use TABLE_LIST::lock_type for this table
  which is already properly set here.
sql/mysql_priv.h:
  Now we don't pass type of lock for target table to mysql_load()
  explicitly . Instead we properly set TABLE_LIST::lock_type for
  this table in parser.
sql/sql_load.cc:
  Now we don't pass type of lock for target table to mysql_load()
  explicitly . Instead we properly set TABLE_LIST::lock_type for
  this table in parser.
sql/sql_parse.cc:
  Now we don't pass type of lock for target table to mysql_load()
  explicitly . Instead we properly set TABLE_LIST::lock_type for
  this table in parser.
sql/sql_yacc.yy:
  load_data:
    Let us use TABLE_LIST::lock_type for passing type of lock for target
    table to mysql_load() instead of using LEX::lock_option (which will
    be rewritten by first subselect in SET clause).
2005-03-16 12:13:35 +03:00
unknown
6f36a062c9 mysql-test-run.sh:
Check that there is a disabled.def before using it
disabled.def:
  Reenable ndb tests accidently disabled


mysql-test/t/disabled.def:
  Reenable ndb tests accidently disabled
mysql-test/mysql-test-run.sh:
  Check that there is a disabled.def before using it
2005-03-16 09:23:38 +01:00
unknown
232dc9221d global read lock code now uses a dedicated mutex
(otherwise a deadlock when ALTER writes to
binlog holding LOCK_open, it causes binlog rotation,
binlog waits for prepared transactions to commit, and commit
needs LOCK_open to check for global read lock)


mysql-test/r/flush.result:
  global read lock code now uses a dedicated mutex
mysql-test/t/flush.test:
  global read lock code now uses a dedicated mutex
sql/lock.cc:
  global read lock code now uses a dedicated mutex
sql/mysql_priv.h:
  global read lock code now uses a dedicated mutex
sql/mysqld.cc:
  global read lock code now uses a dedicated mutex
sql/sql_table.cc:
  global read lock code now uses a dedicated mutex
2005-03-16 08:40:19 +01:00
unknown
e16535ce19 olap.result, olap.test:
Added a test case for bug #8616.
item.h:
  Fixed bug #8616.
  Added class Item_null_result used in rollup processing.
sql_select.h, sql_select.cc:
  Fixed bug #8616.
  Added JOIN::rollup_write_data to cover rollup queries
  with DISTINCT. Modified other rollup methods.


sql/sql_select.cc:
  Fixed bug #8616.
  Added JOIN::rollup_write_data to cover rollup queries
  with DISTINCT. Modified other rollup methods.
sql/sql_select.h:
  Fixed bug #8616.
  Added JOIN::rollup_write_data to cover rollup queries
  with DISTINCT. Modified other rollup methods.
sql/item.h:
  Fixed bug #8616.
  Added class Item_null_result used in rollup processing.
mysql-test/t/olap.test:
  Added a test case for bug #8616.
mysql-test/r/olap.result:
  Added a test case for bug #8616.
2005-03-15 22:50:54 -08:00
unknown
24dc8331f7 WL #2094 Federated Storage Engine
Changes to a test with a update to a table with 1001 columns, the last being a blob. 
On HP, the test worked properly, but on other OSs, there's a problem with using the 
blob column in an update where clause. The field method val_string(String *, char *) 
should work, but doesn't seem to deal with blobd, and for some reason, cannot get
the correct value of the blob column from the byte pointer in update_row, "*old_data"
which is a byte pointer to the row in mysql format, that will be replaced with 
"*new_data" (which conveniently has a field pointer to use to get values from).

Will document this.


mysql-test/r/federated.result:
  New test results. These results have been tested on production and hpita2 successfully.
mysql-test/t/federated.test:
  Changed blob column in this test due to some issues with HPUX handling it correctly
  and other OSs not. Will document this (blobs in update where clause)
2005-03-15 18:49:58 -08:00
unknown
5f75c8f5b4 WL#874 "Extended LOAD DATA".
Now one can use user variables as target for data loaded from file
(besides table's columns). Also LOAD DATA got new SET-clause in which
one can specify values for table columns as expressions.

For example the following is possible:
LOAD DATA INFILE 'words.dat' INTO TABLE t1 (a, @b) SET c = @b + 1;

This patch also implements new way of replicating LOAD DATA.
Now we do it similarly to other queries.
We store LOAD DATA query in new Execute_load_query event
(which is last in the sequence of events representing LOAD DATA).
When we are executing this event we simply rewrite part of query which
holds name of file (we use name of temporary file) and then execute it
as usual query. In the beggining of this sequence we use Begin_load_query
event which is almost identical to Append_file event


client/mysqlbinlog.cc:
  Added support of two new binary log events Begin_load_query_log_event and
  Execute_load_query_log_Event which are used to replicate LOAD DATA INFILE.
mysql-test/r/ctype_ucs.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/insert_select.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/loaddata.result:
  Added tests for new LOAD DATA features.
mysql-test/r/mix_innodb_myisam_binlog.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results (don't dare to get rid from binlog positions
  completely since it seems that this test uses them).
mysql-test/r/mysqlbinlog.result:
  New approach for binlogging of LOAD DATA statement. Now we store it as
  usual query and rewrite part in which file is specified when needed.
  So now mysqlbinlog output for LOAD DATA much more closer to its initial
  form. Updated test'd results accordingly.
mysql-test/r/mysqldump.result:
  Made test more robust to other tests failures.
mysql-test/r/rpl000015.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_change_master.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results.
mysql-test/r/rpl_charset.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly
mysql-test/r/rpl_deadlock.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly
mysql-test/r/rpl_error_ignored_table.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/rpl_flush_log_loop.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_flush_tables.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/rpl_loaddata.result:
  New way of replicating LOAD DATA. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event...
  
  Updated test's results wwith new binlog positions.
mysql-test/r/rpl_loaddata_rule_m.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
  Since now LOAD DATA is replicated much in the same way as usual query
  --binlog_do/ignore_db work for it inthe same way as for usual queries.
mysql-test/r/rpl_loaddata_rule_s.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_loaddatalocal.result:
  Added nice test for case when it is important that LOAD DATA LOCAL
  ignores duplicates.
mysql-test/r/rpl_log.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly (don't dare to get rid from binlog 
  positions completely since it seems that this test uses them).
mysql-test/r/rpl_log_pos.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_max_relay_size.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_multi_query.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_relayrotate.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_replicate_do.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_reset_slave.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_rotate_logs.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_server_id1.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_server_id2.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly.
mysql-test/r/rpl_temporary.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/rpl_timezone.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/rpl_until.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results accordingly and tweaked test a bit to bring it
  back to good shape.
mysql-test/r/rpl_user_variables.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/r/user_var.result:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test's results and made it more robust for future similar 
  changes.
mysql-test/t/ctype_ucs.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar
  changes.
mysql-test/t/insert_select.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar
  changes.
mysql-test/t/loaddata.test:
  Added test cases for new LOAD DATA functionality.
mysql-test/t/mix_innodb_myisam_binlog.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/mysqlbinlog.test:
  New way of replicating LOAD DATA local. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event...
  
  Thus we need new binlog positions for LOAD DATA events.
mysql-test/t/mysqlbinlog2.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/mysqldump.test:
  Made test more robust for failures of other tests.
mysql-test/t/rpl_charset.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/rpl_deadlock.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/rpl_error_ignored_table.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar
  changes.
mysql-test/t/rpl_flush_tables.test:
  Addition of two new types of binary log events shifted binlog positions.
  Made test more robust for future similar changes.
mysql-test/t/rpl_loaddata.test:
  New way of replicating LOAD DATA. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event...
  
  Apropritely updated comments in test.
mysql-test/t/rpl_loaddata_rule_m.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar 
  changes.
  Since now LOAD DATA is replicated much in the same way as usual query
  --binlog_do/ignore_db work for it inthe same way as for usual queries.
mysql-test/t/rpl_loaddata_rule_s.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/rpl_loaddatalocal.test:
  Added nice test for case when it is important that LOAD DATA LOCAL
  ignores duplicates.
mysql-test/t/rpl_log.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly (don't dare to get rid from binlog positions
  completely since it seems that this test uses them).
mysql-test/t/rpl_log_pos.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/rpl_multi_query.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly.
mysql-test/t/rpl_temporary.test:
  Addition of two new types of binary log events shifted binlog positions.
  Made test more robust for future similar changes.
mysql-test/t/rpl_timezone.test:
  Addition of two new types of binary log events shifted binlog positions.
  Made test more robust for future similar changes.
mysql-test/t/rpl_until.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and tweaked it a bit to bring it back to good
  shape.
mysql-test/t/rpl_user_variables.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar
  changes.
mysql-test/t/user_var.test:
  Addition of two new types of binary log events shifted binlog positions.
  Updated test accordingly and made it more robust for future similar
  changes.
sql/item_func.cc:
  Added Item_user_var_as_out_param class that represents user variable
  which used as out parameter in LOAD DATA.
  
  Moved code from Item_func_set_user_var::update_hash() function to
  separate static function to be able to reuse it in this new class.
sql/item_func.h:
  Added Item_user_var_as_out_param class that represents user variable
  which used as out parameter in LOAD DATA.
sql/log_event.cc:
  New way of replicating LOAD DATA. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event.
sql/log_event.h:
  New way of replicating LOAD DATA. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event.
sql/mysql_priv.h:
  Now mysql_load() has two more arguments. They are needed to pass list of
  columns and corresponding expressions from new LOAD DATA's SET clause.
sql/share/errmsg.txt:
  Added new error message which is used to forbid loading of data from
  fixed length rows to variables.
sql/sql_lex.h:
  Added LEX::fname_start/fname_end members. 
  They are pointers to part of LOAD DATA statement which should be
  rewritten during replication (file name + little extra).
sql/sql_load.cc:
  Added support for extended LOAD DATA. 
  Now one can use user variables as target for data loaded from file 
  (besides table's columns). Also LOAD DATA got new SET-clause in which
  one can specify values for table columns as expressions.
  
  Updated mysql_load()/read_fixed_length()/read_sep_field() to support
  this functionality (now they can read data from file to both columns and
  variables and assign do calculations and assignments specified in SET
  clause).
  
  We also use new approach for LOAD DATA binlogging/replication.
sql/sql_parse.cc:
  mysql_execute_command():
    Since now we have SET clause in LOAD DATA we should also check
    permissions for tables used in its expressions. Also mysql_load()
    has two more arguments to pass information about this clause.
sql/sql_repl.cc:
  New way of replicating LOAD DATA. Now we do it similarly to other
  queries. We store LOAD DATA query in new Execute_load_query event
  (which is last in the sequence of events representing LOAD DATA).
  When we are executing this event we simply rewrite part of query which
  holds name of file (we use name of temporary file) and then execute it
  as usual query. In the beggining of this sequence we use Begin_load_query
  event which is almost identical to Append_file event.
sql/sql_repl.h:
  struct st_load_file_info:
    Removed memebers which are no longer needed for LOAD DATA binnlogging.
sql/sql_yacc.yy:
  Added support for extended LOAD DATA syntax. Now one can use
  user variables as target for data loaded from file (besides table's 
  columns). Also LOAD DATA got new SET-clause in which one can specify
  values for table columns as expressions.
  
  For example the following is possible:
  LOAD DATA INFILE 'words.dat' INTO TABLE t1 (a, @b) SET c = @b + 1;
  
  Also now we save pointers to the beginning and to the end of part of 
  LOAD DATA statement which should be rewritten during replication.
2005-03-16 04:32:47 +03:00
unknown
8e7c17a868 Bug#8670
Rework to resolve ambigious grammer: conflict in join expression
  handling of parentheses for nested joins and derived tables.
  Tests included of failing statements
Optimize item construction for AND/OR logical expressions


mysql-test/r/select.result:
  Bug#8670
    Tests for failing expressions
mysql-test/t/select.test:
  Bug#8670
    Tests for failing expressions
sql/sql_parse.cc:
  Bug#8670
    method st_select_lex::end_nested_join() returns NULL when
    there are no elements in the join.
sql/sql_yacc.yy:
  Optimize construction for Item_cond_or and Item_cond_and
    Reduces object count in case of complex expressions.
  Bug#8670
    Solve ambigious grammar.
    Fix handling of parentheses in join expressions to
    correct handling of nested joins and derived tables.
2005-03-16 00:13:23 +00:00
unknown
6272f6f215 mysql-test-run.sh:
Added feature to disable tests from a list in a file "disabled.def"
  Moved down the code that disables, so that --do-test and --start-from
  don't list the disabled tests not in range.
disabled.def:
  List of test cases to temporarely disable


mysql-test/t/disabled.def:
  List of test cases to temporarely disable
mysql-test/mysql-test-run.sh:
  Added feature to disable tests from a list in a file "disabled.def"
  Moved down the code that disables, so that --do-test and --start-from
  don't list the disabled tests not in range.
2005-03-15 19:48:42 +01:00
unknown
b54f4c51bb Add support for showing table type to mysqlshow command. (Bug #5036)
client/mysqlshow.c:
  Add support for -t (--show-table-type) switch
mysql-test/mysql-test-run.sh:
  Add support for running mysqlshow
2005-03-15 10:46:43 -08:00
unknown
2eb81f920a Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0
2005-03-15 20:58:54 +03:00
unknown
6fcd1a40e2 Fix for bug #8790:Test 'information_schema': 'Max_data_length' shows 10 * (2 giga - 1) + 9 2005-03-15 20:54:44 +03:00
unknown
268a3ecc8b Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/home/ram/work/5.0
2005-03-15 20:06:37 +04:00
unknown
3c42daa9a3 merging
heap/hp_create.c:
  Auto merged
sql/filesort.cc:
  Auto merged
mysql-test/r/heap.result:
  manual merging
mysql-test/t/heap.test:
  manual merging
sql/ha_heap.cc:
  manual merging
2005-03-15 19:31:52 +04:00
unknown
ef2ca9781c Merged WL#2269 to mysql-5.0
sql/ha_ndbcluster.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/ha_ndbcluster.cc:
  Manual merge
2005-03-15 15:22:40 +01:00
unknown
aa5dba42ef WL#2269 Enable query cache for NDB part 2
-This is mostly fixes for correct behaviour when using query cache + transactions + the thread that
fetches commit count from NDB at regular intervals. The major fix is to add a
list in thd_ndb, that keeps a list of NDB_SHARE's that were modified by
transaction and then "clearing" them in ndbcluster_commit.


mysql-test/r/ndb_cache2.result:
  Updated test cases for the ndb_util thread, more simultaneous tables and more tesst
mysql-test/t/ndb_cache2.test:
  Updated test cases for the ndb_util thread, more simultaneous tables and more advanced tesst
sql/ha_ndbcluster.cc:
  Add table changed during transaction to list of changed tables in Thd_ndb, this list is then used in ndbcluster_commit to invalidate the cached commit_count in share
  Fix so that ndb_util_thread uses milliseconds "sleeps"
  Changed so that ndb_commit_count uses the commit_count from share if available
sql/ha_ndbcluster.h:
  Add commit_count_lock to NBD_SHARE, use for detecting simultaneous attempts to update commit_count
  Add list of tables changed by transaction to Thd_ndb
  Change check_ndb_connection to take thd as argument, use current_thd as default
  Added m_rows_changed variable to keep track of if this handler has modified any records within the transaction
sql/set_var.cc:
  Change format of code
  Sort sys__ variables in aplha order
2005-03-15 15:03:25 +01:00
unknown
9af776c8cb Cleanup 2005-03-15 16:54:11 +03:00
unknown
c703954578 # Bug#8785 Problem with nested concats and
character set conversion of a string constant.


mysql-test/r/ctype_utf8.result:
  Adding test
mysql-test/t/ctype_utf8.test:
  Addign test
sql/item_strfunc.cc:
  Remove previous fix: it was not 100% correct.
  A non const_item() can return a constant String.
sql/sql_string.h:
  A new method to cut Alloced_length to str_length for
  string constants, to avoid reusing them as a buffer
  in things like CONCAT().
2005-03-15 17:15:47 +04:00
unknown
23d48b7dc3 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b8799
2005-03-15 14:13:44 +04:00
unknown
9c04a77e0c A fix (bug #8489: Strange auto_increment behaviour with HEAP table).
heap/hp_create.c:
  A fix (bug #8489: Strange auto_increment behaviour with HEAP table).
  Handle autoincrement keys MyISAM-way.
include/heap.h:
  A fix (bug #8489: Strange auto_increment behaviour with HEAP table).
  Handle autoincrement keys MyISAM-way.
sql/ha_heap.cc:
  A fix (bug #8489: Strange auto_increment behaviour with HEAP table).
  Handle autoincrement keys MyISAM-way.
2005-03-15 13:32:12 +04:00
unknown
01df5a157f Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.:/home/patg/test/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
2005-03-15 00:36:38 -08:00
unknown
2b1a8acda5 This changeset contains changes approved in code review by
Konstja and Georg, change sets 1.1806, 1.1805. These changes has been successfully 
tested on both my own workstation (Suse 9.0) and production.mysql.com.


mysql-test/r/federated.result:
  new test results for error handling tests.
mysql-test/t/federated.test:
  new error handling tests
sql/ha_federated.cc:
  - check_foreign_data source added
  - table names now enclosed in '`' to allow for '%' or other characters
  - better error handling
  - mysql_init now checked to see if it returns true/false, error out if false (Georg)
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-15 00:32:21 -08:00
unknown
54baac55b6 Merge mysql.com:/home/psergey/mysql-4.1-bug8510
into mysql.com:/home/psergey/mysql-5.0-bug8510


mysql-test/r/ansi.result:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-03-15 09:29:54 +03:00
unknown
155cfb3942 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug8510


sql/set_var.cc:
  Auto merged
2005-03-15 04:09:41 +03:00
unknown
897849e5d8 WL#926 "AVG(DISTINCT) and other distincts", part 2 (out of 3): clean up
Item_sum_count_distinct, and
deploy Unique for use with COUNT(DISTINCT) if there is no blob
column in the list of DISTINCT arguments.


mysql-test/r/count_distinct2.result:
  Test results fixed.
mysql-test/r/func_group.result:
  Updated.
mysql-test/r/sum_distinct.result:
  Updated.
mysql-test/t/func_group.test:
  Add a test for COUNT(DISTINCT) and true varchar and case-insensitive
  collation. The table in the test contains only two distinct values.
mysql-test/t/sum_distinct.test:
  Since now we support INSERT INTO t1 (a) SELECT a+1 FROM t1, shorten
  the test.
  Add a nominal test for AVG(DISTINCT)
sql/item_sum.cc:
  Implementation of cleaned up Item_sum_count_distinct.
  Fixed a bug with COUNT(DISTINCT) and new VARCHAR and collations.
  Fixed a bug wiht AVG(DISTINCT) and wrong number of output digits
  after decimal point.
sql/item_sum.h:
  Cleanup for Item_sum_count_distinct.
  Now if the list of distinct arguments doesn't contain a blob column,
  we always use Unique and merge-sort to find distinct values.
sql/sql_class.h:
  Added a short-cut to find number of elements in Unique if all elements fit
  into memory.
2005-03-15 03:46:19 +03:00
unknown
6950d57ffd Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0
2005-03-14 20:45:10 +01:00
unknown
df93b4fa35 merged
sql/item_cmpfunc.h:
  Auto merged
mysql-test/r/join_outer.result:
  !bk-eb merged
mysql-test/t/join_outer.test:
  !bk-eb merged
2005-03-14 18:46:30 +01:00
unknown
9f4c18f044 WL#2353 EXPLAIN support for condition pushdown 2005-03-14 15:26:10 +01:00
unknown
ebbee9d974 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


mysql-test/r/join_outer.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-03-14 14:47:51 +01:00
unknown
1c23473751 anotehr fix for Item_func_isnotnull::not_null_tables()
mysql-test/r/join_outer.result:
  anotehr test for Item_func_isnotnull::not_null_tables()
mysql-test/t/join_outer.test:
  anotehr test for Item_func_isnotnull::not_null_tables()
2005-03-14 11:04:42 +01:00
unknown
7a105affb2 Item_func_isnotnull::not_null_tables - return 0 if not top-level item
mysql-test/r/join_outer.result:
  test for some obscure usage of IS NOT NULL
mysql-test/t/join_outer.test:
  test for some obscure usage of IS NOT NULL
2005-03-13 23:56:25 +01:00
unknown
2427f3695c correct not_null_tables() for XOR and AND
correct top_level_item for XOR


mysql-test/r/join_outer.result:
  one more test
mysql-test/t/join_outer.test:
  one more test
2005-03-13 16:34:40 +01:00
unknown
dad8e1f59a join_outer.test:
Correction after manual merge.


mysql-test/t/join_outer.test:
  Correction after manual merge.
2005-03-13 01:07:01 -08:00
unknown
7bf4a418cb Manual merge
sql/item_cmpfunc.h:
  Auto merged
2005-03-13 00:40:55 -08:00
unknown
7cecea527d join_outer.result, join_outer.test:
Added a test case for bug #9017.
item_cmpfunc.h:
  A wrong not_null_tables method for Item_cond_xor
  caused a conversion of a left join into an inner join
  that was not valid.


sql/item_cmpfunc.h:
  A wrong not_null_tables method for Item_cond_xor
  caused a conversion of a left join into an inner join
  that was not valid.
mysql-test/t/join_outer.test:
  Added a test case for bug #9017.
mysql-test/r/join_outer.result:
  Added a test case for bug #9017.
2005-03-12 23:31:52 -08:00
unknown
deabb45081 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/mysql_priv.h:
  Auto merged
2005-03-12 20:17:16 +01:00
unknown
fe482074d9 Update tests and test results after merge, disable broken NDB tests
mysql-test/r/information_schema.result:
  Update test result
mysql-test/r/query_cache.result:
  Reset query_cache_type for test
mysql-test/t/query_cache.test:
  Update test result
mysql-test/t/ndb_alter_table.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_autodiscover.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_autodiscover2.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_cache_multi.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_cache_multi2.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_multi.disabled:
  ***MISSING WEAVE***
mysql-test/t/ndb_restore.disabled:
  ***MISSING WEAVE***
2005-03-11 15:06:03 -08:00
unknown
52050d138e Merge bk-internal:/home/bk/mysql-5.0
into mysql.com:/home/jimw/my/mysql-5.0-clean


mysql-test/r/join_outer.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
2005-03-11 12:47:29 -08:00
unknown
b1e512128b Merge query_cache tests
Build-tools/Do-compile:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
scripts/mysqld_safe.sh:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
mysql-test/r/query_cache.result:
  Update results
mysql-test/t/query_cache.test:
  Merge test
2005-03-11 12:38:38 -08:00
unknown
f609d604d2 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/ha_ndbcluster.cc:
  Auto merged
2005-03-11 21:37:52 +01:00
unknown
7a053c7d60 BUG#9101 - RELEASE/ROLLBACK TO SAVEPOINT did not forget savepoints correctly
mysql-test/r/innodb.result:
  more savepoint tests
mysql-test/t/innodb.test:
  more savepoint tests
2005-03-11 21:10:41 +01:00
unknown
befe4fa99f Merge test and results
sql/sql_table.cc:
  Auto merged
mysql-test/r/query_cache.result:
  Update results
mysql-test/t/query_cache.test:
  Merge tests
2005-03-11 11:07:32 -08:00
unknown
579e96ce30 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/home/ram/work/5.0.b9029
2005-03-11 12:30:55 +04:00
unknown
324a566832 Merge mysql.com:/home/psergey/mysql-4.1-bug8711
into mysql.com:/home/psergey/mysql-5.0-bug8711


mysql-test/r/join_outer.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
2005-03-11 02:26:38 +03:00
unknown
ff2fcba35b Merge
sql/item_cmpfunc.h:
  Auto merged
mysql-test/r/join_outer.result:
  SCCS merged
mysql-test/t/join_outer.test:
  SCCS merged
2005-03-11 02:23:16 +03:00
unknown
7c90fa7b2c Fix for BUG#8711: "<=>" may have true value for NULL arguments, so make
Item_func_equal::not_null_tables() always return 0.


mysql-test/r/join_outer.result:
  Testcase for BUG#8711
mysql-test/t/join_outer.test:
  Testcase for BUG#8711
sql/item_cmpfunc.h:
  Fix for BUG#8711: "<=>" may have true value for NULL arguments, i.e. it can accept NULL-complemented 
  table rows. This differs from assumptions made in Item_func::not_null_tables(), so add 
  Item_func_equal::not_null_tables().
  Item_func_equal::not_null_tables_cache value doesn't make sense now, but we still let it be
  calculated (and ignore it)
2005-03-11 02:17:03 +03:00
unknown
1690bab938 a fix (bug #9029 Traditional: Wrong SQLSTATE returned for string truncation).
sql/field.cc:
  a fix (bug #9029 Traditional: Wrong SQLSTATE returned for string truncation).
  Should issue ER_DATA_TOO_LONG in 'traditional' mode when data truncated.
2005-03-10 17:08:45 +04:00
unknown
070fe467a3 fixed left expression of IN/ALL/ANY subquery transformation support (BUG#8888)
mysql-test/r/subselect.result:
  result changing
  fixed last test
  test of transformation of left expression of subquery
mysql-test/t/subselect.test:
  fixed last test
  test of transformation of left expression of subquery
sql/item_subselect.cc:
  fixfields made for left part of IN/ALL/ANY subquery before calling cols() to detect type of transformation (scalar or row)
  similar action of both transformation moved to separate function
sql/item_subselect.h:
  optimised field initialization and new method
2005-03-10 14:01:22 +02:00
unknown
db93db85b6 Merge
mysql-test/r/select.result:
  Auto merged
mysql-test/t/select.test:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/item.cc:
  SCCS merged
2005-03-10 13:59:48 +02:00
unknown
dd843ee4b5 Merge mysql.com:/home/timka/mysql/src/4.1-bug-7425
into mysql.com:/home/timka/mysql/src/4.1-dbg
2005-03-10 11:50:55 +02:00
unknown
83fa3560bc Merge rurik.mysql.com:/home/igor/dev/mysql-4.1-0
into rurik.mysql.com:/home/igor/dev/mysql-5.0-0


mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
netware/BUILD/mwenv:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
2005-03-09 16:53:20 -08:00
unknown
85be2e57ab Manual merge
sql/item_strfunc.cc:
  Auto merged
2005-03-09 10:58:52 -08:00
unknown
146df30f79 Fix for BUG#7425.
The reported problems were due to two completely unrelated omissions.
1) The file sort procedure didn't correctly create the sort key in
   make_sortkey when the sortkey was an unsigned integer.
2) The name resolution procedure for column references inside a HAVING
   clause did not propagate the unsigned_flag of the resolved references.
This patch corrects both problems.


mysql-test/r/select.result:
  Added test result for BUG#7425.
mysql-test/t/select.test:
  Added test for BUG#7425.
sql/filesort.cc:
  Take into account whether 'item' represents a signed or an unsigned integer.
sql/item.cc:
  Once an Item_ref is resolved, propagate the unsigned_flag to the resolved item.
2005-03-09 16:51:03 +02:00
unknown
48577bb59f merged
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
Build-tools/Do-compile:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
include/my_sys.h:
  Auto merged
innobase/buf/buf0lru.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/include/page0page.ic:
  Auto merged
innobase/include/srv0srv.h:
  Auto merged
innobase/os/os0thread.c:
  Auto merged
innobase/rem/rem0cmp.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/trx/trx0sys.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
innobase/ut/ut0ut.c:
  Auto merged
myisam/ft_parser.c:
  Auto merged
myisam/mi_create.c:
  Auto merged
mysql-test/Makefile.am:
  Auto merged
mysql-test/mysql-test-run.pl:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/ndb_alter_table.result:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/ndb_alter_table.test:
  Auto merged
mysys/hash.c:
  Auto merged
mysys/my_bitmap.c:
  Auto merged
ndb/src/kernel/blocks/ndbcntr/NdbcntrMain.cpp:
  Auto merged
scripts/make_binary_distribution.sh:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-03-09 14:09:06 +01:00
unknown
3b214ab3e8 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/log.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2005-03-09 13:02:51 +01:00
unknown
a0f63f1b81 don't close binlog in the destructor - use explictit MYSQL_LOG::cleanup for this
mysql-test/r/fulltext.result:
  new test, duplicate test removed
mysql-test/t/fulltext.test:
  new test, duplicate test removed
sql/slave.cc:
  close relay log explicitly
2005-03-09 12:29:51 +01:00
unknown
44d66d26dc func_str.result, func_str.test:
Added a test case for bug #8669.
item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.


sql/item_strfunc.cc:
  Fixed bug #8669.
  Function AES_DECRYPT can return NULL value.
mysql-test/t/func_str.test:
  Added a test case for bug #8669.
mysql-test/r/func_str.result:
  Added a test case for bug #8669.
2005-03-09 00:15:51 -08:00
unknown
dd2306839a Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into pcgem.rdg.cyberkinetica.com:/var/db/bk/work-acurtis/bug3788.4


mysql-test/r/sp.result:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-03-09 01:15:42 +00:00
unknown
ce16c895c2 Merge in fix Bug#3788
mysql-test/r/information_schema.result:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_head.cc:
  Auto merged
sql/sp_head.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
mysql-test/r/sp.result:
  Merge
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-08 22:32:09 +00:00
unknown
1250899c0d Fixing post-merge errors 2005-03-09 00:09:18 +02:00
unknown
12c6eb3b08 post merge fixes
sql/sql_parse.cc:
  Auto merged
2005-03-08 22:59:21 +02:00
unknown
39c32324d6 making a better test case for bug #8850
mysql-test/r/sp.result:
  fixing results for new test
mysql-test/t/sp.test:
  making a new test with autocommit set to 0 and 1.
  Second CALL is in autocommit mode to prove that the relevant bug 
  (bug #8550) is fixed.
2005-03-08 22:44:35 +02:00
unknown
abe6094ac4 Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2005-03-08 19:47:49 +01:00
unknown
f70688e2aa BUG#6635 - test_if_skip_sort_order() thought it can skip filesort
for fulltext searches too
2005-03-08 19:45:55 +01:00
unknown
4e8c5c1969 Fix to make builds possible
mysql-test/r/mysqldump.result:
  Fix for avoiding version text
mysql-test/t/mysqldump.test:
  Fix for avoiding version text
2005-03-08 20:06:08 +02:00
unknown
45b5e513c6 Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-03-08 09:51:00 +01:00
unknown
8e24e6079f Flush entries from the query cache for tables used in
administrative statements that may alter the table, such
as REPAIR TABLE. (Bug #8480)


mysql-test/r/query_cache.result:
  Add new results
mysql-test/t/query_cache.test:
  Add regression test
sql/sql_table.cc:
  Make sure entries are flushed from the query cache for
  any administrative command run on a table that acquires
  a write lock on it (and thus might change it), like 
  REPAIR TABLE.
2005-03-07 18:15:19 -08:00
unknown
25f8623fff Fixed BUG#8937: Stored Procedure: AVG() works as SUM() in SELECT ... INTO statement
mysql-test/r/sp.result:
  New test case for BUG#8937.
mysql-test/t/sp.test:
  New test case for BUG#8937.
sql/item_sum.h:
  Added val_int() method for Item_sum_avg for forced int types (in SPs for instance),
  otherwise Item_sum_sum::val_int() is used.
2005-03-07 18:09:53 +01:00
unknown
00a163d46f Fix for bug #8935 CAST(time AS DECIMAL) crashes
mysql-test/r/cast.result:
  test result
mysql-test/r/func_group.result:
  test result
mysql-test/t/cast.test:
  test case
sql/field.cc:
  this assert isn't correct actually
2005-03-07 20:53:51 +04:00
unknown
804a2a8cdf Reorganized sp.test (all bugs at the end now).
mysql-test/r/sp.result:
  Reorganized tests (all bugs at the end now) and made some tests adopt to the file's style.
mysql-test/t/sp.test:
  Reorganized tests (all bugs at the end now) and made some tests adopt to the file's style.
2005-03-07 17:16:37 +01:00
unknown
16da840b78 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.1
into sinisa.nasamreza.org:/mnt/work/mysql-4.1


BitKeeper/etc/ignore:
  auto-union
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
2005-03-07 16:23:41 +02:00
unknown
01c3fb8ed1 Merging 2005-03-07 17:45:39 +04:00
unknown
34ff8fbdb1 Fix for bug #8465 (MIN, MAX return incorrect result)
mysql-test/r/func_group.result:
  test result fixed
mysql-test/t/func_group.test:
  testcase added
2005-03-07 16:38:05 +04:00
unknown
07d5ddb755 Fix for bug #8464 (AVG returns incorrect result)
Actually problem was not in AVG function, but in SUM before the AVG in the
query.


mysql-test/r/func_group.result:
  appropriate test result
mysql-test/t/func_group.test:
  test case added
strings/decimal.c:
  in this case we also need to make fsizes equal
2005-03-07 16:08:06 +04:00
unknown
8e8dfe43db Fix for Bug #8753 Invalid schema object version after dropping index 2005-03-07 10:21:38 +01:00
unknown
581e6a2b86 A fix for a bug #8830, which occured when binary data from blob was
dumped with --hex-blob and --skip-extended-insert options.


BitKeeper/etc/ignore:
  Added support-files/ndb-config-2-node.ini to the ignore list
client/mysqldump.c:
  A fix for a bug #8830. All that was necessary was to use unsigned  char
  instead of signed  char.
mysql-test/r/mysqldump.result:
  A result for   test case for bug #8830.
mysql-test/t/mysqldump.test:
  Test case for bug #8830.
2005-03-05 22:06:07 +02:00
unknown
2fc5d274e8 Fixing bug #8850 in such a way that when TRUNCATE is called within
stored  procedure,  it  is converted  to DELETE.


mysql-test/r/sp.result:
  A result for  the  test  case  for bug #8850
mysql-test/t/sp.test:
  A test  case  for the bug #8850
sql/sql_delete.cc:
  A fix for bug  #8850, plus adding a missing call  to mysql_init_select(),
  which  caused mem_root corruption.
sql/sql_parse.cc:
  A fix for the bug #8850
BitKeeper/etc/ignore:
  Added acinclude.m4 to the ignore list
2005-03-05 21:44:15 +02:00
unknown
e75e10ddab func_group.test, func_str.result, func_group.result:
after merge fixes


mysql-test/r/func_group.result:
  after merge fixes
mysql-test/r/func_str.result:
  after merge fixes
mysql-test/t/func_group.test:
  after merge fixes
2005-03-05 20:44:22 +04:00
unknown
e7eac0274b Merge
BitKeeper/etc/logging_ok:
  auto-union
innobase/trx/trx0trx.c:
  Auto merged
mysql-test/r/ctype_collate.result:
  Auto merged
mysql-test/r/func_system.result:
  Auto merged
mysql-test/r/type_blob.result:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_strfunc.h:
  Auto merged
sql/opt_sum.cc:
  Auto merged
innobase/ut/ut0mem.c:
  e
  merge from 4.1
mysql-test/r/func_group.result:
  merge from 4.1
mysql-test/r/func_str.result:
  merge from 4.1
mysql-test/t/func_group.test:
  merge from 4.1
2005-03-05 18:20:35 +04:00
unknown
0d7e68c92a WL2131: Access control for SHOW ... PROCEDURE|FUNCTION ... 2005-03-05 14:35:32 +03:00
unknown
f1c81bf669 logging_ok:
Logging to logging@openlogging.org accepted
func_group.result, func_group.test:
  Added a test case for bug #8893.
opt_sum.cc:
  A misplaced initialization for the returned parameter
  prefix_len in the function find_key_for_maxmin caused
  usage of a wrong key prefix by the min/max optimization
  in cases when the matching index was not the first index
  that contained the min/max field.


sql/opt_sum.cc:
  A misplaced initialization for the returned parameter
  prefix_len in the function find_key_for_maxmin caused
  usage of a wrong key prefix by the min/max optimization
  in cases when the matching index was not the first index
  that contained the min/max field.
mysql-test/t/func_group.test:
  Added a test case for bug #8893.
mysql-test/r/func_group.result:
  Added a test case for bug #8893.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-04 20:24:13 -08:00
unknown
1220069c53 Bug#3788
Crashes with stored procedure return non-string values
  Also fixes Bug#2773


mysql-test/r/information_schema.result:
  Bug#3788
    Fix results for bugfix
mysql-test/r/sp.result:
  Bug#3788
    Tests for Bug
    Fix results for bugfix
mysql-test/t/sp.test:
  Bug#3788
    New tests for bug
sql/item.cc:
  Fix unrelated crash in view test with --ps-protocol.
sql/item_func.cc:
  Bug#3788
    Alter how SP function result types are handled.
sql/item_func.h:
  Bug#3788
    Alter how SP function result types are handled.
sql/mysql_priv.h:
  Bug#3788
    Prototypes for new global functions
sql/sp.cc:
  Bug#3788
    Alter how function return type is reported
sql/sp_head.cc:
  Bug#3788
    Change how function return types are stored for SPs
sql/sp_head.h:
  Bug#3788
    Change how function return types are stored for SPs
sql/sql_parse.cc:
  Bug#3788
    Split out field construction into its own function
sql/sql_table.cc:
  Bug#3788
    Split out field preparation code into its own function
sql/sql_yacc.yy:
  Bug#3788
    Change how function return types are stored for SPs
sql/unireg.cc:
  Bug#3788
    Add assertion check
2005-03-04 21:14:35 +00:00
unknown
6e362a20b7 Fix for bug #8431 (FLOOR returns incorrect result)
mysql-test/r/type_newdecimal.result:
  test result fixed
mysql-test/t/type_newdecimal.test:
  test case enlarged for FLOOR and CEILING functions
sql/item_func.cc:
  floor::int_op fixed - it should work differently depending on operand's type
2005-03-04 23:06:00 +04:00
unknown
b1095fb0cd Manual merge SP-locking improvements patch with current tree.
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/sp.result:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/sp.test:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sp_rcontext.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/sp_head.cc:
  Manual merge.
sql/sql_class.cc:
  Manual merge.
sql/sql_parse.cc:
  Manual merge.
sql/sql_yacc.yy:
  Manual merge.
2005-03-04 17:46:45 +03:00
unknown
ac9f68b9fa Better approach for prelocking of tables for stored routines execution
and some SP-related cleanups.

- We don't have separate stage for calculation of list of tables
  to be prelocked and doing implicit LOCK/UNLOCK any more.
  Instead we calculate this list at open_tables() and do implicit
  LOCK in lock_tables() (and UNLOCK in close_thread_tables()).
  Also now we support cases when same table (with same alias) is
  used several times in the same query in SP.

- Cleaned up execution of SP. Moved all common code which handles
  LEX and does preparations before statement execution or complex
  expression evaluation to auxilary sp_lex_keeper class. Now 
  all statements in SP (and corresponding instructions) that
  evaluate expression which can contain subquery have their
  own LEX.


mysql-test/r/lock.result:
  Replaced wrong error code with the correct one after fixing bug in
  SP-locking.
mysql-test/r/mysqldump.result:
  Added dropping of view which is used in test to its beginning.
mysql-test/r/sp.result:
  Added tests for improved SP-locking.
  Temporarily disabled tests for SHOW PROCEDURE STATUS and alike
  (Until Monty will allow to open mysql.proc under LOCK TABLES without
  mentioning it in lock list).
  Replaced wrong results of test for bug #5240 with correct results after
  fixing bug in handling of cursors.
mysql-test/t/lock.test:
  Replaced wrong error code with the correct one after fixing bug in
  SP-locking.
mysql-test/t/mysqldump.test:
  Added dropping of view which is used in test to its beginning.
mysql-test/t/sp.test:
  Added tests for improved SP-locking.
  Temporarily disabled tests for SHOW PROCEDURE STATUS and alike
  (Until Monty will allow to open mysql.proc under LOCK TABLES without
  mentioning it in lock list).
  Removed test for bug #1654 since we already test exactly this function
  in one of SP-locking tests.
  Removed comment about cursor's wrong behavior in test for bug #5240
  after fixing bug which was its cause.
sql/item_func.cc:
  Removed comment which is no longer true.
sql/mysql_priv.h:
  Changed open_tables() signature.
  Now its 2nd parameter is in/out since it can add elements to table list.
sql/sp.cc:
  sp_find_procedure():
   Added one more parameter which enforces cache only lookup.
  
  sp_merge_hash():
   Now uses its return value to indicate that first of two hashes changed
   as result of merge.
  
  sp_cache_routines():
   This function caches all stored routines used in query now.
sql/sp.h:
  - sp_find_procedure() now has one more parameter which enforces cache only
    lookup.
  - sp_merge_hash() now uses its return value to indicate that first of two
    hashes changed as result of merge.
  - sp_cache_routines() caches all stored routines now. So it does not need
    third argument any more.
sql/sp_head.cc:
  sp_head::sp_head():
   Added initialization of new m_spfuns and m_spprocs members.
  
  sp_head::execute():
   Let us save/restore part of thread context which can be damaged by
   execution of instructions.
  sp_head::execute_function()/execute_procedure():
   Now it is responsibility of caller to close tables used in
   subqueries which are passed as routine parameters.
  
  sp_head::restore_lex():
   Let us accumulate information about routines used by this one
   in new m_spfuns, m_spprocs hashes.
  
  sp_lex_keeper::reset_lex_and_exec_core()
   Main method of new auxilary sp_lex_keeper class to which instructions 
   delegate responsibility for handling LEX and preparations before
   executing statement or calculating complex expression.
  
  Since all instructions which calculate complex expression or execute
  command now use sp_lex_keeper they have to implement
  sp_instr::exec_core() method. Most of instruction specific logic
  has moved from sp_instr::execute() to this new method.
  
  Removed sp_instr_set_user_var class which is no longer used, because
  nowdays we allow execution of statements in stored functions and
  triggers.
  
  sp_merge_table_list() became sp_head::merge_table_list() method. It
  also treats sp_head::m_sptabs as multi-set of tables now.
  
  sp_hash_to_table_list() became sp_head::add_used_tables_to_table_list().
  It takes into account that sp_head::m_sptabs is multi-set and allocates
  object into persistent arena of PS.
  
  Removed sp_merge_table_hash(), sp_open_and_lock_tables(),
  sp_unlock_tables(), sp_merge_routine_tables() methods since they are not
  used by new prelocking mechanism.
  
  Added sp_add_sp_tables_to_table_list() which serves for adding tables needed
  by routines used in query to the query table list for prelocking.
sql/sp_head.h:
  class sp_head:
  - Added m_spfuns, m_spprocs members for storing names of routines used
    by this routine.
  - Added add_used_tables_to_table_list() method which allows to add
    tables needed by this routine to query's table list.
  - Converted sp_merge_table_list() to sp_head::merge_table_list() method.
  - Changed semantics of THD::m_sptabs. Now it is multi-set which contains
    only tables which are used by this routine and not routines that are
    called from this one.
  
  Removed sp_merge_routine_tables(), sp_merge_table_hash(),
  sp_open_and_lock_tables(), sp_unlock_tables() calls since they are not
  used for our prelocking list calculation.
  
  Added auxilary sp_lex_keeper class to which instructions delegate
  responsibility for handling LEX and preparations before executing
  statement or calculating complex expression. This class uses
  new sp_instr::exec_core() method which is responsible for executing
  instruction's core function after all preparations were made.
  
  All instructions which hold and calculate complex expression now have
  their own LEX (by aggregating sp_lex_keeper instance). sp_instr_stmt
  now uses sp_lex_keeper too.
  
  Removed sp_instr_set_user_var class which is no longer used, because
  nowdays we allow execution of statements in stored functions and
  triggers.
sql/sp_rcontext.cc:
  Now sp_cursor holds pointer to sp_lex_keeper instead of LEX.
sql/sp_rcontext.h:
  Now sp_cursor holds pointer to sp_lex_keeper instead of LEX.
sql/sql_acl.cc:
  acl_init(), grant_init():
    Now we use simple_open_n_lock_tables() instead of explicit
    calls to open_tables() and mysql_lock_tables().
sql/sql_base.cc:
  Implemented support for execution of statements in "prelocked" mode.
  
  When we have statement which uses stored routines explicitly or
  implicitly (via views or triggers) we have to open and lock all tables
  for these routines at the same time as tables for the main statement.
  In fact we have to do implicit LOCK TABLES at the begining of such
  statement and implict UNLOCK TABLES at its end. We call such mode
  "prelocked".
  
  When open_tables() is called for the statement tables which are needed
  for execution of routines used by it are added to its tables list
  (this process also caches all routines used). Implicit use of routines
  is discovered when we open view or table with trigger and apropriate
  tables are added to the table list at this moment. Statement which has
  such extra tables in its list (well actually any that uses functions)
  is marked as requiring prelocked mode for its execution.
  
  When lock_tables() sees such statement it will issue implicit LOCK TABLES
  for this extended table list instead of doing usual locking, it will also
  set THD::prelocked_mode to indicate that we are in prelocked mode.
  
  When open_tables()/lock_tables() are called for statement of stored
  routine (substatement), they notice that we are running in prelocked mode
  and use one of prelocked tables from those that are not used by upper
  levels of execution.
  
  close_thread_tables() for substatement won't really close tables used
  but will mark them as free for reuse instead.
  
  Finally when close_thread_tables() is called for the main statement it
  really unlocks and closes all tables used.
  
  Everything will work even if one uses such statement under real LOCK
  TABLES (we are simply not doing implicit LOCK/UNLOCK in this case).
sql/sql_class.cc:
  Added initialization of THD::prelocked_mode member.
sql/sql_class.h:
  - Added prelocked_mode_type enum and THD::prelocked_mode member
    which are used for indication whenever "prelocked mode" is on 
    (i.e. that statement uses stored routines and is executed under
     implicit LOCK TABLES).
  - Removed THD::shortcut_make_view which is no longer needed.
    We use TABLE_LIST::prelocking_placeholder for the same purprose
    now.
sql/sql_handler.cc:
  Changed open_tables() invocation.
  Now its 2nd parameter is in/out since it can add elements to table list.
sql/sql_lex.cc:
  lex_start():
    Added initialization of LEX::query_tables_own_last.
    Unused LEX::sptabs member was removed.
  st_lex::unlink_first_table()/link_first_table_back():
    We should update LEX::query_tables_last properly if table list
    contains(ed) only one element.
sql/sql_lex.h:
  LEX:
  - Removed sptabs member since it is no longer used.
  - Added query_tables_own_last member, which if non-0 indicates that
    statement requires prelocking (implicit LOCK TABLES) for its execution
    and points to last own element in query table list. If it is zero
    then this query does not need prelocking.
  - Added requires_prelocking(), mark_as_requiring_prelocking(),
    first_not_own_table() inline methods to incapsulate and simplify
    usage of this new member.
sql/sql_parse.cc:
  dispatch_command():
    To properly leave prelocked mode when needed we should call
    close_thread_tables() even if there are no open tables.
  mysql_execute_command():
  - Removed part of function which were responsible for doing implicit
    LOCK TABLES before statement execution if statement used stored 
    routines (and doing UNLOCK TABLES at the end).
    Now we do all this in open_tables()/lock_tables()/close_thread_tables()
    instead.
  - It is also sensible to reset errors before execution of statement
    which uses routines.
  - SQLCOM_DO, SQLCOM_SET_OPTION, SQLCOM_CALL
    We should always try to open tables because even if statement has empty
    table list, it can call routines using tables, which should be preopened
    before statement execution.
  - SQLCOM_CALL
    We should not look up routine called in mysql.proc, since it should be
    already cached by this moment by open_tables() call.
  - SQLCOM_LOCK_TABLES
    it is better to use simple_open_n_lock_tables() since we want to avoid
    materialization of derived tables for this command.
sql/sql_prepare.cc:
  mysql_test_update():
    Changed open_tables() invocations. Now its 2nd parameter is in/out
    since it can add elements to table list.
  check_prepared_statement():
    Since now we cache all routines used by statement in open_tables() we 
    don't need to do it explicitly.
  mysql_stmt_prepare():
    Now we should call close_thread_tables() when THD::lex points to the
    LEX of statement which opened tables.
  reset_stmt_for_execute():
    Commented why we are resetting all tables in table list.
sql/sql_trigger.h:
  Table_triggers_list::process_triggers():
    We should surpress sending of ok packet when we are calling trigger's
    routine, since now we allow statements in them.
sql/sql_update.cc:
  Changed open_tables() invocations.
  Now its 2nd parameter is in/out since it can add elements to table list.
sql/sql_view.cc:
  mysql_make_view():
  - Removed handling of routines used in view. Instead we add tables which
    are needed for their execution to statement's table list in 
    open_tables().
  - Now we use TABLE_LIST::prelocking_placeholder instead of 
    THD::shortcut_make_view for indicating that view is opened
    only to discover which tables and routines it uses (this happens
    when we build extended table list for prelocking). Also now we try
    to avoid to modify main LEX in this case (except of its table list).
  - Corrected small error we added tables to the table list of the main
    LEX without updating its query_tables_last member properly.
sql/sql_yacc.yy:
  Now each expression which is used in SP statements and can contain
  subquery has its own LEX. This LEX is stored in corresponding sp_instr
  object and used along with Item tree for expression calculation.
  
  We don't need sp_instr_set_user_var() anymore since now we allow
  execution of statements in stored functions and triggers.
sql/table.h:
  Added TABLE_LIST::prelocking_placeholder member for distinguishing
  elements of table list which does not belong to the statement itself
  and added there only for prelocking (as they are to be used by routines
  called by this statement).
sql/tztime.cc:
  my_tz_init():
    Now we use more simplier simple_open_n_lock_tables() call instead of 
    open_tables()/lock_tables() pair.
2005-03-04 16:35:28 +03:00
unknown
c56d0283dd type_blob.result, func_system.result, func_str.result, ctype_collate.result:
fixing test results accordingly.
func_system.test:
  New test that illegal mix of collations does not happen anymore.
item_strfunc.h:
    safe_charset_converter() was added for system constants.
item_strfunc.cc:
  safe_charset_converter() was added for system constants.
item_func.cc, item.h, item.cc:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
item_create.cc:
  Version is a system constant too.


sql/item.cc:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
sql/item.h:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
sql/item_create.cc:
  Version is a system constant too.
sql/item_func.cc:
  Bug#8291: Illegal collation mix with USER() function.
  After discussion with PeterG and Serge, a new coercibility
  level for "system constants" was introduced, between
  COERRIBLE and IMPLICIT. Thus:
  SELECT col1 = USER() FROM t1; - is done according to col1 collation.
  SELECT 'string' = USER(); - is done according to USER() collation.
  At the same time, "nagg" and "strong" members were removed as unused.
sql/item_strfunc.cc:
  safe_charset_converter() was added for system constants.
sql/item_strfunc.h:
    safe_charset_converter() was added for system constants.
mysql-test/t/func_system.test:
  New test that illegal mix of collations does not happen anymore.
mysql-test/r/ctype_collate.result:
  fixing test results accordingly.
mysql-test/r/func_str.result:
  fixing test results accordingly.
mysql-test/r/func_system.result:
  fixing test results accordingly.
mysql-test/r/type_blob.result:
  fixing test results accordingly.
2005-03-04 14:20:49 +04:00
unknown
aec0408ba9 Clean up merge of fix for Bug #3309.
mysql-test/r/grant2.result:
  Update results
mysql-test/t/grant2.test:
  Reset sql_mode before test.
sql/sql_acl.cc:
  Fixes to merge
2005-03-03 17:44:28 -08:00
unknown
daaeeedb49 Merged from 4.1
innobase/os/os0file.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
mysql-test/r/bigint.result:
  Auto merged
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/symlink.test:
  Auto merged
ndb/src/kernel/blocks/dbtc/DbtcMain.cpp:
  Auto merged
ndb/test/ndbapi/testNodeRestart.cpp:
  Auto merged
ndb/test/run-test/daily-devel-tests.txt:
  Auto merged
sql/item.h:
  Auto merged
strings/ctype-win1250ch.c:
  Auto merged
mysql-test/r/grant2.result:
  Hand-merged new test
mysql-test/t/grant2.test:
  Hand-merged new test
ndb/include/ndbapi/NdbTransaction.hpp:
  Used 5.0 version per tomas
sql/sql_acl.cc:
  Merge fix for Bug #3309.
2005-03-03 15:01:46 -08:00
unknown
92895d0052 Fix symlink test to avoid filenames with paths
mysql-test/r/symlink.result:
  Update test results
mysql-test/t/symlink.test:
  Fix test to avoid filenames including path in results
2005-03-03 12:36:27 -08:00
unknown
aa52954f6f Merge mysql.com:/home/jimw/my/mysql-4.1-8707
into mysql.com:/home/jimw/my/mysql-4.1-clean
2005-03-03 10:50:18 -08:00
unknown
b072718657 Merge mysql.com:/home/jimw/my/mysql-4.1-3309
into mysql.com:/home/jimw/my/mysql-4.1-clean
2005-03-03 10:47:20 -08:00
unknown
65c830aecb Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0
2005-03-03 19:21:26 +03:00
unknown
c7fdbffa0d Fix for bug #8164: subquery with INFORMATION_SCHEMA.COLUMNS, 100 % CPU 2005-03-03 19:20:16 +03:00
unknown
2860a7723e Fixes for bug#8115 "Server Crash with prepared statement"
and bug#8849 "problem with insert statement with table alias's": 
make equality propagation work in stored procedures and prepared 
statements.
Equality propagation can change AND/OR structure of ON expressions,
so the fix is to provide each execution of PS/SP with it's own
copy of AND/OR tree. We have been doing that already for WHERE clauses,
now ON clauses are also copied.


mysql-test/r/ps.result:
  Bug#8115: test results fixed.
mysql-test/r/sp.result:
  Bug#8849: test results fixed.
mysql-test/t/ps.test:
  A test case for Bug#8115 "Server Crash with prepared statement".
mysql-test/t/sp.test:
  A test case for Bug#8849 "problem with insert statement with table 
  alias's".
sql/item_cmpfunc.cc:
  Comment a parse tree transformation.
sql/item_cmpfunc.h:
  Comment how Item_equal works with PS/SP.
sql/mysql_priv.h:
  Add declaration for init_stmt_after_parse.
sql/sp_head.cc:
  Call init_stmt_after_parse in restore_lex(), which is used to
  grab TABLE_LIST and SELECT_LEX list of a parsed substatement of
  stored procedure. This is a necessary post-init step which 
  must be done for any statement which can be executed many times.
sql/sql_prepare.cc:
  Implement init_stmt_after_parse() which prepares AND/OR
  structure of all ON expressions and WHERE clauses of a statement
  for copying.
sql/sql_select.cc:
  Implementation of equality propagation inspected with regard to 
  prepared statements and stored procedures. We now restore
  AND/OR structure of every ON expression in addition to AND/OR
  structure of WHERE clauses when reexecuting a PS/SP.
sql/table.h:
  Add declaration for TABLE::prep_on_expr.
2005-03-03 17:38:59 +03:00
unknown
ad5174af41 Bugs: #8063: make test mysqldump [ fail ]
See mysqldump.test diff for more details
2005-03-03 15:43:00 +04:00
unknown
da4ea4fa23 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/home/ram/work/5.0
2005-03-03 15:38:00 +04:00
unknown
0abf1f6d3f manual merge 2005-03-03 14:29:37 +04:00
unknown
d6c9c19412 Bug#8840 Empty string comparison and character set 'cp1250'
Secondary weight out of bounds was picked up in mistake when
the string is empty, instead of returning 0.
2005-03-03 14:15:37 +04:00
unknown
78c09205fc Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-03-03 10:51:20 +01:00
unknown
7cd4805654 committing this deletion of federated.disabled, which was already committed in another tree apparently; just to make bk happy.
BitKeeper/deleted/.del-federated.disabled~a5703a3321e4108:
  Delete: mysql-test/t/federated.disabled
2005-03-03 09:49:34 +01:00
unknown
37306fb125 Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-03-03 09:46:13 +01:00
unknown
69a1579af0 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bugs
2005-03-03 05:04:00 +03:00
unknown
c9b4f8c3d7 Fix bug in checking of table-specific grats that caused IP/NETMASK
hostnames to not be matched correctly. (Bug #3309)


sql/sql_acl.cc:
  Use an acl_host_or_ip in the GRANT_TABLE struct instead of storing the host
  itself, and use compare_hostname() in testing it. This adds support for IP
  addresses with netmasks to table-specific grants, and results in simplified
  code by making use of compare_hostname() in more places.
mysql-test/r/grant2.result:
  Add new results
mysql-test/t/grant2.test:
  Add new regression test
2005-03-02 16:30:24 -08:00
unknown
41624daa4c WL# 2094, removed federated 'disable' file.
BitKeeper/deleted/.del-federated.disabled~a5703a3321e4108:
  Delete: mysql-test/t/federated.disabled
2005-03-02 16:14:46 -08:00
unknown
436e2f8308 Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-03-02 18:05:57 +01:00
unknown
a766c7bf6f Merge mysqldev@production.mysql.com:/data0/mysqldev/my/mysql-5.0-merge
into krsna.patg.net:/home/patg/mysql-5.0
2005-03-02 09:01:07 -08:00
unknown
5a5fc3433c Last part of fix for BUG#7998 "Replication should be more clever about when to replicate RELEASE_LOCK()" + fixes after merge
mysql-test/r/drop_temp_table.result:
  result update
mysql-test/r/mix_innodb_myisam_binlog.result:
  result update
mysql-test/r/rpl000001.result:
  result update
mysql-test/r/rpl_change_master.result:
  result update
mysql-test/r/rpl_deadlock.result:
  result update (merge)
mysql-test/t/rpl000001.test:
  can't rely on GET_LOCK() to do slave synchro (use table lock instead)
mysql-test/t/rpl_change_master.test:
  changing the test as we can't use GET_LOCK() for slave synchro
mysql-test/t/rpl_deadlock.test:
  update (merge) binlog positions
mysql-test/t/rpl_get_lock.test:
  comment
2005-03-02 17:52:38 +01:00
unknown
5699934fe0 Fixed BUG#8762: Stored Procedures: Inconsistent behavior
of DROP PROCEDURE IF EXISTS statement.


mysql-test/r/sp.result:
  New test case for BUG#8757
mysql-test/t/sp.test:
  New test case for BUG#8757
sql/sp.cc:
  Don't zap lex->found_semicolon. (For compound statements)
2005-03-02 17:25:58 +01:00
unknown
90eed6566b Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1
2005-03-02 20:04:38 +04:00
unknown
b7943b7aee Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.patg.net:/home/patg/mysql-5.0


sql/handler.cc:
  Auto merged
2005-03-02 08:04:26 -08:00
unknown
737f7292b4 a fix for --ps-protocol (bug #6089: FOUND_ROWS returns wrong values when no table/view is used)
sql/sql_union.cc:
  a fix for --ps-protocol (bug #6089: FOUND_ROWS returns wrong values when no table/view is used)
  Don't touch options as itit's not needed.
2005-03-02 20:00:48 +04:00
unknown
1972aa7d52 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/mysql_src/mysql-5.0-xa


sql/item_func.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
2005-03-02 16:40:04 +01:00
unknown
53ec5f0667 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
2005-03-02 15:31:03 +01:00
unknown
8fdc684b0b Merge
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  SCCS merged
sql/slave.h:
  SCCS merged
2005-03-02 14:46:19 +01:00
unknown
199e195d3d Bug#8306 - TRUNCATE leads to index corruption
After merge fix.
The bugfix results in a different error message in this situation.
2005-03-02 11:49:50 +01:00
unknown
91820633ac Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-clean


sql/mysqld.cc:
  Auto merged
2005-03-02 11:38:38 +01:00
unknown
d7e0784c65 Fix for BUG#8325 "Deadlock in replication thread stops replication":
in slave SQL thread: if a transaction fails because of InnoDB deadlock or innodb_lock_wait_timeout exceeded,
optionally retry the transaction a certain number of times (new variable --slave_transaction_retries).


sql/mysql_priv.h:
  new var slave_transaction_retries
sql/mysqld.cc:
  new variable slave_transaction_retries. Plus fixing a typo.
sql/set_var.cc:
  new global variable slave_transaction_retries (will be one per subslave, when we have multimaster).
sql/slave.cc:
  Slave SQL thread: if a transaction fails because of InnoDB deadlock or innodb_lock_wait_timeout exceeded,
  optionally retry the transaction a certain number of times (--slave_transaction_retries).
sql/slave.h:
  new RELAY_LOG_INFO::trans_retries.
2005-03-02 11:29:48 +01:00
unknown
cc4455631a Merge
innobase/include/srv0srv.h:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
myisam/mi_create.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
mysql-test/r/myisam.result:
  SCCS merged
mysql-test/t/myisam.test:
  SCCS merged
sql/ha_innodb.h:
  SCCS merged
2005-03-02 10:56:13 +01:00
unknown
f508a6ca80 Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
2005-03-02 10:41:23 +01:00
unknown
e1ba1632fb bug#8151 - truncate leaves a transaction open
deadlock in MYSQL_LOG::new_file()
style fixes


mysql-test/r/innodb.result:
  one more test for truncate
mysql-test/t/innodb.test:
  one more test for truncate
sql/ha_innodb.cc:
  bug#8151 - truncate leaves a transaction open
sql/handler.cc:
  bug#8151 - truncate leaves a transaction open
sql/item.h:
  style fix
sql/item_cmpfunc.cc:
  style fix
sql/item_cmpfunc.h:
  style fix
sql/item_func.cc:
  style fix
sql/item_func.h:
  style fix
sql/log.cc:
  let new_file() to lock LOCK_index,
  don't check for prepared_xids in rotate_and_purge()
  increase thread_safe_increment when LOCK_log is taken
sql/log_event.cc:
  mysqlbinlog now prints a warning if binlog was not closed properly
sql/sql_class.h:
  comments
sql/sql_repl.cc:
  DBUG_ENTER tag corrected
2005-03-02 10:38:25 +01:00
unknown
26f75ffc83 Bug#8306 - TRUNCATE leads to index corruption
Added a check, if the table, which we are going to create, is open.
This can happen if a MERGE mapped table is TRUNCATEd.


myisam/mi_open.c:
  Bug#8306 - TRUNCATE leads to index corruption
  Made test_if_reopen() globally available.
myisam/myisamdef.h:
  Bug#8306 - TRUNCATE leads to index corruption
  Declared test_if_reopen() as globally available.
mysql-test/r/myisam.result:
  Bug#8306 - TRUNCATE leads to index corruption
  The test result.
mysql-test/t/myisam.test:
  Bug#8306 - TRUNCATE leads to index corruption
  The test case.
2005-03-02 10:35:00 +01:00
unknown
055273c114 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.patg.net:/home/patg/mysql-5.0


sql/handler.cc:
  Auto merged
2005-03-01 23:23:11 -08:00
unknown
53bfeb4844 Fix for Bug#5615 and merge from 4.1
mysql-test/r/func_group.result:
  Added some tests and fix for Bug#5615.
mysql-test/r/show_check.result:
  Fix for Bug#5615.
mysql-test/t/func_group.test:
  Added some tests.
sql/item_sum.cc:
  Fix for Bug#5615.
sql/item_sum.h:
  Fix for Bug#5615.
sql/sql_select.cc:
  Fix for Bug#5615.
sql/sql_select.h:
  Fix for Bug#5615.
2005-03-01 22:19:19 +02:00
unknown
425573747f Merge
mysql-test/r/func_group.result:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/r/select_found.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/t/func_group.test:
  Auto merged
mysql-test/t/show_check.test:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
strings/ctype-bin.c:
  Auto merged
sql/sql_select.cc:
  SCCS merged
2005-03-01 14:50:59 +02:00
unknown
59158b851c Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b6089


sql/sql_select.cc:
  Auto merged
2005-03-01 14:19:32 +04:00
unknown
4dc33bc87d Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b6089


sql/sql_select.cc:
  Auto merged
2005-03-01 12:31:05 +04:00
unknown
81dea6cd21 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/ram/work/4.1.b5615


mysql-test/r/show_check.result:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-03-01 12:20:55 +04:00
unknown
1b3ffb1bcb Fix for BUG#8562: In Item_int_with_ref::new_item() create Item_int or Item_uint
depending on ref->unsigned_flag. Item_int_with_ref can refer to both signed and 
unsigned integers.


mysql-test/r/bigint.result:
  Test case for BUG#8562
mysql-test/t/bigint.test:
  Test case for BUG#8562
2005-02-28 23:50:06 +03:00
unknown
ef7570c72b Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/sql_repl.cc:
  Auto merged
2005-02-28 22:27:55 +02:00
unknown
8400a5a4a8 Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-02-28 19:23:58 +01:00
unknown
d2ead18b69 Fix for BUG#8726: In JOIN::optimize on ER_TOO_BIG_SELECT error set JOIN::error to -1 to cause
the error to be sent to the client.


mysql-test/r/select_safe.result:
  Testcase for BUG#8726
mysql-test/t/select_safe.test:
  Testcase for BUG#8726
sql/sql_select.cc:
  Fix for BUG#8726: On ER_TOO_BIG_SELECT set JOIN::error to -1 to cause the error to be sent to the client.
2005-02-28 20:21:21 +03:00
unknown
ed3b44994c Merge mysql.com:/home/timka/mysql/src/5.0-virgin
into mysql.com:/home/timka/mysql/src/5.0-bug-8532
2005-02-28 19:21:04 +02:00
unknown
cef636d9be Merge mysql.com:/usr/local/bk/mysql-5.0
into mysql.com:/home/pem/work/mysql-5.0
2005-02-28 18:09:24 +01:00
unknown
110f6abd38 Fixed BUG#8760: Stored Procedures: Invalid SQLSTATE is allowed in
a DECLARE ? HANDLER FOR stmt.


mysql-test/r/sp-error.result:
  New test case for BUG#8776 (check format of sqlstates in handler declarations).
mysql-test/t/sp-error.test:
  New test case for BUG#8776 (check format of sqlstates in handler declarations).
sql/share/errmsg.txt:
  New error message for malformed SQLSTATEs.
sql/sp_pcontext.cc:
  Added function for checking SQLSTATE format.
sql/sp_pcontext.h:
  Added function for checking SQLSTATE format.
sql/sql_yacc.yy:
  Check format of SQLSTATE in handler declaration.
2005-02-28 18:07:06 +01:00
unknown
f9dd79c77d merging
mysql-test/r/ps.result:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-28 19:59:38 +04:00
unknown
1b002905b7 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
include/mysql_com.h:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-28 16:22:26 +02:00
unknown
7a703d6ace Fix for BUG#8532.
The problem was in that the code that analyses the applicability of the
QUICK_GROUP_MIN_MAX access method for DISTINC queries assumed that there
are no duplicate column references in the DISTINCT clause, and it added
non-exiting key parts for the duplicate column references. 

The solution adds a test to check whether the select list already contained
a field with the same name. If such field was already present, then it was
already decided to use its key part for index access. In this such case we
must skip the duplicate field instead of counting it as a new field.


mysql-test/r/group_min_max.result:
  Added test results for BUG#8532.
mysql-test/t/group_min_max.test:
  Added tests for BUG#8532.
sql/opt_range.cc:
  The problem was in that the code that analyses the applicability of the
  QUICK_GROUP_MIN_MAX access method for DISTINC queries assumed that there
  are no duplicate column references in the DISTINCT clause, and it added
  non-exiting key parts for the duplicate column references. 
  
  The solution adds a test to check whether the select list already contained
  a field with the same name. If such field was already present, then it was
  already decided to use its key part for index access. In this such case we
  must skip the duplicate field instead of counting it as a new field.
2005-02-28 16:20:02 +02:00
unknown
7865746c27 merging
mysql-test/r/show_check.result:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-28 18:11:18 +04:00
unknown
ebdbe9e5c3 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/psergey/mysql-4.0-look
2005-02-28 15:40:45 +03:00
unknown
c8b3d65ca2 Merge 2005-02-28 14:52:35 +03:00
unknown
45a26d449d merge with 4.1
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
client/mysql.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/fil/fil0fil.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
mysql-test/r/select_found.result:
  Auto merged
mysql-test/r/type_set.result:
  Auto merged
mysys/default.c:
  Auto merged
sql/field.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
strings/ctype-simple.c:
  Auto merged
include/mysql_com.h:
  Merge
sql/filesort.cc:
  merge
2005-02-28 12:18:39 +02:00
unknown
8b8c9452dd Fixed wrong memory references found by purify
(No really critical errors found, but a few possible wrong results)


innobase/dict/dict0dict.c:
  Replace memcmp with comparison of characters to avoid warnings from purify when 'sptr' points to a very short string
mysql-test/r/select_found.result:
  Add missing drop table
mysql-test/r/type_set.result:
  More tests
mysql-test/t/select_found.test:
  Add missing drop table
mysql-test/t/type_set.test:
  More tests
mysys/my_init.c:
  Avoid warning from purify (purify doesn't handle getrusage() properly)
sql/field.h:
  enum & set are sorted as numbers. This fixes an access to uninitialized memory when enum/set are multi-byte characters
sql/filesort.cc:
  enum & set are sorted as numbers. This fixes an access to uninitialized memory when enum/set are multi-byte characters
sql/item_cmpfunc.cc:
  Fixed warning from purify. (Not critical as the arguments are passed to a function but not used)
  Allocate Arg_comparator() with 'new' instead of sql_alloc() to ensure proper initialization
sql/mysqld.cc:
  Wait for signal handler to stop when running --bootstrap
  (Fixes warning from purify)
sql/sql_insert.cc:
  Initialize slot used by innodb.cc (not critical)
sql/sql_lex.h:
  Better comments
sql/sql_repl.cc:
  memcmp -> bcmp() to avoid warning from purify
sql/sql_select.cc:
  Fix for out-of-bound memory reference when doing DISTINCT on const expressions
strings/ctype-simple.c:
  Fixes to not access uninitialized memory
  (Not critical)
2005-02-28 11:59:46 +02:00
unknown
4ef7991d28 Merge mysql.com:/space/pekka/ndb/version/my50
into mysql.com:/space/pekka/ndb/version/my50-ndb


ndb/src/kernel/blocks/dbdict/Dbdict.cpp:
  Auto merged
2005-02-27 17:25:31 +01:00
unknown
87a48cdf0d Merge svojtovich@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/svoj/devel/mysql/stddev-mysql-5.0


sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2005-02-27 13:33:20 +04:00
unknown
7cc7a62856 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/filesort.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-26 16:15:36 +01:00
unknown
1a72e219f2 Fix for BUG#8560: Set max_sort_char for any 8-bit charset with binary collation. max_sort_char is needed by
my_like_range_simple to produce upper bound constants for LIKE "str_%" and similar expressions.


mysql-test/r/ctype_cp1251.result:
  Test for BUG#8560
mysql-test/t/ctype_cp1251.test:
  Test for BUG#8560
2005-02-26 17:15:04 +03:00
unknown
d339dd13cd BUG#3190 fix (request for STDDEV_SAMP, VAR_SAMP).
This bug is also known as WL#1639.


mysql-test/r/func_group.result:
  Test case for stddev_pop, var_pop, stddev_samp, var_samp was added.
mysql-test/t/func_group.test:
  Test case for stddev_pop, var_pop, stddev_samp, var_samp was added.
sql/item_sum.cc:
  New functions stddev_samp and var_samp were added.
sql/item_sum.h:
  New functions stddev_samp and var_samp were added.
sql/lex.h:
  New functions stddev_pop, var_pop, stddev_samp and var_samp were added.
sql/sql_yacc.yy:
  New functions stddev_pop, var_pop, stddev_samp and var_samp were added.
2005-02-25 22:19:04 +04:00
unknown
0be32e7e5a Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/sp_pcontext.cc:
  Auto merged
2005-02-25 19:51:29 +02:00
unknown
3d8aed6d83 Fixed BUG#8757: Stored Procedures: Scope of Begin and End Statements do not work properly.
mysql-test/r/sp.result:
  New test case for BUG#8757.
mysql-test/t/sp.test:
  New test case for BUG#8757.
sql/sp_pcontext.cc:
  Return the correct scope offset to cursors during parsing.
2005-02-25 17:56:45 +01:00
unknown
08b3e79e40 Merge with global tree
mysql-test/r/innodb.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
mysql-test/t/rpl_rotate_logs.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
sql/examples/ha_archive.cc:
  Merge with global tree
  (Use my changes)
sql/sql_parse.cc:
  Remove 'tmp' fix to be able to run tests
2005-02-25 17:12:06 +02:00
unknown
948bb77d4e Fixed BUG#6857: current_time() in STORED PROCEDURES
Have to thd->set_time() before each substatement execution, to make
  current_time() et al return different times within the same procedure.


mysql-test/r/sp.result:
  New test case for BUG#6857: current_time() in STORED PROCEDURES.
  Note: The actual call is disable, to save time when running with slow debugging tools.
mysql-test/t/sp.test:
  New test case for BUG#6857: current_time() in STORED PROCEDURES.
  Note: The actual call is disable, to save time when running with slow debugging tools.
sql/sp_head.cc:
  Make current_time() et all work in stored procedures.
2005-02-25 13:19:44 +01:00
unknown
0d9ba2678f Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/triggers/post-commit:
  Auto merged
sql/item.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2005-02-25 08:28:43 +01:00
unknown
eb18f93a78 Show all generated warnings in SHOW ERROR
Previously we only stored the first given error (the error sent to the client)


include/mysys_err.h:
  Moved ER_FILENOTFOUND last to avoid getting 'error 0'
mysql-test/r/backup.result:
  More warnings from in case of errors
mysql-test/r/innodb.result:
  More warnings from in case of errors
mysql-test/r/key_cache.result:
  More warnings from in case of errors
mysql-test/r/myisam.result:
  More warnings from in case of errors
mysql-test/r/preload.result:
  More warnings from in case of errors
mysql-test/r/repair.result:
  More warnings from in case of errors
mysql-test/r/rpl_failed_optimize.result:
  More warnings from in case of errors
mysql-test/r/subselect.result:
  More warnings from in case of errors
mysql-test/t/backup.test:
  Portability fix
mysql-test/t/innodb.test:
  Avoid some warnings
mysql-test/t/myisam.test:
  Portability fix
mysql-test/t/rpl_rotate_logs.test:
  Portablitiy fix
mysys/errors.c:
  Move ER_FILENOTFOUND last to avoid error 0
sql/mysql_priv.h:
  Indentation change
sql/mysqld.cc:
  Save all given errors for SHOW ERRORS
sql/protocol.cc:
  Store new errors for SHOW ERROR
  (Ignore those that are already reported with my_error())
sql/sql_class.cc:
  More errors with SHOW ERROR
sql/sql_class.h:
  More errors with SHOW ERROR
sql/sql_error.cc:
  More errors with SHOW ERROR
sql/sql_parse.cc:
  Temporary fix: Don't give error for the to-be-removed 'pre-open tables code'
sql/sql_show.cc:
  More debugging
  Don't register errors while populating schema tables.
  (If we do, we get a LOT of warnings from information_schema.test)
sql/sql_table.cc:
  Don't register errors from handler in drop table (as we already do it the upper level DROP TABLE code)
  Don't register errors for 'restore_table' as in most cases the table doesn't exists
sql/sql_union.cc:
  Use file->write_row() instead of 'write_record'.
  This gives us easer to handle error messages and is faster than the old version
2005-02-24 23:33:42 +02:00
unknown
d9da27db27 Fix for BUG#8783 kill.test must always sleep 2 seconds, even if
mysql-test-run runs with --sleep=10; otherwise GET_LOCK() times out
before being killed so we get 0 instead of NULL. Verified that it
works on our powermacg5 where the test was failing.


mysql-test/t/kill.test:
  must always sleep 2 seconds, even if mysql-test-run runs with --sleep=10;
  otherwise GET_LOCK() times out before being killed so we get 0 instead of NULL.
2005-02-24 19:13:55 +01:00
unknown
2b467d35e3 Added tests for BINARY|VARBINARY LIKE|NOT LIKE 2005-02-24 14:20:12 +01:00
unknown
48429203a8 Merge pnousiainen@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/space/pekka/ndb/version/my50-ndb
2005-02-24 13:07:34 +01:00
unknown
161a434944 ndb - wl-1203 fix binary LIKE binary in ndb api
mysql-test/r/ndb_condition_pushdown.result:
  fix binary LIKE binary in ndb api
mysql-test/t/ndb_condition_pushdown.test:
  fix binary LIKE binary in ndb api
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  fix binary LIKE binary in ndb api
ndb/src/ndbapi/NdbOperationInt.cpp:
  fix binary LIKE binary in ndb api
ndb/src/ndbapi/NdbScanFilter.cpp:
  fix binary LIKE binary in ndb api
2005-02-24 13:07:33 +01:00
unknown
dcdbfa6527 merge
BitKeeper/etc/logging_ok:
  auto-union
include/mysql_com.h:
  Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-24 06:24:46 +01:00
unknown
a728ad71cf Make sure that warning message when GROUP_CONCAT() cuts values is also
updated with the correct number of lines. (Bug #8681)


mysql-test/t/join_outer.test:
  Add new regression test
mysql-test/r/join_outer.result:
  Add new results
sql/item_sum.cc:
  Move cleanup of warning message outside of "if (original)" test or it won't
  always get cleaned up.
2005-02-23 17:58:20 -08:00
unknown
c3d916b52c Merge 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/mysql-5.0
into 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-repl-5.0
2005-02-24 03:28:33 +02:00
unknown
0613ed1f0e get time for thread switching 2005-02-24 03:25:53 +02:00
unknown
20a30c64f5 fixed typo in test 2005-02-24 02:59:36 +02:00
unknown
c5fb55668b Merge 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/mysql-5.0
into 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-repl-5.0


BitKeeper/etc/logging_ok:
  auto-union
sql/sql_parse.cc:
  Auto merged
2005-02-24 01:11:59 +02:00
unknown
91251238b4 Bug#8412: merged from 4.1
sql/log.cc:
  Merge from 4.1
2005-02-23 23:01:51 +01:00
unknown
a1db28a290 Don't try to create a symlink if the DATA DIRECTORY specified for a table
is the same as the normal datadir for that database. (Bug #8707)


mysys/my_symlink2.c:
  Expand path of linkname before checking it against filename to decide if
  we need to create a link.
mysql-test/t/symlink.test:
  Add new regression test
mysql-test/r/symlink.result:
  Add new results
2005-02-23 13:59:04 -08:00
unknown
f5a80e5a3b Merge 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-qc_item_view-5.0
into 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-repl-5.0


BitKeeper/etc/logging_ok:
  auto-union
2005-02-23 23:00:41 +02:00
unknown
fee0f25fbd Merge 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/mysql-5.0
into 51.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-qc_item_view-5.0


BitKeeper/etc/logging_ok:
  auto-union
2005-02-23 22:56:24 +02:00
unknown
bef32dfacd innodb-dependent test moved from rpl_rotate_logs.test to binlog.test
mysql-test/r/binlog.result:
  binlog rotation after a big transation
mysql-test/r/rpl_rotate_logs.result:
  innodb-dependent test removed
mysql-test/t/binlog.test:
  binlog rotation after a big transation
mysql-test/t/rpl_rotate_logs.test:
  innodb-dependent test removed
2005-02-23 20:35:59 +01:00
unknown
e0b2dab77d Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/log.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-23 20:08:21 +01:00
unknown
1f2b46fa0f Bug#8412: Merge from 4.0
mysql-test/r/rpl_insert_id.result:
  Auto merged
mysql-test/t/rpl_insert_id.test:
  Auto merged
sql/log.cc:
  Merge from 4.0
2005-02-23 19:58:54 +01:00
unknown
6a0e1def63 Merge mysql.com:/home/bkroot/mysql-4.0
into mysql.com:/home/bk/b8412-mysql-4.0
2005-02-23 19:40:31 +01:00
unknown
39cab5abec Merge bk-internal:/home/bk/mysql-5.0
into serg.mylan:/usr/home/serg/Abk/mysql-5.0


sql/log.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2005-02-23 19:20:17 +01:00
unknown
6bb0cacdf5 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into krsna.patg.net:/home/patg/mysql-5.0
2005-02-23 09:35:18 -08:00
unknown
be9f1863b7 don't log BEGIN in auto-commit mode
correct end_log_pos for Xid_log_event


mysql-test/r/binlog.result:
  don't depend on the previous tests
mysql-test/r/rpl_rotate_logs.result:
  correct end_log_pos for Xid_log_event
mysql-test/t/binlog.test:
  don't depend on the previous tests
sql/handler.h:
  comment
sql/log_event.cc:
  advance position for Xid
sql/log_event.h:
  comment
sql/sql_class.h:
  correct end_log_pos for Xid_log_event
sql/sql_parse.cc:
  make sure commit handler knows whether it's autocommit or not
2005-02-23 18:26:49 +01:00
unknown
2c1ef3c604 Merge 52.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/mysql-5.0
into 52.0.168.192.in-addr.arpa:/Users/bell/mysql/bk/work-repl-5.0


BitKeeper/etc/logging_ok:
  auto-union
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
2005-02-23 19:22:52 +02:00
unknown
e09a6c1a20 Merge gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-4.1
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0


mysql-test/r/warnings.result:
  Auto merged
mysql-test/t/warnings.test:
  Auto merged
sql/protocol.cc:
  Auto merged
2005-02-23 20:22:51 +03:00
unknown
262dadccf1 Fix for bug #6572: SHOW ERRORS doesn't 2005-02-23 20:18:21 +03:00
unknown
c5acdd33bc ha_ndbcluster.cc:
Fixed faulty debug printout
ndb_condition_pushdown.test, ndb_condition_pushdown.result:
  Added BINARY and VARBINARY tests


mysql-test/r/ndb_condition_pushdown.result:
  Added BINARY and VARBINARY tests
mysql-test/t/ndb_condition_pushdown.test:
  Added BINARY and VARBINARY tests
sql/ha_ndbcluster.cc:
  Fixed faulty debug printout
2005-02-23 17:18:06 +01:00
unknown
272f78b533 Merge gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-4.1
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0


mysql-test/r/func_str.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
2005-02-23 18:47:00 +03:00
unknown
f443992e66 Fix for bug#6317: string function CHAR, parameter is NULL, wrong result 2005-02-23 18:15:45 +03:00
unknown
5a442d6af6 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-23 15:54:22 +01:00
unknown
9968b41dbf Fixes for condition pushdown to storage engine based on comments from code review
mysql-test/r/ndb_condition_pushdown.result:
  Added more tests  for condition pushdown to storage engine based on comments from code review
mysql-test/t/ndb_condition_pushdown.test:
  Added more tests  for condition pushdown to storage engine based on comments from code review
2005-02-23 15:51:26 +01:00
unknown
0cd185ea6a write "COMMIT" into binlog if there's no Xid at the end of transaction
new tests


mysql-test/r/innodb.result:
  savepoint test
mysql-test/t/innodb.test:
  savepoint test
sql/log.cc:
  write "COMMIT" into binlog if there's no Xid at the end of transaction
2005-02-23 14:55:16 +01:00
unknown
9e1ead5a4a Fix for bug #7217: information_schema: columns are varbinary() instead of timestamp &
bug #7215: information_schema: columns are longtext instead of varchar
2005-02-23 15:15:36 +03:00