Commit graph

1203 commits

Author SHA1 Message Date
unknown
ffc3c5c9fa Merge gvanderkelen@bk-internal.mysql.com:/home/bk/mysql-5.0
into kriem.kemuri.org:/home/geert/MySQL/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
2005-04-08 14:11:22 +02:00
unknown
e10d81448d Moved some old test and added a new test to only be run with mysql-test-run --big
Fixed warnings by valgrind for sum_distinct.test
Enable buffered-record-reads after filesort for InnoDB tables with short primary key
Enabled sort-with-data for MyISAM temporary files


BitKeeper/etc/ignore:
  added tools/mysqltestmanager
client/mysqltest.c:
  Ensure that BIG_TEST is always set to 0 or 1
  Fix the 'eval' also honors 'require'
mysql-test/mysql-test-run.sh:
  Enlarge InnoDB table space for --big tests
mysql-test/r/heap.result:
  Fix after adding more optimzation for filsort
mysql-test/r/sum_distinct.result:
  Move 'slow' part of test to sum_distinct-big.test
mysql-test/t/heap.test:
  Ensure that results are indpendent of optimizer
mysql-test/t/sum_distinct.test:
  Move 'slow' part of test to sum_distinct-big.test
sql/filesort.cc:
  Use 'sort with data' also on temporary files and with INSERT ... SELECT
sql/ha_innodb.h:
  Remove HA_FAST_KEY_READ to enable buffered-record-reads after filesort
sql/handler.h:
  More comments
sql/mysql_priv.h:
  A bit smaller limit for cache for buffered-records-read (after testing)
sql/records.cc:
  Don't use buffered-record-reads if ref_length > MAX_REFLENGTH
  Fixed warning from valgrind in 'sum_distinct'
sql/sql_select.cc:
  Ensure that tempory tables has query_id set for all fields
  (Required for sort-with-data to work on temp files)
2005-04-07 19:24:14 +03:00
unknown
1ef9b97209 Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into mysql.com:/home/jimw/my/mysql-5.0-clean


client/mysqlcheck.c:
  Auto merged
2005-04-06 15:24:12 -07:00
unknown
0d17aea729 Merge mysql.com:/home/jimw/my/mysql-4.0-clean
into mysql.com:/home/jimw/my/mysql-4.1-clean


client/mysqlcheck.c:
  Auto merged
mysys/my_rename.c:
  Auto merged
2005-04-06 11:02:20 -07:00
unknown
96e2fc8901 Merge gvanderkelen@bk-internal.mysql.com:/home/bk/mysql-5.0
into kriem.kemuri.org:/home/geert/MySQL/mysql-5.0
2005-04-06 18:07:28 +02:00
unknown
72139ac315 Adding --show-warnings option for the mysql command line tool so warnings,
if any, are shown after execution of a statement in both batch and 
interactive mode. 
In interactive mode \w means show the warnings and \W means don't 
show the warnings.


client/client_priv.h:
  Adding OPT_SHOW_WARNINGS for the --show-warnings switch for the mysql
  command line tool.
client/mysql.cc:
  Adding --show-warnings option so warnings, if any, are shown after 
  execution of a statement in both batch and interactive mode. 
  In interactive mode \w means show the warnings and \W means don't 
  show the warnings.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-04-05 15:30:17 +02:00
unknown
66e6808ed0 Merge
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
sql-common/client.c:
  Auto merged
sql/mysqld.cc:
  Auto merged
2005-04-04 23:03:56 -07:00
unknown
2cb2374b78 Merge pchardin@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/cps/mysql/trees/mysql-5.0


mysql-test/mysql-test-run.sh:
  Auto merged
2005-04-05 06:12:41 +04:00
unknown
fe02ce98af Merge mysql.com:/home/jimw/my/mysql-4.1-8866
into mysql.com:/home/jimw/my/mysql-4.1-clean


client/mysqltest.c:
  Auto merged
sql-common/client.c:
  Auto merged
