1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-11 13:21:44 +03:00

6466 Commits

Author SHA1 Message Date
unknown
313ce62f70 WL#1596 "make mysqldump --master-data --single-transaction able to do online dump of InnoDB AND report reliable
binlog coordinates corresponding to the dump".
The good news is that now mysqldump can be used to get an online backup of InnoDB *which works for
point-in-time recovery and replication slave creation*. Formerly, mysqldump --master-data --single-transaction
used to call in fact mysqldump --master-data, so the dump was not an online dump (took big lock all time of dump).
The only lock which is now taken in this patch is at the beginning of the dump: mysqldump does:
FLUSH TABLES WITH READ LOCK; START TRANSACTION WITH CONSISTENT SNAPSHOT; SHOW MASTER STATUS; UNLOCK TABLES;
so the lock time is in fact the time FLUSH TABLES WITH READ LOCK takes to return (can be 0 or very long, if
a table is undergoing a huge update).
I have done some more minor changes listed in the paragraph of mysqldump.c.
WL#2237 "WITH CONSISTENT SNAPSHOT clause for START TRANSACTION":
it's a START TRANSACTION which additionally starts a consistent read on all
capable storage engine (i.e. InnoDB). So, can serve as a replacement for
BEGIN; SELECT * FROM some_innodb_table LIMIT 1; which starts a consistent read too. 


client/mysqldump.c:
  Main change: mysqldump --single-transaction --master-data is now able to, at the same time,
  take an online dump of InnoDB (using consistent read) AND get the binlog position corresponding to this dump
  (before, using the two options used to silently cancel --single-transaction).
  This uses the new START TRANSACTION WITH CONSISTENT SNAPSHOT syntax.
  Additional changes: 
  a) cleanup:
   - DBerror calls exit() so some code was unneeded
   - no need to call COMMIT at end, leave disconnection do the job
   - mysql_query_with_error_report()
  b) requirements I had heard from colleagues:
   - --master-data now requires an argument, to comment out ("--") the CHANGE MASTER or not
     (commenting had been asked for point-in-time recovery when replication is not necessary).
   - --first-slave is renamed to --lock-all-tables
  c) more sensible behaviours (has been discussed internally):
   - if used with --master-data, --flush-logs is probably intended to get a flush synchronous
     with the dump, not one random flush per dumped db.
   - disabled automatic reconnection as, at least, SQL_MODE would be lost (and also, depending
     on options, LOCK TABLES, BEGIN, FLUSH TABLES WITH READ LOCK).