2005-04-04 18:26:39 -07:00
unknown
ae25f8df6e Now one gets an error if one tries to insert an invalid value via a stored procedure in STRICT mode. (Bug #5907)
client/mysqldump.c:
  Changed some function and variable names to MySQL syntax
  Fixed indentation for last few pushes
  (No logic changes)
mysql-test/r/strict.result:
  Test for bug #5907 (Traditional mode: invalid value can be inserted via a stored procedure)
mysql-test/t/strict.test:
  Test for bug #5907 (Traditional mode: invalid value can be inserted via a stored procedure)
sql/sql_base.cc:
  More comments
sql/sql_error.cc:
  Ensure that PS gives error for invalid values in 'strict' mode
2005-04-05 00:32:48 +03:00
unknown
d67f4397dc Enable IM in the binary distribution and fix Bug #9513 (mysql.server script from the binary distibution
doesn't work out of the box)


client/Makefile.am:
  old mysqlmanager, mysqlmanagerc and mysqlmanager-pwgen renamed into mysqltestmanager, mysqltestmanagerc and
  mysqltestmanager-pwgen respectively
mysql-test/mysql-test-run.sh:
  Old mysqlmanager, mysqlmanagerc and mysqlmanager-pwgen renamed into
  mysqltestmanager, mysqltestmanagerc and mysqltestmanager-pwgen respectively
scripts/make_binary_distribution.sh:
  Fix the script to include IM and process mysql.server correctly
server-tools/instance-manager/Makefile.am:
  change default socket name to follow mysqld style (and thus, fix the ptoblem with non-existant localstatedir
  in the binary distribution)
support-files/mysql.spec.sh:
  Fix mysql.spec template to reflect the name change
tools/Makefile.am:
  old mysqlmanager renamed into mysqltestmanager
2005-04-04 03:49:10 +04:00
unknown
bd2da82b21 Merge
client/mysqldump.c:
  merged changes for bug #9175
2005-04-01 08:35:33 -06:00
unknown
30c7d20afb Fix segmentation fault in mysqlcheck when the last table
checked with --auto-repair mode returned an error (such
as being a merge table). (Bug #9492)


client/mysqlcheck.c:
  When testing whether the last table should be added to the list of tables to
  be repaired, we don't have a valid row[] to look at, so don't.
2005-03-31 11:43:39 -08:00
unknown
5b3549e64c Bug #9175 seg fault on 'mysqldump --single-transaction --tab mysql nonexistent'
mysqldump.c:
  Fixed get_actual_table_name so that it calls mysql_free_result in all cases that a non-NULl result is returned


client/mysqldump.c:
  Fixed get_actual_table_name so that it calls mysql_free_result in all cases that a non-NULl result is returned
2005-03-31 08:37:18 -06:00
unknown
73e15f57f8 Merge
client/mysqltest.c:
  Auto merged
BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Auto merged
myisam/mi_create.c:
  Auto merged
mysql-test/r/grant2.result:
  Auto merged
mysql-test/r/metadata.result:
  Auto merged
mysql-test/r/ps_1general.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_enum.result:
  Auto merged
mysql-test/t/grant2.test:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
ndb/src/kernel/blocks/dbacc/Dbacc.hpp:
  SCCS merged
ndb/src/kernel/blocks/dbacc/DbaccMain.cpp:
  SCCS merged
sql/sql_union.cc:
  DBUG_ASSERT(TRUE) is useless so assume opposite
2005-03-28 23:06:19 +02:00
unknown
633207b549 Bug #9175 seg fault on 'mysqldump --single-transaction --tab mysql nonexistent'
My code in get_actual_tablename was not checking to make sure SHOW TABLES LIKE % was returning rows.  Now I check that the resultset is not null and has at least 1 row before I process the table.

mysqldump.c:
  Add code to get_actual_tablename() to guard against SHOW TABLES LIKE not returning any rows


client/mysqldump.c:
  Add code to get_actual_tablename() to guard against SHOW TABLES LIKE not returning any rows
2005-03-28 13:06:43 -06:00
unknown
92db4a838f Fix reconnect when using prepared statements, and add
--disable_reconnect and --enable_reconnect to mysqltest
so that it can be tested properly. (Bug #8866)


client/mysqltest.c:
  Add support for --disable_reconnect and --enable_reconnect
mysql-test/r/kill.result:
  Update results
mysql-test/t/kill.test:
  Fix test to actually verify that killing a connection is working,
  and that automatic reconnect is working as desired.
sql-common/client.c:
  Clean up MYSQL->stmts on reconnect by invalidating statements
  not in the MYSQL_STMT_INIT_DONE state, and reconnecting others
  to the new MYSQL object.
2005-03-28 09:59:41 -08:00
unknown
68717638d5 Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1


acinclude.m4:
  Auto merged
mysql-test/r/ps_1general.result:
  Auto merged
2005-03-26 19:49:24 +01:00
unknown
fa2bdf4df6 Merge mysql.com:/home/jimw/my/mysql-4.1-clean
into mysql.com:/home/jimw/my/mysql-5.0-clean


client/mysql.cc:
  Auto merged
2005-03-25 10:51:08 -08:00
unknown
ad869ebda4 Merge mysql.com:/home/jimw/my/mysql-4.1-8499
into mysql.com:/home/jimw/my/mysql-4.1-clean
2005-03-25 09:45:30 -08:00
unknown
c26930d26f Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1
2005-03-23 21:10:01 +01:00
unknown
58aeecb078 client/mysqltest.c
corrected number of fields for --enable_metadata
sql/sql_union.cc
    fixed a apparent typo in assert


client/mysqltest.c:
  corrected number of fields for --enable_metadata
mysql-test/r/metadata.result:
  corrected number of fields for --enable_metadata
mysql-test/r/ps_1general.result:
  corrected number of fields for --enable_metadata
mysql-test/r/ps_2myisam.result:
  corrected number of fields for --enable_metadata
mysql-test/r/ps_3innodb.result:
  corrected number of fields for --enable_metadata
mysql-test/r/ps_4heap.result:
  corrected number of fields for --enable_metadata
mysql-test/r/ps_5merge.result:
  corrected number of fields for --enable_metadata
mysql-test/r/type_enum.result:
  corrected number of fields for --enable_metadata
sql/sql_union.cc:
  fixed a apparent typo in assert
2005-03-23 20:38:42 +01: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
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
8a25ac883f Fix for spurious failures of sp.test on many platforms (aka Bug #9161
"Warnings on 'drop procedure' platform-specific").

In mysqltest we should not issue "SHOW WARNINGS" until we have not 
read results from all statements in multi-statement.

Otherwise such "SHOW WARNINGS" will either cause "Packets out of order"
error and thus will ruin current connection (but we may not notice this as
it happened in sp.test because we ignore errors from such auxilary
SHOW WARNINGS and use auto-reconnecting connections) or will
succeed but consume first packet from next statement in multi-statement
sequence (this happens if "SHOW WARNINGS" is issued when this packet
is already received by client. Packet is thrown away by net_clear()
call which is issued when "SHOW WARNINGS" is sent to server).

In our case sp.test failed because usually we had first situation
but sometimes second situation occured causing warning to pop-up.


client/mysqltest.c:
  We should not issue "SHOW WARNINGS" if we have not processed all 
  results from multi-statement.
2005-03-20 20:29:03 +03:00
unknown
31f9e5a752 Merge mysql.com:/home/jimw/my/mysql-5.0-8866
into mysql.com:/home/jimw/my/mysql-5.0-build
2005-03-17 08:26:12 -08: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
9045b70f40 Fix failure in 'kill' test due to change of default
reconnect setting in mysql client library. (Bug #8866)


client/mysqltest.c:
  Make sure reconnect is always set on connections, and
  note that there is a test that relies on this
2005-03-16 17:13:45 -08:00
unknown
06f59b28ab Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/my/mysql-5.0


sql/item_func.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2005-03-16 22:59:06 +02:00
unknown
74007170b5 Fixes after Sinisa and Serg comments after push of patch for BUG#9123.
BUG#9123 is solved earlier than this patch though.
2005-03-16 21:56:56 +01:00
unknown
284b8b8b63 Cleanup during reviews
Removed some optional arguments
Fixed portability problem in federated tests


client/sql_string.cc:
  update from sql/sql_string.cc
client/sql_string.h:
  update from sql/sql_string.h
mysql-test/r/federated.result:
  Fixed error message
sql/field.cc:
  Cleanup during review
  Remove const in 'const unsigned int'
sql/field.h:
  Remove const in 'const unsigned int'
sql/ha_federated.cc:
  Better error string.  Add missing argument to error (before 'errno' was picked up from stack)
sql/handler.cc:
  Removed compiler warning
sql/item_func.cc:
  Cleanup during review
sql/item_sum.cc:
  Cleanup during review
sql/lock.cc:
  Remove optional arguments
sql/log_event.cc:
  Remove optional arguments
sql/mysql_priv.h:
  Remove optional arguments
  cahnge preapre_create_fields to use pointers instead of references
sql/opt_range.cc:
  Fix arguments so that return value is last
sql/sql_base.cc:
  Remove optional arguments
sql/sql_delete.cc:
  Remove optional arguments
sql/sql_error.cc:
  Remove optional arguments
sql/sql_help.cc:
  Remove optional arguments
sql/sql_parse.cc:
  Remove optional arguments
sql/sql_prepare.cc:
  Remove optional arguments
sql/sql_rename.cc:
  Remove optional arguments
sql/sql_select.cc:
  Remove optional arguments
sql/sql_show.cc:
  Cleanup during review
sql/sql_string.cc:
  Simple optimization
sql/sql_table.cc:
  Remove optional arguments
  Fixed indentation
sql/sql_update.cc:
  Remove optional arguments
sql/sql_yacc.yy:
  Change references to pointers
2005-03-16 16:11:01 +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
43a954666f BUG#9123: Updates after Mats review 2005-03-16 13:57:59 +01:00
unknown
5d3c9a9a8b Merge grichter@bk-internal.mysql.com:/home/bk/mysql-5.0
into lmy002.wdf.sap.corp:/home/georg/work/mysql/sap/mysql-5.0
2005-03-16 08:56:32 +01:00
unknown
0cd045ca49 typecast fix for windows 64-bit compilation error
BitKeeper/etc/ignore:
  Added VC++Files/client/mysql_amd64.dsp to the ignore list
2005-03-16 08:51:57 +01:00
unknown
83a242a092 Merge mysql.com:/home/bkroot/mysql-4.1 into mysql.com:/home/bk/b9123-4.1
client/mysqldump.c:
  Auto merged
2005-03-16 08:14:05 +01: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
5ed4fd6ba9 Fix 'tee' command in mysql client. (Bug #8499)
client/mysql.cc:
  A va_list can't be reused without being copied or reset, so
  don't try to reuse it in tee_fprintf().
2005-03-15 16:37:05 -08: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
4a49d3f333 Merge mdk10.(none):/home/reggie/bk/mysql-4.1
into mdk10.(none):/home/reggie/bk/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
client/mysqldump.c:
  Auto merged
sql/sql_show.cc:
  Auto merged
2005-03-15 11:42:31 -06:00
unknown
ccfd174670 Bug #6660 mysqldump creates bad pathnames on Windows
This is a modifiction of my previous patch after receiving feedback. This is a better way to fix the problem.  With this patch, data directory and index directory will use only forward slashes (/) when on Windows.

mysqldump.c:
  Removed fixPaths routine.  Was improper fix for bug #6660
sql_show.cc:
  Changed append_directory to convert backslashes to foward slashes when on Windows.


sql/sql_show.cc:
  Changed append_directory to convert backslashes to foward slashes when on Windows.
client/mysqldump.c:
  Removed fixPaths routine.  Was improper fix for bug #6660
2005-03-15 11:33:06 -06:00
unknown
0e802637cc BUG#9123: If a table name is given with an underscore,
then this must be properly quoted when sent to 
SHOW TABLES LIKE ...
2005-03-15 16:23:02 +01:00
unknown
2722a28691 Bug #6660 mysqldump creates bad pathnames on Windows
This really should not happen on Windows and part of the problem not fixed here is why show create table includes data directory when being run on Windows.  However, this patch fixes the bug in mysqldump.c

mysqldump.c:
  Added fixPaths function to convert \ to / in data directory and index directory entries only on Windows


client/mysqldump.c:
  Added fixPaths function to convert \ to / in data directory and index directory entries only on Windows
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-14 16:47:35 -06: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
0fdd650fec Fixed Bug#8922.
Reverted Jim's patch.


client/mysql.cc:
  Fixed Bug#8922, The deilimeter cannot be reset after it is set as word 'delimiter'
include/my_sys.h:
  Reverted Jim's patch.
mysys/mf_iocache.c:
  Reverted Jim's patch.
sql/sql_class.h:
  Reverted Jim's patch.
2005-03-08 18:12:12 +02: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
52d19cbd7c fixed conversion errors (Windows IA64 build) 2005-03-07 09:47:24 +01:00