include/mysqld_error.h:
  an error if START TRANSACTION WITH CONSISTENT SNAPSHOT is called and there is no consistent-read capable storage engine
  (idea ((C) PeterG) is that it's a bit like CREATE TABLE ENGINE=InnoDB when there is no support for InnoDB).
sql/handler.cc:
  new ha_start_consistent_snapshot(), which, inside an existing transaction, starts a consistent read
  (offers an alternative to SELECTing any InnoDB table). Does something only for InnoDB.
  Warning if no suitable engine supported.
sql/handler.h:
  declarations
sql/lex.h:
  symbols for lex
sql/share/czech/errmsg.txt:
  new message
sql/share/danish/errmsg.txt:
  new message
sql/share/dutch/errmsg.txt:
  new message
sql/share/english/errmsg.txt:
  new message
sql/share/estonian/errmsg.txt:
  new message
sql/share/french/errmsg.txt:
  new message
sql/share/german/errmsg.txt:
  new message
sql/share/greek/errmsg.txt:
  new message
sql/share/hungarian/errmsg.txt:
  new message
sql/share/italian/errmsg.txt:
  new message
sql/share/japanese/errmsg.txt:
  new message
sql/share/korean/errmsg.txt:
  new message
sql/share/norwegian-ny/errmsg.txt:
  new message
sql/share/norwegian/errmsg.txt:
  new message
sql/share/polish/errmsg.txt:
  new message
sql/share/portuguese/errmsg.txt:
  new message
sql/share/romanian/errmsg.txt:
  new message
sql/share/russian/errmsg.txt:
  new message
sql/share/serbian/errmsg.txt:
  new message
sql/share/slovak/errmsg.txt:
  new message
sql/share/spanish/errmsg.txt:
  new message
sql/share/swedish/errmsg.txt:
  new message
sql/share/ukrainian/errmsg.txt:
  new message
sql/sql_lex.h:
  new option in lex (transaction options)
sql/sql_parse.cc:
  warning comment (never make UNLOCK TABLES commit a transaction, please);
  support for starting consistent snapshot.
sql/sql_yacc.yy:
  new clause WITH CONSISTENT SNAPSHOT (syntax ok'd by PeterG) for START TRANSACTION.
2004-11-10 17:56:45 +01:00
unknown
e862a42d7f Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into pcgem.rdg.cyberkinetica.com:/usr/home/acurtis/work/bug6031
2004-11-10 16:05:58 +00:00
unknown
e429396835 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1
2004-11-10 16:05:57 +00:00
unknown
b6ed85ba5a added configure switch for ndb port number
added new variable for ndb port 1186
    changed meaning of ndb_port_base to be default tcp port setting
    changed to use split between port and port_base for ndbcluster
    so that ndb_port and ndb_port_base are propagated to startscript for ndbcluster
    added larger space to pid print
    moved readAndExecute out of CommandInterpreter to avoid linking lib with readline
    added c-api to Ndb_mgmclient
    pass also ndb_port to make


acinclude.m4:
  added configure switch for ndb port number
configure.in:
  added new variable for ndb port 1186
  changed meaning of ndb_port_base to be default tcp port setting
mysql-test/mysql-test-run.sh:
  changed to use split between port and port_base for ndbcluster
mysql-test/ndb/Makefile.am:
  so that ndb_port and ndb_port_base are propagated to startscript for ndbcluster
mysql-test/ndb/ndbcluster.sh:
  so that ndb_port and ndb_port_base are propagated to startscript for ndbcluster
ndb/src/common/mgmcommon/LocalConfig.cpp:
  so that ndb_port and ndb_port_base are propagated to startscript for ndbcluster
ndb/src/common/mgmcommon/Makefile.am:
  so that ndb_port and ndb_port_base are propagated to startscript for ndbcluster
ndb/src/common/mgmcommon/NdbConfig.c:
  added larger space to pid print
ndb/src/mgmclient/CommandInterpreter.cpp:
  moved readAndExecute out of CommandInterpreter to avoid linking lib with readline
  added c-api to Ndb_mgmclient
ndb/src/mgmclient/main.cpp:
  moved readAndExecute out of CommandInterpreter to avoid linking lib with readline
ndb/src/mgmclient/ndb_mgmclient.hpp:
  moved readAndExecute out of CommandInterpreter to avoid linking lib with readline
ndb/src/mgmsrv/ConfigInfo.cpp:
  moved readAndExecute out of CommandInterpreter to avoid linking lib with readline
ndb/src/mgmsrv/Makefile.am:
  pass also ndb_port to make
2004-11-10 16:05:28 +00:00
unknown
c3a066e403 Fix for bug #6077: Problem with make test from 4.1.7 and bk
portability fix(UnixWare)


mysql-test/r/ps_1general.result:
  portability fix(UnixWare)
mysql-test/t/key_cache.test:
  portability fix(UnixWare)
mysql-test/t/ps_1general.test:
  portability fix(UnixWare)
sql/field.cc:
  portability fix(UnixWare)
2004-11-10 18:16:58 +03:00
unknown
97af0a0e8f Bug#6031 - To drop database you have to execute DROP DATABASE command twice.
DROP DATABASE failed because of file ext not in TYPELIB of known extensions.
  General solution - construct a TYPELIB at runtime instead of a static list.


mysql-test/r/ndb_basic.result:
  Bug#6031
    New test for bug
mysql-test/t/ndb_basic.test:
  Bug#6031
    New test for bug
sql/ha_ndbcluster.cc:
  Cosmetic fix
sql/handler.cc:
  Bug#6031
    New function - ha_known_exts()
    We can construct TYPELIB of known db file extensions.
sql/handler.h:
  Bug#6031
    New function - ha_known_exts()
sql/sql_db.cc:
  Bug#6031
    We use a constructed list of known extensions instead of a static list
2004-11-10 15:07:11 +00:00
unknown
e6c7117bc0 Merge rkalimullin@bk-internal.mysql.com:/home/bk/mysql-5.0
into gw.mysql.r18.ru:/usr/home/ram/work/5.0


sql/sql_select.cc:
  Auto merged
2004-11-10 14:43:38 +04:00
unknown
0c9bae6e8e A fix (bug #6475: Another server crash in 5.0.2
bug #6515: count(distinct...) crashes the server)


mysql-test/r/count_distinct.result:
  A test case (bug #6515: count(distinct...) crashes the server)
mysql-test/r/func_gconcat.result:
  A test case (bug #6475: Another server crash in 5.0.2)
mysql-test/t/count_distinct.test:
  A test case (bug #6515: count(distinct...) crashes the server)
mysql-test/t/func_gconcat.test:
  A test case (bug #6475: Another server crash in 5.0.2)
sql/sql_select.cc:
  A fix (bug #6475: Another server crash in 5.0.2
         bug #6515: count(distinct...) crashes the server)
  In order to prevent repeated setup() call in the JOIN::make_sum_func_list(),
  the code was splitted: new setup_sum_funcs() was introduced.
  Note: we don't call setup_sum_funcs() in the opt_range.cc:get_best_group_min_max().
2004-11-10 14:36:21 +04:00
unknown
63ad234b85 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/bar/mysql-4.1
2004-11-10 14:09:38 +04:00
unknown
c5e6941e75 1. When mixing NULL to a character string,
the result takes its charset/collation
attributes from the character string,
e.g.  SELECT func(NULL, _latin2'string')
now returns a latin2 result. This is
done by introducing a new derivation
(aka coercibility) level DERIVATION_IGNORABLE,
which is used with Item_null.
2. 'Pure' NULL is now BINARY(0), not CHAR(0).
I.e. NULL is now more typeless.


mysql-test/r/metadata.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/null.result:
  Testing mixing NULL with a character string with a number of functions.
mysql-test/r/ps_2myisam.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_3innodb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_4heap.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_5merge.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_6bdb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/r/ps_7ndb.result:
  Fixing test results:
  CHAR(0) -> BINARY(0) for NULLs
mysql-test/t/null.test:
  Testing mixing NULL with a character string with a number of functions.
sql/item.cc:
  New derivation level.
sql/item.h:
  New derivation level.
2004-11-10 14:05:28 +04:00
unknown
297abcb8cd replaced init_db.sql
mysql-test/init_db.sql:
  replaced old init_db.sql on new one
2004-11-10 15:03:59 +05:00
unknown
96bd70c775 Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


BitKeeper/etc/ignore:
  auto-union
sql/item_subselect.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
2004-11-09 21:47:46 +02:00
unknown
ce82364326 mysql_test_run_new.c, my_manage.h, my_manage.c:
Added Solaris compatibility


mysql-test/my_manage.c:
  Added Solaris compatibility
mysql-test/my_manage.h:
  Added Solaris compatibility
mysql-test/mysql_test_run_new.c:
  Added Solaris compatibility
2004-11-09 20:21:37 +01:00
unknown
afbb5d8fac WL#1972 "Evaluate HAVING before SELECT select-list"
- post-review fix regarding Item_fields
- added test for the changed name resolution


mysql-test/r/having.result:
  Test for changed name resolution of Item_fields
mysql-test/t/having.test:
  Test for changed name resolution of Item_fields
sql/item.cc:
  - Changed Item_field::fix_fields to perform the same name
    resolution as Item_ref::fix_fields because column references
    of subqueries inside HAVING may be represented as Item_fields,
    and they need to be resolved as Item_refs.
  - Adjusted Item_field::fix_fields so that it has the same variable
    names and structure as Item_ref::fix_fields.
2004-11-09 17:56:33 +02:00
unknown
91fd98383c Merge sergbook.mylan:/usr/home/serg/Abk/mysql-5.0
into sergbook.mylan:/usr/home/serg/Abk/mysql-5.0-xa


BitKeeper/etc/ignore:
  auto-union
2004-11-09 16:44:23 +01:00
unknown
e0bf844c8a merge on pull
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-Makefile.am:
  Delete: Docs/Images/Makefile.am
configure.in:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/t/ps.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/table.cc:
  Auto merged
2004-11-09 04:06:44 +02:00
unknown
db67626196 After merge fixes
Added push_back(void *, MEM_ROOT *) to make some list-handling code easier that needs to be allocated in a different mem-root
(Before one had to change thd->mem_root ; push_back(); restore mem_root.


mysql-test/t/range.test:
  After merge fixRecR
sql/item_func.cc:
  After merge fix
sql/item_sum.cc:
  After merge fix
sql/opt_range.cc:
  After merge fix
sql/parse_file.cc:
  After merge fix
sql/sp.cc:
  After merge fix
sql/sp_head.cc:
  After merge fix
sql/sp_head.h:
  After merge fix
sql/sql_base.cc:
  After merge fix
sql/sql_class.h:
  After merge fix
sql/sql_list.h:
  Added push_back(void *, MEM_ROOT *) to make some list-handling code easier that needs to be allocated in a different mem-root
  (Before one had to change thd->mem_root ; push_back(); restore mem_root.
sql/sql_prepare.cc:
  After merge fix
sql/sql_select.cc:
  After merge fix
sql/sql_table.cc:
  After merge fix
  Fixed problem with OPTIMIZE on INNODB tables
sql/sql_trigger.cc:
  After merge fix
sql/sql_union.cc:
  After merge fix
sql/sql_view.cc:
  After merge fix
sql/sql_yacc.yy:
  After merge fix
sql/table.cc:
  After merge fix
2004-11-09 03:58:44 +02:00
unknown
6fd2435dc3 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2004-11-09 00:22:26 +02:00
unknown
47a5ac0e30 Merge with 4.1 to get new thd->mem_root handling
BitKeeper/etc/ignore:
  auto-union
client/mysqldump.c:
  Auto merged
client/mysqltest.c:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/func_in.result:
  Auto merged
mysql-test/r/ps.result:
  Auto merged
mysql-test/r/ps_2myisam.result:
  Auto merged
mysql-test/r/ps_3innodb.result:
  Auto merged
mysql-test/r/ps_4heap.result:
  Auto merged
mysql-test/r/ps_5merge.result:
  Auto merged
mysql-test/r/ps_6bdb.result:
  Auto merged
mysql-test/r/type_float.result:
  Auto merged
mysql-test/r/user_var.result:
  Auto merged
mysql-test/t/innodb.test:
  Auto merged
mysql-test/t/user_var.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_error.cc:
  Auto merged
sql/sql_help.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-11-08 17:53:32 +02:00
unknown
a3503c7505 added ndb test platform test 2004-11-08 13:33:10 +00:00
unknown
1490901ecc Merge joreland@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/jonas/src/mysql-4.1
2004-11-08 11:53:50 +01:00
unknown
5b8fca7422 Merge abarkov@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/home/bar/mysql-4.1
2004-11-08 14:53:49 +04:00
unknown
2ab265d0eb Makefile.am:
added so that it is possible to make mysql_test_run_new
  but not done for target all do:
   make mysql_test_run_new


mysql-test/Makefile.am:
  added so that it is possible to make mysql_test_run_new
  but not done for target all do:
   make mysql_test_run_new
2004-11-08 10:53:48 +00:00
unknown
61838e4c37 Makefile.am:
remove mysql_test_run_new for now, it breaks the make


mysql-test/Makefile.am:
  remove mysql_test_run_new for now, it breaks the make
2004-11-08 10:41:59 +00:00
unknown
1489c41711 Merge mysql.com:/home/jonas/src/new-fix
into mysql.com:/home/jonas/src/mysql-4.1


ndb/src/ndbapi/NdbOperationExec.cpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
2004-11-08 11:26:34 +01:00
unknown
06cf873d8f alter_table.result, alter_table.test, field_conv.cc:
Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.


sql/field_conv.cc:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
mysql-test/t/alter_table.test:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
mysql-test/r/alter_table.result:
  Bug #6479  ALTER TABLE ... changing charset fails for TEXT columns
  Fix: use do_conv_blob rather than do_copy_blob
  if the column's character sets are different.
2004-11-08 14:23:14 +04:00
unknown
7240a4d317 ndb: bug#6435
fix null handling in ha_ndbcluster when using ordered index


mysql-test/r/ndb_index_ordered.result:
  bug#6435
mysql-test/t/ndb_index_ordered.test:
  bug#6435
sql/ha_ndbcluster.cc:
  Fix null handling in ordered index code
2004-11-08 11:11:49 +01:00
unknown
3b38a854e0 ndb: bug#6451
1) fix so that missing blob tables don't prevent table from being
    dropped
2) decrease size of blob part if record length exceeds max length
3) add test case for table wo/ corresponding blob table
4) init scan counters when sending scan_tabreq


mysql-test/r/ndb_autodiscover.result:
  testcase for table wo/ corresponding blob tables
mysql-test/r/ndb_autodiscover2.result:
  testcase for table wo/ corresponding blob tables
mysql-test/t/ndb_autodiscover.test:
  testcase for table wo/ corresponding blob tables
mysql-test/t/ndb_autodiscover2.test:
  testcase for table wo/ corresponding blob tables
ndb/include/ndbapi/NdbDictionary.hpp:
  Add non-const get column
ndb/src/ndbapi/NdbDictionary.cpp:
  Add non-const get column
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Allow "partially" getTable, which enables dropping of tables
     that fails to create blob tables
ndb/src/ndbapi/NdbScanOperation.cpp:
  Init counter when sending SCAN_TABREQ
sql/ha_ndbcluster.cc:
  Make sure that blob don't have to big part size
2004-11-08 11:06:36 +01:00
unknown
bf14010d51 ctype_ujis.result, ctype_ujis.test, field.cc:
Bug#6345 Unexpected behaviour with partial indices


sql/field.cc:
  Bug#6345 Unexpected behaviour with partial indices
mysql-test/t/ctype_ujis.test:
  Bug#6345 Unexpected behaviour with partial indices
mysql-test/r/ctype_ujis.result:
  Bug#6345 Unexpected behaviour with partial indices
2004-11-08 13:15:01 +04:00
unknown
adb6dcb928 Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-view-5.0


mysql-test/r/view.result:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/table.h:
  Auto merged
2004-11-08 03:33:52 +02:00
unknown
bff1d4751d Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-update-5.0


sql/sql_prepare.cc:
  Auto merged
2004-11-08 01:55:20 +02:00
unknown
f1b9bf699e postreview fixes
mysql-test/r/multi_update.result:
  test with multiupdate reopening tables
mysql-test/t/multi_update.test:
  test with multiupdate reopening tables
sql/item.cc:
  processor for cleunuping items in item tree
sql/item.h:
  processor for cleunuping items in item tree
sql/sql_update.cc:
  fixed case when lock reopened tables
sql/table.cc:
  methos for cleunup view itema of table if they are present
sql/table.h:
  methos for cleunup view itema of table if they are present
2004-11-08 01:54:23 +02:00
unknown
8793e2197a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


sql/sql_select.cc:
  Auto merged
tests/client_test.c:
  Auto merged
2004-11-08 01:15:26 +02:00
unknown
435b20aa68 Simpler arena swapping code
Now thd->mem_root is a pointer to thd->main_mem_root and THR_MALLOC is a pointer to thd->mem_root.
This gives us the following benefits:
- Allow us to easily detect if arena has already been swapped before (this fixes a bug in setup_conds() where arena was swaped twice in some cases)
- Faster swaps of arenas (as we don't have to copy the whole MEM_ROOT)
- We don't anymore have to call my_pthread_setspecific_ptr(THR_MALLOC,...) to change where memory is alloced. Now it's enough to set thd->mem_root



client/mysqltest.c:
  Remove some not needed defines
  (Things like this should be done in config-win.h)
include/config-win.h:
  Added popen() and pclose() compatibility macros
mysql-test/t/rpl_failed_optimize-master.opt:
  Portability fix
sql/ha_berkeley.cc:
  New thd->memroot handling
sql/item_cmpfunc.cc:
  Simpler arena swapping code
sql/item_func.cc:
  Simpler arena swapping code
sql/item_subselect.cc:
  Simpler arena swapping code
  New thd->mem_root handling
sql/item_sum.cc:
  New thd->mem_root handling
sql/item_timefunc.cc:
  Fixed not-initalized usage errors found by valgrind
sql/log_event.cc:
  New thd->mem_root handling
sql/mysql_priv.h:
  New thd->mem_root handling
sql/mysqld.cc:
  New thd->mem_root handling
sql/opt_range.cc:
  New thd->mem_root handling
sql/repl_failsafe.cc:
  New thd->mem_root handling
sql/set_var.cc:
  New thd->mem_root handling
sql/sql_acl.cc:
  New thd->mem_root handling
sql/sql_base.cc:
  Simpler arena swapping code
  New thd->mem_root handling
sql/sql_class.cc:
  New thd->mem_root handling
sql/sql_class.h:
  Simpler arena swapping code
  New thd->mem_root handling
sql/sql_db.cc:
  New thd->mem_root handling
sql/sql_error.cc:
  New thd->mem_root handling
sql/sql_help.cc:
  New thd->mem_root handling
sql/sql_insert.cc:
  New thd->mem_root handling
sql/sql_parse.cc:
  New thd->mem_root handling
  Added some extra checking of return value of new
sql/sql_prepare.cc:
  New thd->mem_root handling
sql/sql_select.cc:
  New thd->mem_root handling
sql/sql_select.h:
  New thd->mem_root handling
sql/sql_union.cc:
  Simpler arena swapping code
sql/sql_yacc.yy:
  New thd->mem_root handling
sql/table.cc:
  New thd->mem_root handling
sql/thr_malloc.cc:
  New thd->mem_root handling
tests/client_test.c:
  Added drop table to some tests
  Changed some table names to 't1'
2004-11-08 01:13:54 +02:00
unknown
4013552c24 merged
configure.in:
  Auto merged
2004-11-07 22:48:35 +01:00
unknown
7c92725164 mysql_test_run_new.c:
Included header fnmatch.h on Unix
  Changed C++ comments to C comments
  Corrected indentation of code written on Windows
  Split up lines to fit into 80 columns
  Initiated some variables to avoid warnings
  Added __attribute__((unused)) to unused function parameters
  Replace tab characters with space
  Put space after 'for', 'while' etc
  Added value to 'return' from non void function removef()
  On Unix strlwr() was incorrectly declared and a no op,
  replaced it with a macro that does nothing
  Split several statements on the same line
  Other minor changes to conform to coding standard


mysql-test/mysql_test_run_new.c:
  Included header fnmatch.h on Unix
  Changed C++ comments to C comments
  Corrected indentation of code written on Windows
  Split up lines to fit into 80 columns
  Initiated some variables to avoid warnings
  Added __attribute__((unused)) to unused function parameters
  Replace tab characters with space
  Put space after 'for', 'while' etc
  Added value to 'return' from non void function removef()
  On Unix strlwr() was incorrectly declared and a no op,
  replaced it with a macro that does nothing
  Split several statements on the same line
  Other minor changes to conform to coding standard
2004-11-06 14:01:27 +01:00
unknown
79a33fa20c Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-5.0
into sanja.is.com.ua:/home/bell/mysql/bk/work-view-5.0


mysql-test/r/view.result:
  Auto merged
mysql-test/t/view.test:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_view.cc:
  Auto merged
sql/table.h:
  Auto merged
2004-11-06 12:46:46 +02:00
unknown
9bd7def369 join_outer.result, join_outer.test:
Added cases for bugs #6307 and #6460.
sql_select.cc:
  Fixed the problem of bug reports #6307 and #6460.
  The reported wrong result sets were due to the fact that
  the added call of the fix_fields method for the built
  AND condition that joined WHERE and ON conditions
  broke ON expression, as it removed extra AND levels
  in the built condition. 
  It looks like that no attributes of the built condition
  are needed, so we don't have to call fix_fields here.


sql/sql_select.cc:
  Fixed the problem of bug report #6307 and #6460.
  The reported wrong result sets were due to the fact that
  the added call of the fix_fields method for the built
  AND condition that joined WHERE and ON conditions
  broke ON expression. 
  It looks like that no attributes of the built condition
  are needed, so we don't have to call fix_fields here.
mysql-test/t/join_outer.test:
  Added cases for bugs #6307 and #6460.
mysql-test/r/join_outer.result:
  Added cases for bugs #6307 and #6460.
2004-11-05 22:15:24 -08:00
unknown
714fc4b76c A fix and test case for Bug#6102 "Server crash with prepared statement
and blank after function name".
Crop fruits of copy-paste programming: pre-caching of stored functions
wasn't performed for prepared statements just because implementation
of prepared statements is done as an add-on to the main execution flow, 
and the preload was originally implemented for main execution branch
only (mysql_execute_command).


mysql-test/r/ps.result:
  Test results fixed: bug#6102
mysql-test/t/ps.test:
  A test case for Bug#6102 "Server crash with prepared statement
   and blank after functionname"
sql/sql_prepare.cc:
  A fix for Bug#6102 "Server crash with prepared statement and blank 
  after functionname": we need to preload stored functions from system tables
   before we open any other tables.
2004-11-05 22:02:07 +03:00
unknown
8b0ece5e88 new lock for multiupdate:
- open and create derived tables
- detect which tables should be locked for write
- lock and fill derived tables
some unitialized variables fixed


mysql-test/r/lock_multi.result:
  correct results returned
mysql-test/r/multi_update.result:
  correct results returned
mysql-test/r/view.result:
  correct results returned
mysql-test/t/multi_update.test:
  correct results returned
mysql-test/t/view.test:
  correct results returned
sql/mysql_priv.h:
  derived tables processing splited on table creation and table filling
sql/sql_base.cc:
  derived tables processing splited on table creation and table filling
sql/sql_class.h:
  function to detect when we need fill derived tables
sql/sql_derived.cc:
  derived tables processing splited on table creation and table filling
sql/sql_lex.cc:
  fixed uninitialized value
sql/sql_load.cc:
  fixed uninitialized value
sql/sql_parse.cc:
  initialization muved (will be done for all queries)
sql/sql_prepare.cc:
  preparation of multiupdate changed a bit because new locking procedure
sql/sql_update.cc:
  new lock for multiupdate:
  - open and create derived tables
  - detect which tables should be locked for write
  - lock and fill derived tables
sql/table.h:
  place to store select_result between creation and filling tables
2004-11-05 17:29:47 +02:00
unknown
00d05c1e6d Ensure that even the (relatively new) "mysql-test/Makefile.am" gets into the source tar-ball.
BitKeeper/etc/ignore:
  Added mysql-test/mysql_test_run_new to the ignore list
mysql-test/Makefile.am:
  All source files must be contained in their respective macros in order to be contained
  in the DISTFILES macro so that they get included in the source file tar-ball.
  "my_manage.h" was missing.
2004-11-05 15:50:53 +01:00
unknown
47a96b3195 WL#1972 "Evaluate HAVING before SELECT"
- more tests, post-review changes, bug-fixes, simplifications, and improved comments


mysql-test/r/having.result:
  - added tests for subqueries with HAVING
  - added tests for few other discovered bugs
  - renamed tables to the more standard t1,t2,..
mysql-test/t/having.test:
  - added tests for subqueries with HAVING
  - added tests for few other discovered bugs
  - renamed tables to the more standard t1,t2,..
sql/item.cc:
  - Extended the name resolution to support nested HAVING clauses in nested sub-queries
  - Factored out the code that resolves a column ref against a single query
  - Fixed several logical bugs
  - Removed unused variables
  - More/better comments
sql/sql_base.cc:
  Corrected function spec.
2004-11-05 15:48:44 +02:00
unknown
6608e22d9c user_var.result, user_var.test:
My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.


mysql-test/t/user_var.test:
  My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.
mysql-test/r/user_var.result:
  My previous change that "set @a=NULL" doesn't change charset
  fixed 'Bug #6321' as well. Prove with a new test that
  FIELD(<uservariable content NULL>, ...) now works fine too.
2004-11-05 14:07:12 +04:00
unknown
aee1e78aa1 As it is wrong and confusing to associate any
character set with NULL, @a should be latin2
after this query sequence:

   SET @a=_latin2'string';
   SET @a=NULL;

I.e. the second query should not change the charset
to the current default value, but should keep the
original value assigned during the first query.
In order to do it, we don't copy charset
from the argument if the argument is NULL
and the variable has previously been initialized.


mysql-test/r/ps_6bdb.result:
  t
mysql-test/r/ps_5merge.result:
  t
mysql-test/r/ps_3innodb.result:
  t
mysql-test/r/ps_7ndb.result:
  t
mysql-test/r/ps_4heap.result:
  t
mysql-test/r/ps_2myisam.result:
  t
sql/item_func.cc:
  t
2004-11-05 13:37:36 +04:00
unknown
d497334164 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
2004-11-05 08:52:44 +01:00
unknown
b38510ecd0 Merge ibabaev@bk-internal.mysql.com:/home/bk/mysql-4.1
into rurik.mysql.com:/home/igor/mysql-4.1
2004-11-04 22:16:00 -08:00
unknown
8264d83dfa ps.result, ctype_ucs.result, ctype_ucs.test, ps.test:
Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.


mysql-test/t/ps.test:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/t/ctype_ucs.test:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/r/ctype_ucs.result:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
mysql-test/r/ps.result:
  Bug #6351 make test failure "Unknown character set"
  UCS2 related tests were moved into ctype_ucs.
2004-11-05 10:12:33 +04:00
unknown
62ded37e36 func_in.result, func_in.test:
Added a case for bug #6365.
item_cmpfunc.cc:
  Fixed bug #6365 : Server crashed when list of values
  in IN predicate contains NULL while the tested field is
  of the character type and not of the default set;
  e.g. when f in 'f IN (NULL,'aa') belongs to binary
  character set, while the default character set is latin1.


sql/item_cmpfunc.cc:
  Fixed bug #6365 : Server crash when list of values
  in IN predicate contains NULL while the tested field is
  of the character type of not of the default set
  e.g. when f in 'f IN (NULL,'aa') belongs to binary
  character set, while the default character set is latin1.
mysql-test/t/func_in.test:
  Added a case for bug #6365.
mysql-test/r/func_in.result:
  Added a case for bug #6365.
2004-11-04 20:39:52 -08:00
unknown
fac533bb14 new test for bdb 2004-11-04 22:37:38 +01:00
unknown
4a56b28461 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-11-04 19:19:51 +01:00