Commit graph

364 commits

Author SHA1 Message Date
unknown
c635d37479 Merge 4.1 -> 5.0.
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
VC++Files/sql/mysqld.dsp:
  Auto merged
client/Makefile.am:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/r/insert_select.result:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/r/null.result:
  Auto merged
mysql-test/r/connect.result:
  Auto merged
mysql-test/r/func_sapdb.result:
  Auto merged
mysql-test/r/mix_innodb_myisam_binlog.result:
  Auto merged
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/rpl_change_master.result:
  Auto merged
mysql-test/r/rpl_log.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/r/rpl_flush_log_loop.result:
  Auto merged
mysql-test/r/rpl_flush_tables.result:
  Auto merged
mysql-test/r/rpl_loaddata.result:
  Auto merged
mysql-test/r/rpl_loaddata_rule_m.result:
  Auto merged
mysql-test/r/rpl_loaddata_rule_s.result:
  Auto merged
mysql-test/r/rpl_max_relay_size.result:
  Auto merged
mysql-test/r/rpl_reset_slave.result:
  Auto merged
mysql-test/r/rpl_temporary.result:
  Auto merged
mysql-test/r/rpl_until.result:
  Auto merged
mysql-test/r/rpl_user_variables.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/union.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/func_sapdb.test:
  Auto merged
mysql-test/t/mix_innodb_myisam_binlog.test:
  Auto merged
mysql-test/t/mysqlbinlog.test:
  Auto merged
mysql-test/t/rpl_change_master.test:
  Auto merged
mysql-test/t/rpl_log.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
netware/BUILD/compile-linux-tools:
  Auto merged
netware/BUILD/compile-netware-END:
  Auto merged
netware/BUILD/compile-netware-all:
  Auto merged
netware/BUILD/compile-netware-standard:
  Auto merged
mysql-test/t/rpl_empty_master_crash.test:
  Auto merged
mysql-test/t/rpl_error_ignored_table.test:
  Auto merged
mysql-test/t/rpl_flush_log_loop.test:
  Auto merged
mysql-test/t/rpl_loaddata.test:
  Auto merged
mysql-test/t/rpl_loaddata_rule_m.test:
  Auto merged
mysql-test/t/rpl_loaddata_rule_s.test:
  Auto merged
mysql-test/t/rpl_max_relay_size.test:
  Auto merged
mysql-test/t/rpl_openssl.test:
  Auto merged
mysql-test/t/rpl_relayrotate-slave.opt:
  Auto merged
mysql-test/t/rpl_reset_slave.test:
  Auto merged
mysql-test/t/rpl_trunc_binlog.test:
  Auto merged
mysql-test/t/rpl_until.test:
  Auto merged
mysql-test/t/rpl_user_variables.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
scripts/make_binary_distribution.sh:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_berkeley.h:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_create.h:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log_event.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/protocol.h:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_test.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql-common/client.c:
  Auto merged
tests/client_test.c:
  Auto merged
2004-04-07 19:07:44 +02:00
unknown
7873b89fc5 Fixed many compiler warnings
Fixed bugs in group_concat with ORDER BY and DISTINCT (Bugs #2695, #3381 and #3319)
Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
Set locked_in_memory properly


include/mysql_com.h:
  Fixed compiler warning
libmysqld/emb_qcache.cc:
  Removed not used variable
libmysqld/lib_sql.cc:
  Removed not used variable
myisam/mi_locking.c:
  Added comment
myisam/mi_rnext.c:
  Fixed bug in concurrent insert
myisam/mi_rprev.c:
  Simple optimization
mysql-test/r/func_gconcat.result:
  New tests
mysql-test/t/func_gconcat.test:
  New tests
mysql-test/t/func_group.test:
  Cleanup
sql-common/client.c:
  Removed compiler warning
sql/derror.cc:
  Better comments
sql/field.cc:
  Removed not used function/variable
sql/field.h:
  Removed not needed variable
sql/ha_innodb.cc:
  Removed not used function
sql/item.cc:
  Fixed compiler warning
sql/item_cmpfunc.cc:
  Fixed compiler warning
sql/item_func.cc:
  Fixed compiler warning
sql/item_geofunc.cc:
  Fixed compiler warning
sql/item_sum.cc:
  Fixed bugs in group_concat and added more comments
  (Bugs #2695, #3381 and #3319)
  - field->abs_offset was not needed
  - Wrong assumption of field order in temporary table
  - Some not used variables removed
  - Added ORDER BY fields after argument fields so that code in sql_select.cc can move all fields to point to temporary tables, if needed.
  - Optimized loops
sql/item_sum.h:
  Bug fixing and cleanup of group_concat()
sql/log.cc:
  Removed wrong comment
sql/log_event.cc:
  Removed compiler warning
sql/mysqld.cc:
  Set locked_in_memory properly
sql/protocol.cc:
  Removed compiler warning
sql/set_var.cc:
  Code cleanup
sql/slave.cc:
  Fixed crash when doing rollback in slave and the io thread catched up with the sql thread
sql/sql_cache.cc:
  Removed compiler warnings
sql/sql_derived.cc:
  Removed not used variable
sql/sql_insert.cc:
  Removed compiler warnings
sql/sql_lex.cc:
  Removed not used lable
sql/sql_lex.h:
  Removed compiler warnings
sql/sql_parse.cc:
  Removed compiler warnings
sql/sql_prepare.cc:
  Removed compiler warnings
sql/sql_select.cc:
  Removed not used variables
  Added function comments
sql/sql_show.cc:
  Removed compiler warnings
sql/sql_yacc.yy:
  Fix for ORDER BY handling in GROUP_CONCAT()
2004-04-05 13:56:05 +03:00
unknown
ab8c3d89b8 Changing SET SQL_LOG_BIN so that it explicitely throws an error if
user is not SUPER, instead of setting the value but ignoring it
silently internally.


mysql-test/r/rpl_temporary.result:
  result update
mysql-test/t/rpl_temporary.test:
  adding test for privileges for SET SQL_LOG_BIN
sql/log.cc:
  don't need to check SUPER
sql/set_var.cc:
  refuse SET SQL_LOG_BIN if not SUPER
sql/sql_insert.cc:
  Don't need to check SUPER
2004-03-26 19:25:22 +01:00
unknown
8b2b219fb5 merge with 4.0 to get security fixes and latest bug fixes
BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
  Auto merged
VC++Files/mysql.dsw:
  Auto merged
VC++Files/mysys/mysys.dsp:
  Auto merged
innobase/buf/buf0buf.c:
  Auto merged
innobase/include/srv0start.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/mem/mem0dbg.c:
  Auto merged
innobase/que/que0que.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/sync/sync0rw.c:
  Auto merged
innobase/sync/sync0sync.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
libmysql/manager.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/unireg.cc:
  Auto merged
VC++Files/sql/mysqld.dsp:
  Removed wrong define USE_SYMLINK
include/config-win.h:
  Use original code
innobase/srv/srv0srv.c:
  merge
innobase/usr/usr0sess.c:
  merge
libmysql/libmysql.c:
  merge
mysql-test/r/func_test.result:
  merge
mysql-test/t/func_test.test:
  merge
sql/log.cc:
  merge
sql/mysqld.cc:
  merge
2004-02-20 17:43:02 +02:00
unknown
68242939d8 Fixed usage of strxnmov() in recent changesets
libmysql/libmysql.c:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
mysys/mf_tempfile.c:
  Fixed usage of strnxmov()
  Simple optimization
mysys/my_tempnam.c:
  Fixed usage of strnxmov()
  Simple optimization
sql/log.cc:
  simple optimization
sql/mini_client.cc:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
sql/mysqld.cc:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
  Fixed indentation
2004-02-19 22:04:31 +02:00
unknown
ddf17601f3 potential problem fixed afer some reasoning 2004-02-19 09:11:46 +01:00
unknown
5084b6b701 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/mysql_src/mysql-5.0-new-binlog-format


include/my_sys.h:
  Auto merged
mysql-test/r/rpl_max_relay_size.result:
  Auto merged
mysql-test/r/rpl_rotate_logs.result:
  Auto merged
mysql-test/r/rpl_trunc_binlog.result:
  Auto merged
mysql-test/t/rpl_log_pos.test:
  Auto merged
mysql-test/t/rpl_max_relay_size.test:
  Auto merged
mysql-test/t/rpl_rotate_logs.test:
  Auto merged
mysql-test/t/rpl_trunc_binlog.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/log_event.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_repl.cc:
  Auto merged
2003-12-19 23:05:07 +01:00
unknown
62554f812e This is the final commit for Worklog tasks:
* A more dynamic binlog format which allows small changes (1064)
   * Log session variables in Query_log_event (1063)
It contains a few bugfixes (which I made when running the testsuite).
I carefully updated the results of the testsuite (i.e. I checked for every one,
if the difference between .reject and .result could be explained).
Apparently mysql-test-run --manager is broken in 4.1 and 5.0 currently,
so I could neither run the few tests which require --manager, nor check
that they pass nor modify their .result. But for builds, we don't run
with --manager.
Apart from --manager, the full testsuite passes, with Valgrind too (no errors).
I'm going to push in the next minutes. Remains: update the manual.
Note: by chance I saw that (in 4.1, in 5.0) rpl_get_lock fails when run alone;
this is normal at it makes assumptions on thread ids. I will fix this one day
in 4.1.


mysql-test/r/rpl000015.result:
  result update
mysql-test/r/rpl_change_master.result:
  result update
mysql-test/r/rpl_error_ignored_table.result:
  result update
mysql-test/r/rpl_flush_log_loop.result:
  result update
mysql-test/r/rpl_flush_tables.result:
  result update
mysql-test/r/rpl_loaddata.result:
  result update
mysql-test/r/rpl_loaddata_rule_m.result:
  result update
mysql-test/r/rpl_loaddata_rule_s.result:
  result update
mysql-test/r/rpl_log.result:
  result update
mysql-test/r/rpl_log_pos.result:
  result update
mysql-test/r/rpl_max_relay_size.result:
  result update
mysql-test/r/rpl_relayrotate.result:
  result update
mysql-test/r/rpl_replicate_do.result:
  result update
mysql-test/r/rpl_reset_slave.result:
  result update
mysql-test/r/rpl_rotate_logs.result:
  result update
mysql-test/r/rpl_session_var.result:
  result update
mysql-test/r/rpl_temporary.result:
  result update
mysql-test/r/rpl_trunc_binlog.result:
  result update
mysql-test/r/rpl_until.result:
  result update
mysql-test/r/rpl_user_variables.result:
  result update
mysql-test/t/rpl000010-slave.opt:
  need to wait 2 events, because now we receive a Format_desc on top of the Rotate,
  when replication starts.
mysql-test/t/rpl000015.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_change_master.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_empty_master_crash.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_error_ignored_table.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_flush_log_loop.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_loaddata.test:
  position update
mysql-test/t/rpl_loaddata_rule_m.test:
  position update
mysql-test/t/rpl_loaddata_rule_s.test:
  position update
mysql-test/t/rpl_log.test:
  position update
mysql-test/t/rpl_log_pos.test:
  position update
mysql-test/t/rpl_max_relay_size.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_openssl.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_redirect.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_relayrotate-slave.opt:
  better options for this test
mysql-test/t/rpl_relayrotate.test:
  using max() is better for debugging (it shows at which place the slave
  SQL thread resumed)
mysql-test/t/rpl_replicate_do.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_reset_slave.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_rotate_logs.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_session_var.test:
  100 because password() is longer than 10 chars
mysql-test/t/rpl_trunc_binlog.test:
  relay log information is not repeatable in general (if a reconnection
  happens because --sleep=10 for example), so we hide these columns.
mysql-test/t/rpl_until.test:
  position update
mysql-test/t/rpl_user_variables.test:
  position update
sql/log.cc:
  Ensure that the Format_desc propagated on next relay logs does not trigger
  undue actions (like incrementing some positions or clearing some files).
sql/log_event.cc:
  * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of
  a transaction (then these were written by the slave itself to its relay log),
  it should not increment rli->group* variables, but only rli->event* ones.
  * When the slave SQL thread finds a Format_desc not to be ignored (not
  the same server id as the slave's), if it has log_pos==0 it must not trigger
  "unfinished transaction in master's binlog" (log_pos==0 is always a marker
  in the relay log to mean "this event was not at this place in the master's
  binlog": it's for fake Rotate events, and for Format_description events which the master had
  to send us for replication to start).
  * In the Query_log_event on disk, catalog is now terminated by '\0'.
  * thd->catalog must be set to 0 when some exec_event() terminate (otherwise
  double free).
sql/slave.cc:
  * Fixes for a few bugs when ignoring events in the slave SQL thread:
    - do not decrement rli->slave_skip_counter if the event is an event
    related to the binlog or relay log itself (FORMAT_DESCRIPTION,
    ROTATE, STOP) because these events should never be skipped (or the slave
    will be confused). Usually the user wants to skip a query, not a Rotate... 
    - when we (re)connect to the master, we must free description_event_for_queue
    (otherwise memory leak when we reconnect). 
  * Changed a bit the code where we change description_event_for_queue,
  to make it look "safer".
  * Moved 'created=0' to log.cc where it is safer.
  * When the slave SQL thread finds a Rotate/Format_desc/Stop in the middle of
  a transaction (then these were written by the slave itself to its relay log),
  it should not increment rli->group* variables, but only rli->event* ones.
sql/sql_class.h:
  a warning comment
sql/sql_repl.cc:
  A mistake: I had passed a char* instead of char**
2003-12-19 22:40:23 +01:00
unknown
4cd9022769 Merge 4.1 to 5.0.
BitKeeper/etc/logging_ok:
  auto-union
client/mysql.cc:
  Auto merged
configure.in:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
myisam/mi_check.c:
  Auto merged
mysql-test/r/insert.result:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/r/multi_update.result:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/insert.test:
  Auto merged
mysql-test/t/multi_update.test:
  Auto merged
mysql-test/t/query_cache.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/lex.h:
  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/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.h:
  Auto merged
sql/share/czech/errmsg.txt:
  Auto merged
sql/share/romanian/errmsg.txt:
  Auto merged
2003-12-19 18:03:27 +01:00
unknown
378894b000 This will be pushed only after I fix the testsuite.
This is the main commit for Worklog tasks:
 * A more dynamic binlog format which allows small changes (1064)
 * Log session variables in Query_log_event (1063)
Below 5.0 means 5.0.0.
MySQL 5.0 is able to replicate FOREIGN_KEY_CHECKS, UNIQUE_KEY_CHECKS (for speed),
SQL_AUTO_IS_NULL, SQL_MODE. Not charsets (WL#1062), not some vars (I can only think
of SQL_SELECT_LIMIT, which deserves a special treatment). Note that this
works for queries, except LOAD DATA INFILE (for this it would have to wait
for Dmitri's push of WL#874, which in turns waits for the present push, so...
the deadlock must be broken!). Note that when Dmitri pushes WL#874 in 5.0.1,
5.0.0 won't be able to replicate a LOAD DATA INFILE from 5.0.1.
Apart from that, the new binlog format is designed so that it can tolerate
a little variation in the events (so that a 5.0.0 slave could replicate a
5.0.1 master, except for LOAD DATA INFILE unfortunately); that is, when I
later add replication of charsets it should break nothing. And when I later
add a UID to every event, it should break nothing.
The main change brought by this patch is a new type of event, Format_description_log_event,
which describes some lengthes in other event types. This event is needed for
the master/slave/mysqlbinlog to understand a 5.0 log. Thanks to this event,
we can later add more bytes to the header of every event without breaking compatibility.
Inside Query_log_event, we have some additional dynamic format, as every Query_log_event
can have a different number of status variables, stored as pairs (code, value); that's
how SQL_MODE and session variables and catalog are stored. Like this, we can later
add count of affected rows, charsets... and we can have options --don't-log-count-affected-rows
if we want.
MySQL 5.0 is able to run on 4.x relay logs, 4.x binlogs.
Upgrading a 4.x master to 5.0 is ok (no need to delete binlogs),
upgrading a 4.x slave to 5.0 is ok (no need to delete relay logs);
so both can be "hot" upgrades.
Upgrading a 3.23 master to 5.0 requires as much as upgrading it to 4.0.
3.23 and 4.x can't be slaves of 5.0.
So downgrading from 5.0 to 4.x may be complicated.
Log_event::log_pos is now the position of the end of the event, which is
more useful than the position of the beginning. We take care about compatibility
with <5.0 (in which log_pos is the beginning).
I added a short test for replication of SQL_MODE and some other variables.
TODO:
- after committing this, merge the latest 5.0 into it
- fix all tests
- update the manual with upgrade notes.


client/Makefile.am:
  mysqlbinlog.cc depends slightly on sql/mysql_priv.h
client/mysqlbinlog.cc:
  Make mysqlbinlog able to read the new binlog format,
  by seeking to the start and reading the first few events, to
  detect the format of the binlog.
include/my_sys.h:
  a correct tell() for SEQ_READ_APPEND caches.
mysys/mf_iocache2.c:
  a correct tell() for SEQ_READ_APPEND caches
  (my_b_tell() is not working for such caches).
sql/ha_innodb.cc:
  we are getting rid of event lengthes here and there, which is good.
sql/log.cc:
  Start events will have created==0 if generated by rotation (like in 3.23).
  In 5.0 we always write a Format_description_log_event at the beginning of
  every master's binary log and of every slave's relay log.
  We also add Rotate and Stop to relay logs (like there already was in
  master's binary logs).
  When we rotate a relay log, we write the previous relay log's Start event
  (the one which was sent from the master) to the beginning of the new log,
  so that we don't need the previous relay log to understand the new one;
  that's the purpose of MYSQL_LOG::description_event_for_queue.
  Removed logging of SET FOREIGN_KEY_CHECKS, because we handle it as flags
  in the Query event now.
sql/log_event.cc:
  New event type: Format_description_log_event, to describe the log's format.
  read_log_event() needs to be passed this event to be able to read 5.0 events.
  Query_log_event has new members flags2 and sql_mode for replication of session
  variables (except charsets which are WL#1062) and SQL_MODE.
  flags2 is in fact a kind of copy of thd->options (&'d with a mask).
  Now with this replication of FOREIGN_KEY_CHECKS, SQL_AUTO_IS_NULL, UNIQUE_CHECKS
  and SQL_MODE work; with mysqlbinlog too.
sql/log_event.h:
  Binlog version is changed to 4.
  New classes (details in sql/log_event.cc).
  Removing some useless #defines.
sql/mysql_priv.h:
  Definition of SELECT_DISTINCT and others must be visible in client/mysqlbinlog.cc,
  so adding #ifdefs.
sql/mysqld.cc:
  update for prototype change
sql/slave.cc:
  When the slave opens a relay log, it reads the first few events to know the format.
  When slave I/O thread receives a Rotate from the master, it rotates its relay log
  (to avoid mixed format in the relay log).
sql/slave.h:
  in the slave we avoid lengthes and rely on absolute positions instead;
  hence the introduction of future_group_master_log_pos and future_event_relay_log_pos
  (explained in code).
sql/sql_class.cc:
  catalog in THD
sql/sql_class.h:
  catalog, and new members in MYSQL_LOG
sql/sql_repl.cc:
  When the master starts sending binlog to slave, it must
  first read the first few events to detect the binlog's format.
  Same for SHOW BINLOG EVENTS.
2003-12-18 01:09:05 +01:00
unknown
0fb88806e4 Merge with 4.0.17
BitKeeper/etc/logging_ok:
  auto-union
Build-tools/Do-compile:
  Auto merged
acinclude.m4:
  Auto merged
configure.in:
  Auto merged
dbug/dbug.c:
  Auto merged
include/config-win.h:
  Auto merged
include/my_base.h:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/mysql.h:
  Auto merged
include/mysql_com.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/row/row0ins.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/row/row0umod.c:
  Auto merged
innobase/row/row0upd.c:
  Auto merged
myisam/ft_boolean_search.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_dbug.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
mysql-test/r/auto_increment.result:
  Auto merged
mysql-test/r/bdb.result:
  Auto merged
mysql-test/r/func_op.result:
  Auto merged
Build-tools/Bootstrap:
  Merge with 4.0
client/mysql.cc:
  Merge with 4.0
client/mysqldump.c:
  Merge with 4.0
client/mysqltest.c:
  Use local version
innobase/btr/btr0cur.c:
  Merge with 4.0 (Heikki should check if we should remove btr_cur_update_sec_rec_in_place()
libmysql/libmysql.c:
  Merge with 4.0
libmysqld/lib_sql.cc:
  Merge with 4.0
myisam/mi_key.c:
  Merge with 4.0
myisam/mi_search.c:
  Merge with 4.0
mysql-test/r/binary.result:
  Merge with 4.0
mysql-test/r/func_group.result:
  Merge with 4.0
mysql-test/r/func_str.result:
  Merge with 4.0
mysql-test/r/func_time.result:
  Merge with 4.0
mysql-test/r/group_by.result:
  Merge with 4.0
mysql-test/r/handler.result:
  Merge with 4.0
mysql-test/r/innodb.result:
  Merge with 4.0
mysql-test/r/insert.result:
  Merge with 4.0
mysql-test/r/join_outer.result:
  Merge with 4.0
mysql-test/r/loaddata.result:
  Merge with 4.0
mysql-test/r/lowercase_table.result:
  Merge with 4.0
mysql-test/r/multi_update.result:
  Merge with 4.0
mysql-test/r/mysqldump.result:
  Merge with 4.0
mysql-test/r/query_cache.result:
  Merge with 4.0
mysql-test/r/rpl_max_relay_size.result:
  Merge with 4.0
mysql-test/r/rpl_rotate_logs.result:
  Merge with 4.0
mysql-test/r/rpl_trunc_binlog.result:
  Merge with 4.0
mysql-test/r/select_found.result:
  Merge with 4.0
mysql-test/r/symlink.result:
  Merge with 4.0
mysql-test/r/truncate.result:
  Merge with 4.0
mysql-test/r/type_blob.result:
  Merge with 4.0
mysql-test/r/type_datetime.result:
  Merge with 4.0
mysql-test/r/type_decimal.result:
  Merge with 4.0
mysql-test/r/type_enum.result:
  Merge with 4.0
mysql-test/r/type_timestamp.result:
  Merge with 4.0
mysql-test/r/union.result:
  Merge with 4.0
mysql-test/t/auto_increment.test:
  Merge with 4.0
mysql-test/t/bdb.test:
  Merge with 4.0
mysql-test/t/func_group.test:
  Merge with 4.0
mysql-test/t/func_op.test:
  Merge with 4.0
mysql-test/t/func_str.test:
  Merge with 4.0
mysql-test/t/func_time.test:
  Merge with 4.0
mysql-test/t/group_by.test:
  Merge with 4.0
mysql-test/t/handler.test:
  Merge with 4.0
mysql-test/t/innodb.test:
  Merge with 4.0
mysql-test/t/insert.test:
  Merge with 4.0
mysql-test/t/join_outer.test:
  Merge with 4.0
mysql-test/t/limit.test:
  Merge with 4.0
mysql-test/t/loaddata.test:
  Merge with 4.0
mysql-test/t/lowercase_table.test:
  Merge with 4.0
mysql-test/t/multi_update.test:
  Merge with 4.0
mysql-test/t/mysqldump.test:
  Merge with 4.0
mysql-test/t/query_cache.test:
  Merge with 4.0
mysql-test/t/rpl_log_pos.test:
  Merge with 4.0
mysql-test/t/rpl_max_relay_size.test:
  Merge with 4.0
mysql-test/t/rpl_rotate_logs.test:
  Merge with 4.0
mysql-test/t/rpl_trunc_binlog.test:
  Merge with 4.0
mysql-test/t/select_found.test:
  Merge with 4.0
mysql-test/t/symlink.test:
  Merge with 4.0
mysql-test/t/truncate.test:
  Merge with 4.0
mysql-test/t/type_blob.test:
  Merge with 4.0
mysql-test/t/type_datetime.test:
  Merge with 4.0
mysql-test/t/type_decimal.test:
  Merge with 4.0
mysql-test/t/type_enum.test:
  Merge with 4.0
mysql-test/t/type_timestamp.test:
  Merge with 4.0
mysql-test/t/union.test:
  Merge with 4.0
mysys/charset.c:
  Merge with 4.0
mysys/my_init.c:
  Merge with 4.0
mysys/my_symlink.c:
  Merge with 4.0
mysys/my_thr_init.c:
  Merge with 4.0
regex/reginit.c:
  Merge with 4.0
sql/field.cc:
  Change fix_datetime() to print errors
sql/field.h:
  Merge with 4.0
sql/ha_innodb.cc:
  Merge with 4.0
sql/item.cc:
  Merge with 4.0
sql/item.h:
  Merge with 4.0
sql/item_cmpfunc.cc:
  Merge with 4.0
sql/item_func.cc:
  Merge with 4.0
sql/item_func.h:
  Merge with 4.0
sql/item_strfunc.cc:
  Merge with 4.0
sql/item_strfunc.h:
  Merge with 4.0
sql/item_sum.cc:
  Merge with 4.0
sql/item_sum.h:
  Merge with 4.0
sql/item_timefunc.cc:
  Merge with 4.0
sql/lex.h:
  Merge with 4.0
sql/log.cc:
  Merge with 4.0
sql/log_event.cc:
  Merge with 4.0
sql/log_event.h:
  Merge with 4.0
sql/mysql_priv.h:
  Merge with 4.0
sql/mysqld.cc:
  Merge with 4.0
sql/nt_servc.cc:
  Merge with 4.0
sql/opt_range.cc:
  Merge with 4.0
sql/records.cc:
  Merge with 4.0
sql/repl_failsafe.cc:
  Merge with 4.0
sql/slave.cc:
  Merge with 4.0
sql/sql_acl.cc:
  Merge with 4.0
sql/sql_analyse.cc:
  Merge with 4.0
sql/sql_base.cc:
  Merge with 4.0
sql/sql_cache.cc:
  Merge with 4.0
sql/sql_class.h:
  Merge with 4.0
sql/sql_db.cc:
  Merge with 4.0
sql/sql_delete.cc:
  Merge with 4.0
sql/sql_insert.cc:
  Merge with 4.0
sql/sql_load.cc:
  Merge with 4.0
sql/sql_parse.cc:
  Merge with 4.0
sql/sql_rename.cc:
  Merge with 4.0
sql/sql_select.cc:
  Merge with 4.0
sql/sql_show.cc:
  Merge with 4.0
sql/sql_table.cc:
  Merge with 4.0
sql/sql_update.cc:
  Merge with 4.0
sql/sql_yacc.yy:
  Merge with 4.0
sql/table.cc:
  Merge with 4.0
sql/table.h:
  Merge with 4.0
sql/time.cc:
  Merge with 4.0
sql/uniques.cc:
  Merge with 4.0
strings/ctype-tis620.c:
  Merge with 4.0
strings/strto.c:
  Merge with 4.0
support-files/mysql.server.sh:
  Merge with 4.0
support-files/mysql.spec.sh:
  Merge with 4.0
2003-12-17 17:35:34 +02:00
unknown
a50761a565 Fix for BUG#2045 "Sending SIGHUP to mysqld crashes it if running with --log-bin".
The constructor of Rotate_log_event used when we are rotating our binlog or
relay log, should not assume that there is a nonzero THD available.
For example, when we are reacting to SIGHUP, the THD is 0.
In fact we don't need to use the THD in this constructor;
we can do like for Stop_log_event, and use the minimal Log_event
constructor.
If we were allowed to put Unix-specific commands in the testsuite,
I'd add a test for this (<sigh>).


sql/log.cc:
  A comment to warn that thd can be 0.
  The part about LOG_EVENT_FORCED_ROTATE_F is just to avoid segfault;
  this flag is already removed in 4.1 anyway.
sql/log_event.cc:
  A comment.
sql/log_event.h:
  The constructor of Rotate_log_event used when we are rotating our binlog or
  relay log, should not assume that there is a nonzero THD available.
  For example, when we are reacting to SIGHUP, the THD is 0.
  In fact we don't need to use the THD in this constructor;
  we can do like for Stop_log_event, and use the minimal Log_event
  constructor.
  This fixes BUG#2045 
  "Sending SIGHUP to mysqld crashes it if running with --log-bin"
2003-12-08 16:18:25 +01:00
unknown
38f853d291 Merge 4.1 to 5.0
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/install_test_db.sh:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/log.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/protocol.h:
  Auto merged
sql/protocol_cursor.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_error.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_test.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-12-01 16:14:40 +01:00
unknown
8764ca94c9 Removing unneeded code: the Intvar_log_event constructor calls the Log_event constructor
which does e.server_id=thd.server_id.


sql/log.cc:
  unneeded: the Intvar_log_event constructor calls the Log_event constructor
  which does e.server_id=thd.server_id.
2003-12-01 14:59:35 +01:00
unknown
76bf7d2224 Added missing SSL library (Should be in source distribution)
Fixed compiler warnings (a lot of hidden variables detected by the Forte compiler)
Added a lot of 'version_xxx' strings to 'show variables'
Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
Fixed problem with printing sub selects to debug log


Docs/mysqld_error.txt:
  Updated error messages
Makefile.am:
  Added missing SSL library (Should be in source distribution)
configure.in:
  Added missing SSL library
include/sql_common.h:
  Move duplicated prototypes
innobase/os/os0file.c:
  Added comment for line that could be removed
innobase/srv/srv0srv.c:
  Added comment for line that could be removed
innobase/srv/srv0start.c:
  Added comment for line that could be removed
innobase/trx/trx0sys.c:
  Added cast to remove compiler warning
isam/isamchk.c:
  Fixed compiler warning
libmysql/conf_to_src.c:
  Include files in proper order
myisam/mi_check.c:
  Removed else part that caused compiler warning
myisam/mi_delete.c:
  Added cast
myisam/mi_page.c:
  Added cast
myisam/mi_preload.c:
  Added cast
myisam/mi_write.c:
  Added cast
myisam/myisampack.c:
  changed 'byte' to 'current_byte' to avoid compiler warnings
mysql-test/mysql-test-run.sh:
  Removed start-from as test '<' is not portable and this can easily be done from command line
mysys/hash.c:
  Added cast
mysys/mf_wcomp.c:
  Removed not reached line
mysys/my_append.c:
  Fixed include file order to get this more portable
mysys/my_copy.c:
  Fixed include file order to get this more portable
mysys/my_redel.c:
  Fixed include file order to get this more portable
sql-common/client.c:
  More DBUG_PRINT
sql-common/pack.c:
  Added casts becasue Fortre compiler apparently compares (ulonglong) < (longlong) as signed
sql/ha_heap.cc:
  Changed variable names to not cause hidden variables
sql/ha_innodb.cc:
  Changed variable names to not cause hidden variables
sql/item.cc:
  Changed variable names to not cause hidden variables
sql/item.h:
  Changed variable names to not cause hidden variables
sql/item_cmpfunc.h:
  Changed variable names to not cause hidden variables
sql/item_func.cc:
  Changed variable names to not cause hidden variables
sql/item_subselect.cc:
  Changed variable names to not cause hidden variables
sql/item_subselect.h:
  Changed variable names to not cause hidden variables
sql/item_sum.cc:
  Changed variable names to not cause hidden variables
sql/item_timefunc.cc:
  Changed variable names to not cause hidden variables
sql/log.cc:
  Changed variable names to not cause hidden variables
sql/protocol.cc:
  Changed variable names to not cause hidden variables
sql/protocol.h:
  Changed variable names to not cause hidden variables
  Remove function not declared in protocol.cc
sql/protocol_cursor.cc:
  Changed variable names to not cause hidden variables
sql/set_var.cc:
  Added a lot of 'version_xxx' strings
  Changed 'bdb_version' to 'version_bdb'
sql/sql_class.cc:
  Changed variable names to not cause hidden variables
  Add TMP_TABLE_PARAM::init() to allow one to initialize structure several times
sql/sql_class.h:
  Prevent copying of TMP_TABLE_PARAM (This caused core dump bug on Solaris)
sql/sql_derived.cc:
  Avoid copying TMP_TABLE_PARAM (Use class version instead)
sql/sql_error.cc:
  More DBUG
sql/sql_help.cc:
  Fixed compiler warning
sql/sql_lex.cc:
  Changed variable names to not cause hidden variables
sql/sql_list.h:
  Changed variable names to not cause hidden variables
sql/sql_parse.cc:
  Changed variable names to not cause hidden variables
sql/sql_select.cc:
  Changed variable names to not cause hidden variables
  Ensure that you don't send NULL to printf() for %s
  Fixed problem with printing sub selects to debug log
sql/sql_select.h:
  Changed variable names to not cause hidden variables
sql/sql_union.cc:
  Changed variable names to not cause hidden variables
  Don't use local copy of TMP_TABLE_PARAM (Caused core dump on Solaris)
sql/sql_update.cc:
  Indentation cleanup
sql/sql_yacc.yy:
  Remove warning
strings/conf_to_src.c:
  Fixed include file order
2003-11-28 12:18:13 +02:00
unknown
840af67a0a Change word order of a few PROCESSLIST messages to correspond
to order used in START SLAVE syntax.


sql/log.cc:
  Change word order.
sql/slave.cc:
  Change word order.
2003-11-21 12:35:33 -06:00
unknown
24f8b1cfa8 Merging 4.1->5.0
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-compile-netware-src~1:
  Delete: netware/BUILD/compile-netware-src
BitKeeper/deleted/.del-knetware.imp~1:
  Delete: netware/BUILD/knetware.imp
client/mysql.cc:
  Auto merged
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
mysql-test/r/distinct.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-10-22 16:10:22 +02:00
unknown
f16887c59c Merge with 4.0.16
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-mysqldump.result:
  Delete: mysql-test/r/mysqldump.result
BitKeeper/deleted/.del-mysqldump.test:
  Delete: mysql-test/t/mysqldump.test
BitKeeper/deleted/.del-compile-netware-max:
  Delete: netware/BUILD/compile-netware-max
BitKeeper/deleted/.del-compile-netware-max-debug:
  Delete: netware/BUILD/compile-netware-max-debug
BitKeeper/deleted/.del-compile-netware-src:
  Delete: netware/BUILD/compile-netware-src
BitKeeper/deleted/.del-knetware.imp:
  Delete: netware/BUILD/knetware.imp
BUILD/compile-pentium-valgrind-max:
  Auto merged
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
  Auto merged
BitKeeper/deleted/.del-mysql_fix_privilege_tables.sql:
  Auto merged
BitKeeper/deleted/.del-openssl.imp:
  Delete: netware/BUILD/openssl.imp
acinclude.m4:
  Auto merged
SSL/cacert.pem:
  Auto merged
SSL/client-cert.pem:
  Auto merged
SSL/server-cert.pem:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
extra/resolveip.c:
  Auto merged
heap/hp_test2.c:
  Auto merged
include/my_global.h:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
libmysql/libmysql.def:
  Auto merged
libmysqld/examples/Makefile.am:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_test2.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
mysql-test/r/fulltext_multi.result:
  Auto merged
mysql-test/r/fulltext_order_by.result:
  Auto merged
mysql-test/r/select.result:
  Auto merged
mysql-test/r/user_var.result:
  Auto merged
mysql-test/std_data/rpl_loaddata2.dat:
  Auto merged
mysql-test/t/rpl_loaddata.test:
  Auto merged
mysql-test/t/select.test:
  Auto merged
mysql-test/t/user_var.test:
  Auto merged
mysys/mf_dirname.c:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
sql/des_key_file.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/slave.h:
  Auto merged
sql-bench/crash-me.sh:
  Auto merged
sql-bench/server-cfg.sh:
  Auto merged
sql-bench/test-insert.sh:
  Auto merged
sql-bench/test-transactions.sh:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
support-files/mysql.server.sh:
  Auto merged
client/mysqltest.c:
  Merge with 4.0.16
  Changed version number to '2.0' to avoid confusion with version numbering in 3.23
mysql-test/r/distinct.result:
  Updated results for merge
mysql-test/r/insert.result:
  Updated results for merge
mysql-test/r/insert_select.result:
  Updated results for merge
mysql-test/r/join_outer.result:
  Updated results for merge
mysql-test/r/mix_innodb_myisam_binlog.result:
  Updated results for merge
mysql-test/r/order_by.result:
  Updated results for merge
mysql-test/r/rpl000009.result:
  Updated results for merge
mysql-test/r/rpl_loaddata.result:
  Updated results for merge
mysql-test/r/rpl_log.result:
  Updated results for merge
mysql-test/r/select_safe.result:
  Updated results for merge
scripts/mysql_install_db.sh:
  Change -eq to =
BitKeeper/deleted/.del-ins000001.test~2428ee5c9b1bc483:
  dummy
2003-10-07 15:42:26 +03:00
unknown
118d6df516 WL #562: Change format of slow log in 4.1 2003-10-07 12:05:35 +05:00
unknown
2985e91acd Optimized code for setting user variables with := and fixed some bugs in old code (Bug #1194)
Use forced close of socket to make mysqld shutdown faster when used under valgrind


mysql-test/mysql-test-run.sh:
  Added --skip-bdb for valgrind
mysql-test/r/user_var.result:
  Extended test for user variables
mysql-test/t/user_var.test:
  Extended test for user variables
sql/item_func.cc:
  Optimized code for setting user variables with := and fixed some bugs in old code
sql/item_func.h:
  Optimized code for setting user variables
sql/log.cc:
  Fixed comments
sql/mysqld.cc:
  Use forced close of socket to make mysqld shutdown faster when used under valgrind
sql/sql_class.h:
  Optimized code for setting user variables
2003-10-03 00:40:27 +03:00
unknown
5c08e1c1f4 bugfix for #1375
libmysqld/lib_sql.cc:
  some programs check mysql_error for empty string
sql/log.cc:
  in embedded library these members can be NULL
2003-09-29 21:07:51 +05:00
unknown
dbb9596727 Merge
include/mysql.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql-common/client.c:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
libmysqld/lib_sql.cc:
  SCCS merged
libmysqld/libmysqld.c:
  SCCS merged
sql/sql_parse.cc:
  SCCS merged
2003-09-26 15:40:26 +05:00
unknown
1705369809 SCRUM:
WL#604 Privileges in embedded library
code added to check privileges in embedded library
NO_EMBEDDED_ACCESS_CHECKS macros inserted in code so we can exclude
access-checking parts. Actually we now can exclude these parts from
standalone server as well. Do we need it?
Access checks are disabled in embedded server by default. One should
edit libmysqld/Makefile manually to get this working.
We definitely need the separate configure for embedded server


include/mysql.h:
  options added so user of embedded library can set the client host
  it will work as if the usual client connects from this host
libmysqld/Makefile.am:
  Usually one doesn't need access checking in embedded library
  we definitely should separate configure for embedded server
libmysqld/lib_sql.cc:
  necessary code for getting passwords and access checks added
libmysqld/libmysqld.c:
  code #ifdef-ed - we use this only when we check permissions
sql-common/client.c:
  one mysql_close left now
sql/item_strfunc.cc:
  #ifndef-s added
sql/log.cc:
  #ifndef-s added
sql/mysql_priv.h:
  #ifndef-s added
  also i removed default parameters from check_access and check_table_access
  definitions to set definitions working
sql/mysqld.cc:
  #ifndef-s added
  localhost renamed to my_localhost
sql/repl_failsafe.cc:
  parameters added
sql/set_var.cc:
  #ifndef-s added
sql/sql_acl.cc:
  #ifndef-s added
sql/sql_acl.h:
  #ifndef-s added
sql/sql_base.cc:
  #ifndef-s added
sql/sql_cache.cc:
  #ifndef-s added
sql/sql_class.cc:
  #ifndef-s added
sql/sql_db.cc:
  #ifndef-s added
sql/sql_derived.cc:
  #ifndef-s added
sql/sql_insert.cc:
  #ifndef-s added
sql/sql_parse.cc:
  a horde of #ifndef-s added
sql/sql_prepare.cc:
  #ifndef-s added
sql/sql_repl.cc:
  parameters added
sql/sql_show.cc:
  #ifndef-s added
sql/sql_update.cc:
  #ifndef-s added
2003-09-26 15:33:13 +05:00
unknown
874783abb2 Fix for
Bug #1392 "On Win, slave leaves one temp file after successf. replicating LOAD DATA INFILE"
Windows-specific bug (we forgot to close a file before deleting it).
Patch written by me, tested by Miguel (thanks!) and it works.


sql/log.cc:
  changed the comment to mean the truth
sql/log_event.cc:
  When you finish replicating LOAD DATA INFILE, close the SQL_LOADxxx.data file
  before deleting it, or Windows will refuse to delete.
  No need to do the same thing for the SQL_LOADxxx.data file, it's not opened
  at this moment.
2003-09-24 22:55:04 +02:00
unknown
cd8508d371 Merging 4.1 -> 5.0
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
client/mysql.cc:
  Auto merged
configure.in:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
BitKeeper/deleted/.del-sel000100.result~84ed46856cb3a69f:
  Auto merged
BitKeeper/deleted/.del-sel000100.test~548501cad19a1a59:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
mysql-test/r/connect.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysys/my_pthread.c:
  Auto merged
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/item_sum.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/lock.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/protocol.cc:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-09-24 11:29:38 +02:00
unknown
1c50f8ac78 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mashka.mysql.fi:/home/my/mysql-4.1


sql/log.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2003-09-14 18:14:43 +03:00
unknown
1f82a0de6c Manual merge after commiting START SLAVE UNTIL
sql/lex.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
include/mysqld_error.h:
  Manual merge
mysql-test/r/rpl000015.result:
  Manual merge
mysql-test/r/rpl_empty_master_crash.result:
  Manual merge
mysql-test/r/rpl_flush_log_loop.result:
  Manual merge
mysql-test/r/rpl_log.result:
  Manual merge
mysql-test/r/rpl_log_pos.result:
  Manual merge
mysql-test/r/rpl_redirect.result:
  Manual merge
mysql-test/r/rpl_replicate_do.result:
  Manual merge
mysql-test/r/rpl_rotate_logs.result:
  Manual merge
sql/share/czech/errmsg.txt:
  Manual merge
sql/share/danish/errmsg.txt:
  Manual merge
sql/share/dutch/errmsg.txt:
  Manual merge
sql/share/english/errmsg.txt:
  Manual merge
sql/share/estonian/errmsg.txt:
  Manual merge
sql/share/french/errmsg.txt:
  Manual merge
sql/share/german/errmsg.txt:
  Manual merge
sql/share/greek/errmsg.txt:
  Manual merge
sql/share/hungarian/errmsg.txt:
  Manual merge
sql/share/italian/errmsg.txt:
  Manual merge
sql/share/japanese/errmsg.txt:
  Manual merge
sql/share/korean/errmsg.txt:
  Manual merge
sql/share/norwegian-ny/errmsg.txt:
  Manual merge
sql/share/norwegian/errmsg.txt:
  Manual merge
sql/share/polish/errmsg.txt:
  Manual merge
sql/share/portuguese/errmsg.txt:
  Manual merge
sql/share/romanian/errmsg.txt:
  Manual merge
sql/share/russian/errmsg.txt:
  Manual merge
sql/share/serbian/errmsg.txt:
  Manual merge
sql/share/slovak/errmsg.txt:
  Manual merge
sql/share/spanish/errmsg.txt:
  Manual merge
sql/share/swedish/errmsg.txt:
  Manual merge
sql/share/ukrainian/errmsg.txt:
  Manual merge
sql/slave.cc:
  Manual merge
sql/slave.h:
  Manual merge
sql/sql_repl.cc:
  Manual merge
sql/sql_yacc.yy:
  Manual merge
2003-09-14 01:57:09 +04:00
unknown
2f8f0a7e4d Implemented support for START SLAVE UNTIL (WL#868)
include/mysqld_error.h:
  Added error codes for warnings and error messages for START SLAVE UNTIL
mysql-test/r/rpl000015.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_empty_master_crash.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_flush_log_loop.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_log.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_log_pos.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_redirect.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_replicate_do.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
mysql-test/r/rpl_rotate_logs.result:
  Fixed test because 3 new columns to SHOW SLAVE STATUS output were added
sql/lex.h:
  Added UNTIL symbol
sql/log.cc:
  Invalidating until_log_name comparison result if group_relay_log_name is changed
sql/log_event.cc:
  Invalidating until_log_name comparison result if group_master_log_name is changed
sql/repl_failsafe.cc:
  Cancel until condition if LOAD MASTER DATA is executed
sql/share/czech/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/danish/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/dutch/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/english/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/estonian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/french/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/german/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/greek/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/hungarian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/italian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/japanese/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/korean/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/norwegian-ny/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/norwegian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/polish/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/portuguese/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/romanian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/russian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/serbian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/slovak/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/spanish/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/swedish/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/share/ukrainian/errmsg.txt:
  Added error and warning message for START SLAVE UNTIL
sql/slave.cc:
  Fixed wrong locking order in init_relay_log_pos()
  Added until condition fields to SHOW SLAVE STATUS
  Added checking if UNTIL condition is reached 
  (added proper method, added its invocation, reorganized locking 
  in exec_relay_log_event() and next_event())
sql/slave.h:
  Members in RELAY_LOG_INFO for storing UNTIL condition. Also 
  methods for for invalidation of cached UNTIL condition comparison
  results
sql/sql_repl.cc:
  Now honoring UNTIL clause then starting slave thread. Proper 
  errors and warnings.
sql/sql_yacc.yy:
  Added support for UNTIL clause in START SLAVE. This involved 
  extraction of some of master_defs to separate master_file_def
  non-terminal.
2003-09-14 00:13:41 +04:00
unknown
c4079104f2 Remove 'extern' references from .cc files
mysys/checksum.c:
  Cleanup
mysys/my_static.h:
  Remove not used include file
sql/item_strfunc.cc:
  Remove 'extern' references
sql/lock.cc:
  Remove 'extern' references
sql/log.cc:
  Remove 'extern' references
sql/mysql_priv.h:
  Add 'extern' references
sql/net_serv.cc:
  Added comment
sql/repl_failsafe.cc:
  Remove 'extern' references
sql/set_var.cc:
  Remove 'extern' references
sql/sql_derived.cc:
  Remove 'extern' references
sql/sql_insert.cc:
  Remove 'extern' references
sql/sql_parse.cc:
  Remove 'extern' references
sql/sql_prepare.cc:
  Remove 'extern' references
sql/sql_repl.cc:
  Remove 'extern' references
sql/sql_string.cc:
  Added comment
sql/sql_table.cc:
  Remove 'extern' references
sql/sql_test.cc:
  Remove 'extern' references
sql/sql_yacc.yy:
  Remove 'extern' references
sql/table.cc:
  Remove 'extern' references
2003-09-13 11:35:29 +03:00
unknown
0fa5279543 merge with 4.0.15
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-database.c~af098622e818ce0d:
  Auto merged
BitKeeper/deleted/.del-have_openssl_2.inc~8c9f1a45676b698f:
  Auto merged
BitKeeper/deleted/.del-have_openssl_2.require~53bbdfc136fb514:
  Auto merged
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
  Auto merged
BitKeeper/deleted/.del-openssl_2.test~f2dfa927f19d14f8:
  Auto merged
Build-tools/Bootstrap:
  Auto merged
Build-tools/Do-compile:
  Auto merged
SSL/cacert.pem:
  Auto merged
acconfig.h:
  Auto merged
acinclude.m4:
  Auto merged
configure.in:
  Auto merged
SSL/client-cert.pem:
  Auto merged
SSL/client-key.pem:
  Auto merged
SSL/server-cert.pem:
  Auto merged
SSL/server-key.pem:
  Auto merged
VC++Files/client/mysql.dsp:
  Auto merged
VC++Files/client/mysqladmin.dsp:
  Auto merged
VC++Files/client/mysqlclient.dsp:
  Auto merged
VC++Files/client/mysqldump.dsp:
  Auto merged
VC++Files/client/mysqlimport.dsp:
  Auto merged
VC++Files/client/mysqlshow.dsp:
  Auto merged
VC++Files/comp_err/comp_err.dsp:
  Auto merged
VC++Files/innobase/innobase.dsp:
  Auto merged
VC++Files/isamchk/isamchk.dsp:
  Auto merged
VC++Files/libmysql/libmysql.dsp:
  Auto merged
VC++Files/libmysqltest/myTest.dsp:
  Auto merged
VC++Files/my_print_defaults/my_print_defaults.dsp:
  Auto merged
VC++Files/myisamlog/myisamlog.dsp:
  Auto merged
VC++Files/mysql.dsw:
  Auto merged
VC++Files/mysqlbinlog/mysqlbinlog.dsp:
  Auto merged
VC++Files/mysqlcheck/mysqlcheck.dsp:
  Auto merged
VC++Files/mysqlmanager/MySqlManager.dsp:
  Auto merged
VC++Files/mysqlserver/mysqlserver.dsp:
  Auto merged
VC++Files/mysqlshutdown/mysqlshutdown.dsp:
  Auto merged
VC++Files/mysys/mysys.dsp:
  Auto merged
VC++Files/pack_isam/pack_isam.dsp:
  Auto merged
VC++Files/perror/perror.dsp:
  Auto merged
VC++Files/replace/replace.dsp:
  Auto merged
VC++Files/test1/test1.dsp:
  Auto merged
VC++Files/thr_test/thr_test.dsp:
  Auto merged
VC++Files/vio/vio.dsp:
  Auto merged
VC++Files/zlib/zlib.dsp:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
client/mysqlimport.c:
  Auto merged
extra/my_print_defaults.c:
  Auto merged
extra/resolveip.c:
  Auto merged
include/m_string.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/mysql_com.h:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
isam/_search.c:
  Auto merged
libmysql/Makefile.am:
  Auto merged
libmysql/errmsg.c:
  Auto merged
libmysql/libmysql.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_create.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
myisam/mi_search.c:
  Auto merged
myisam/mi_write.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamlog.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/group_by.result:
  Auto merged
mysql-test/r/isam.result:
  Auto merged
mysql-test/r/loaddata.result:
  Auto merged
mysql-test/r/lowercase_table.result:
  Auto merged
mysql-test/r/multi_update.result:
  Auto merged
mysql-test/r/openssl_1.result:
  Auto merged
mysql-test/r/packet.result:
  Auto merged
mysql-test/r/query_cache.result:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/r/select_safe.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
mysql-test/t/group_by.test:
  Auto merged
mysql-test/t/lock_tables_lost_commit-master.opt:
  Auto merged
mysql-test/t/lowercase_table.test:
  Auto merged
mysql-test/t/multi_update.test:
  Auto merged
mysql-test/t/openssl_1.test:
  Auto merged
mysql-test/t/range.test:
  Auto merged
mysql-test/t/rpl_loaddata.test:
  Auto merged
mysql-test/t/rpl_log.test:
  Auto merged
mysql-test/t/select_safe.test:
  Auto merged
mysql-test/t/show_check.test:
  Auto merged
mysql-test/t/symlink.test:
  Auto merged
mysys/default.c:
  Auto merged
mysys/my_getopt.c:
  Auto merged
mysys/my_pthread.c:
  Auto merged
scripts/make_binary_distribution.sh:
  Auto merged
scripts/make_win_src_distribution.sh:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
scripts/mysqld_safe.sh:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item_uniq.h:
  Auto merged
sql/log_event.h:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
vio/Makefile.am:
  Auto merged
vio/vio.c:
  Auto merged
mysql-test/t/myisam.test:
  merge with 4.0.15
  Extra tests
mysys/mf_keycache.c:
  Keep local file
2003-08-29 13:44:35 +03:00
unknown
26bb50a19b Add detection of in_addr_t
Add pack_bits to pack_reclength for dynamic rows.  This solves buffer a possible buffer overflow on update.
(This will probably solve bug #563)
Fix test for available file descriptors in mysqltest
Fixed core dump bug in replication tests when running without transactional table support


acconfig.h:
  Add detection of in_addr_t
acinclude.m4:
  Add detection of in_addr_t
configure.in:
  Add detection of in_addr_t
extra/my_print_defaults.c:
  Cleanup
extra/resolveip.c:
  Add detection of in_addr_t
libmysql/dll.c:
  Fixed C++ commments
myisam/mi_dynrec.c:
  Add ASSERT if allocated record length is to small
myisam/mi_open.c:
  Add pack_bits to pack_reclength for dynamic rows.  This solves buffer a possible buffer overflow on update.
myisam/mi_test_all.sh:
  Added valgrind option to make it easier to verify tests
mysql-test/include/check_var_limit.inc:
  Fix test for available file descriptors
mysql-test/r/myisam.result:
  More tests
mysql-test/t/myisam.test:
  More tests
mysql-test/t/query_cache_merge.test:
  Fix test for available file descriptors
mysys/default.c:
  Cleanup
mysys/my_pthread.c:
  Remove C++ comments
sql/log.cc:
  Code cleanup
  Fixed core dump bug in replication tests when running without transactional table support.
2003-08-28 06:08:17 +03:00
unknown
138f0adf2d Merge 4.1 into 5.0
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysql/libmysql.c:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
mysql-test/r/insert.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/insert.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
mysys/my_pthread.c:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/lex.h:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
2003-08-26 11:51:09 +02:00
unknown
c47ee56915 Clearer states in SHOW PROCESSLIST for replication threads.
For example the Binlog_dump thread (on the master) sometimes showed "Slave:".
And there were confusing messages where "binlog" was employed instead
of "relay log".


sql/log.cc:
  MYSQL_LOG::wait_for_update() is used by the binlog_dump and I/Oslave threads,
  and it updates thd->proc_info, so we need a bool to not show the same
  proc_info for 2 different things (previously we showed "Slave: etc" and that's
  bad for a binlog_dump thread).
sql/slave.cc:
  Clearer thd-proc_info for slave threads.
sql/sql_class.h:
  prototype change
sql/sql_repl.cc:
  clearer thd->proc_info for binlog_dump thread
2003-08-25 14:13:58 +02:00
unknown
fdfb10f2fb 2 minor edits, plus
fix for BUG#1113 "INSERT into non-trans table SELECT ; ROLLBACK" does not send warning"
and
fix for BUG#873 "In transaction, INSERT to non-trans table is written too early to binlog".
Now we don't always write the non-trans update immediately to the binlog;
if there is something in the binlog cache we write it to the binlog cache
(because the non-trans update could depend on a trans table which was modified
earlier in the transaction); then in case of ROLLBACK, we write the binlog
cache to the binlog, wrapped with BEGIN/ROLLBACK.
This guarantees that the slave does the same updates.
For ROLLBACK TO SAVEPOINT: when we execute a SAVEPOINT command we write it
to the binlog cache. At ROLLBACK TO SAVEPOINT, if some non-trans table was updated,
we write ROLLBACK TO SAVEPOINT to the binlog cache; when the transaction
terminates (COMMIT/ROLLBACK), the binlog cache will be flushed to the binlog
(because of the non-trans update) so we'll have SAVEPOINT and ROLLBACK TO
SAVEPOINT in the binlog.

Apart from this rare case of updates of mixed table types in transaction, the
usual way is still clear the binlog cache at ROLLBACK, or chop it at
ROLLBACK TO SAVEPOINT (meaning the SAVEPOINT command is also chopped, which
is fine).
Note that BUG#873 encompasses subbugs 1) and 2) of BUG#333 "3 binlogging bugs when doing INSERT with mixed InnoDB/MyISAM".


client/mysqldump.c:
  Minor edit: one CHANGE MASTER with 2 arguments instead of 2 CHANGE MASTER with one argument each.
mysql-test/r/rpl_loaddata.result:
  result update
mysql-test/t/rpl_loaddata.test:
  minor edit: simplifying the test.
sql/handler.cc:
  Fix for BUG#873. See comments in code, and the description of the changeset.
sql/log.cc:
  * Previously, if a query updated a non-transactional table we wrote it immediately
  to the real binlog. This causes a bug when the update is done inside a transaction
  and uses the content of an updated transactional table (because this makes
  a wrong order of queries in the binlog). So if the binlog cache is not empty,
  we write the query to the binlog cache; otherwise we can write it to the binlog.
  * Previously, when we flushed the binlog cache to the binlog, we wrapped it
  with BEGIN/COMMIT. Now it's also possible to wrap it with BEGIN/ROLLBACK, to handle
  transactions which update both transactional and non-transactional tables.
sql/log_event.cc:
  The slave thread can leave a transaction if COMMIT or if ROLLBACK.
sql/sql_class.h:
  prototype
sql/sql_insert.cc:
  Fix for BUG#1113:
  this was because the INSERT SELECT code did not set OPTION_STATUS_NO_TRANS_UPDATE.
sql/sql_parse.cc:
  Don't send ER_WARNING_NOT_COMPLETE_ROLLBACK if this is the SQL slave thread (see comments).
2003-08-22 15:39:24 +02:00
unknown
d52145da3d Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0


sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/slave.cc:
  Auto merged
2003-08-20 23:25:58 +02:00
unknown
1542fffb34 First commit for fixing BUG#1100
"LOAD DATA INFILE is badly filtered by binlog-*-db rules".
There will probably be a second final one to merge Dmitri's changes
to rpl_log.result and mine.
2 new tests:
rpl_loaddata_rule_m : test of logging of LOAD DATA INFILE when the master has binlog-*-db rules,
rpl_loaddata_rule_s : test of logging of LOAD DATA INFILE when the slave has binlog-*-db rules and --log-slave-updates.


mysql-test/r/rpl_loaddata.result:
  Test that logging of LOAD DATA INFILE is done on the slave
mysql-test/t/rpl_loaddata.test:
  Test that logging of LOAD DATA is done on the slave
sql/log.cc:
  debug info
sql/log_event.cc:
  * Append_block, Exec_load and Delete_file now have a member 'db' like Create_file.
  This member is filled by mysql_load(). It is used for filtering by binlog-*-db rules,
  that's all. It's not written to the binlog, and so can't be read from the binlog.
  In other words, that's temporary info which is stored in the event and lost when
  it is written and deleted.
  * Better error messages in Append_block et al. events.
  * The slave now logs (log-slave-updates) the Create_file et al. events in mysql_load()
  (they are not directly copied from the events in the relay log, because this
  prevented filtering by binlog-*-db rules). Before, mysql_load() in the slave
  did no logging, now it does the logging, as in any regular thread.
sql/log_event.h:
  New member 'db' for Append_block et al. events.
sql/slave.cc:
  Removed useless code. Why was it useless:
  - CREATE_FILE_EVENT is not defined in 3.23. It appeared in 4.0.
  - in queue_old_event(), which is called only if the master is 3.23, we had a
  case CREATE_FILE_EVENT:
  so this case can be removed.
  - this case was the only caller of process_io_create_file() so this function
  can be removed.
sql/sql_load.cc:
  Pass the db to events, so that they can be well filtered.
sql/sql_repl.cc:
  Pass the db to events so that they can be well filtered.
2003-08-20 23:24:45 +02:00
unknown
de5d47c35d Fixed some varnings from valgrind
Set min value of max_allowed_packet to 1024
Fixed problem with UNION's without braces and SQL_CALC_FOUND_ROWS, LIMIT #,#
and ORDER BY...LIMIT


include/m_string.h:
  Added memcpy_overlap() to avoid warnings when using valgrind on memcpy(A,A,...)
myisam/mi_create.c:
  Fixed comment
myisam/mi_search.c:
  Fix warning from valgrind
myisam/mi_write.c:
  Indentation fix
mysql-test/mysql-test-run.sh:
  Add options handled by general skip- option
mysql-test/r/packet.result:
  Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/r/union.result:
  Added testing of UNION with SQL_CALC_FOUND_ROWS
mysql-test/t/packet.test:
  Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/t/union.test:
  Added testing of UNION with SQL_CALC_FOUND_ROWS
sql/field.cc:
  Fix to remove waarning from valgrind
sql/ha_innodb.cc:
  Remove wrong include file
sql/item_cmpfunc.cc:
  Safety fix to handle EOM conditions in IN
sql/item_sum.cc:
  Fixed prototype for update_field() (argument was alwys 0)
sql/item_sum.h:
  Fixed prototype for update_field() (argument was alwys 0)
sql/item_uniq.h:
  Fixed prototype for update_field() (argument was alwys 0)
sql/log.cc:
  Indentation fix
sql/mysqld.cc:
  Set min value of max_allowed_packet to 1024 (to avoid it getting set to 0)
sql/net_serv.cc:
  Indentation changes + trivial optimization
sql/sql_select.cc:
  Fixed prototype for update_field() (argument was alwys 0)
sql/sql_union.cc:
  Fixed problem with UNION's without braces and
  - SQL_CALC_FOUND_ROWS
  - LIMIT #,#
  - ORDER BY ... LIMIT
2003-08-20 16:25:44 +03:00
unknown
d43a347db1 Use my_b_append instead of my_b_write on a SEQ_READ_APPEND cache, when we write
the first 4 bytes of the relay log. Indeed comments in mysys/mf_iocache.c 
say we must always use my_b_append for such a cache.
This *could* avoid a very rare assertion failure which is: 
030524 19:32:38  Slave SQL thread initialized, starting replication in log 'FIRST' at position 0, relay log '/
users/gbichot/4.1.1/mysql-test/var/log/slave-relay-bin.000001' position: 4
030524 19:32:38  next log '/users/gbichot/4.1.1/mysql-test/var/log/slave-relay-bin.000002' is currently active
mysqld: mf_iocache.c:701: _my_b_seq_read: Assertion `pos_in_file == info->end_of_file' failed.
and which seemed to happen always when the SQL thread and/or the I/O thread
were at position 4 in a relay log.


include/my_sys.h:
  moving a function from log_event.cc so that it can be widely used
mysys/mf_iocache.c:
  moving a function from log_event.cc so that it can be widely used
sql/log.cc:
  my_b_write should not be used on a SEQ_READ_APPEND cache, one should use my_b_append
  (otherwise there could be some locking problems).
sql/log_event.cc:
  moved to mysys/mf_iocache.c for wider use.
  A typo.
2003-08-19 17:00:36 +02:00
unknown
2901c3b8fa After merge fixes
Use server character set if --default-character-set is not used
Added convert_string() for more efficient alloc+character-set convert of strings


BitKeeper/deleted/.del-convert.result~a3b56e1db6f498e9:
  Delete: mysql-test/r/convert.result
BitKeeper/deleted/.del-convert.test~f4ceb743194dfe72:
  Delete: mysql-test/t/convert.test
BitKeeper/deleted/.del-make_win_src_distribution.old~5c9ebdc4a852b43b:
  Delete: scripts/make_win_src_distribution.old
client/mysql.cc:
  Use server character set if --default-character-set is not used
client/mysqltest.c:
  Code cleanup (merge identical code)
  More debug messages
heap/hp_create.c:
  After merge fix
include/m_ctype.h:
  After merge fix
include/my_global.h:
  Remove size_str (we already have size_s)
include/mysql_com.h:
  After merge fix
libmysql/libmysql.c:
  After merge fix
libmysqld/Makefile.am:
  After merge fix
mysql-test/r/auto_increment.result:
  After merge fix
mysql-test/r/create.result:
  After merge fix
mysql-test/r/ctype_latin1_de.result:
  After merge fix
mysql-test/r/distinct.result:
  After merge fix
mysql-test/r/drop.result:
  After merge fix
mysql-test/r/fulltext.result:
  After merge fix
mysql-test/r/func_gconcat.result:
  After merge fix
mysql-test/r/func_str.result:
  After merge fix
mysql-test/r/func_test.result:
  After merge fix
mysql-test/r/grant.result:
  After merge fix
mysql-test/r/group_by.result:
  After merge fix
mysql-test/r/handler.result:
  After merge fix
mysql-test/r/heap.result:
  After merge fix
mysql-test/r/heap_btree.result:
  After merge fix
mysql-test/r/heap_hash.result:
  After merge fix
mysql-test/r/innodb.result:
  After merge fix
mysql-test/r/insert.result:
  After merge fix
mysql-test/r/insert_select.result:
  After merge fix
mysql-test/r/join_outer.result:
  After merge fix
mysql-test/r/key.result:
  After merge fix
mysql-test/r/key_cache.result:
  After merge fix
mysql-test/r/loaddata.result:
  After merge fix
mysql-test/r/myisam.result:
  After merge fix
mysql-test/r/null.result:
  After merge fix
mysql-test/r/null_key.result:
  After merge fix
mysql-test/r/order_by.result:
  After merge fix
mysql-test/r/rpl_do_grant.result:
  After merge fix
mysql-test/r/rpl_error_ignored_table.result:
  After merge fix
mysql-test/r/rpl_ignore_grant.result:
  After merge fix
mysql-test/r/rpl_loaddata.result:
  After merge fix
mysql-test/r/rpl_log.result:
  After merge fix
mysql-test/r/rpl_log_pos.result:
  After merge fix
mysql-test/r/rpl_max_relay_size.result:
  After merge fix
mysql-test/r/rpl_replicate_do.result:
  After merge fix
mysql-test/r/rpl_reset_slave.result:
  After merge fix
mysql-test/r/rpl_rotate_logs.result:
  After merge fix
mysql-test/r/rpl_user_variables.result:
  After merge fix
mysql-test/r/select.result:
  After merge fix
mysql-test/r/select_safe.result:
  After merge fix
mysql-test/r/subselect.result:
  After merge fix
mysql-test/r/type_blob.result:
  After merge fix
mysql-test/r/type_decimal.result:
  After merge fix
mysql-test/r/type_float.result:
  After merge fix
mysql-test/r/type_ranges.result:
  After merge fix
mysql-test/r/type_time.result:
  After merge fix
mysql-test/r/type_uint.result:
  After merge fix
mysql-test/r/union.result:
  After merge fix
mysql-test/r/warnings.result:
  After merge fix
mysql-test/t/auto_increment.test:
  After merge fix
mysql-test/t/case.test:
  After merge fix
mysql-test/t/ctype_collate.test:
  After merge fix
mysql-test/t/ctype_latin1_de.test:
  After merge fix
mysql-test/t/drop.test:
  After merge fix
mysql-test/t/func_in.test:
  After merge fix
mysql-test/t/func_set.test:
  After merge fix
mysql-test/t/func_str.test:
  After merge fix
mysql-test/t/func_test.test:
  After merge fix
mysql-test/t/grant.test:
  After merge fix
mysql-test/t/group_by.test:
  After merge fix
mysql-test/t/handler.test:
  After merge fix
mysql-test/t/heap.test:
  After merge fix
mysql-test/t/heap_btree.test:
  After merge fix
mysql-test/t/heap_hash.test:
  After merge fix
mysql-test/t/innodb.test:
  After merge fix
mysql-test/t/insert_select.test:
  After merge fix
mysql-test/t/key.test:
  After merge fix
mysql-test/t/key_cache.test:
  After merge fix
mysql-test/t/lock_tables_lost_commit-master.opt:
  After merge fix
mysql-test/t/lock_tables_lost_commit.test:
  After merge fix
mysql-test/t/myisam.test:
  After merge fix
mysql-test/t/row.test:
  After merge fix
mysql-test/t/subselect.test:
  After merge fix
mysql-test/t/type_decimal.test:
  After merge fix
mysql-test/t/type_ranges.test:
  After merge fix
mysql-test/t/type_uint.test:
  After merge fix
mysql-test/t/variables.test:
  After merge fix
mysql-test/t/warnings.test:
  After merge fix
scripts/make_win_src_distribution.sh:
  after merge fixes
sql-common/client.c:
  After merge fix
  Change my_connect() to use poll()
  If character set is not given, use servers character set.
sql/field.cc:
  After merge fix
  Don't give warnings when storing data in fields in optimizer.
sql/ha_myisammrg.h:
  After merge fix
sql/log.cc:
  After merge fix
sql/log_event.cc:
  After merge fix
sql/mysqld.cc:
  After merge fix
sql/opt_range.cc:
  After merge fix
sql/set_var.cc:
  Code cleanup
  Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
sql/set_var.h:
  Fixed wrong usage of base_names (like medium.key_buffer) that caused core dumps
sql/slave.cc:
  After merge fix
sql/sql_acl.cc:
  After merge fix
  Code cleanup
sql/sql_class.cc:
  Added convert_string() for more efficient alloc+character-set convert of strings
  Add cached flags to avoid calling mysql_charset_same() during parsing.
sql/sql_class.h:
  Added convert_string() for more efficient alloc+character-set convert of strings
  Add cached flags to avoid calling mysql_charset_same() during parsing.
sql/sql_handler.cc:
  After merge fix
sql/sql_lex.h:
  After merge fix
sql/sql_parse.cc:
  Optimize and fix memory reference errors reported by valgrind
sql/sql_repl.cc:
  After merge fix
sql/sql_yacc.yy:
  After merge fix
  Avoid calling mysql_charset_same() when parsing identifiers
strings/ctype-latin1.c:
  Port latin_de conversion code from 4.0
2003-08-19 00:08:08 +03:00
unknown
034b44cb9f Merge with 4.0.14
BitKeeper/etc/logging_ok:
  auto-union
scripts/make_win_src_distribution.old:
  Merge rename: scripts/make_win_src_distribution.sh -> scripts/make_win_src_distribution.old
BUILD/compile-pentium-debug-max:
  Auto merged
BitKeeper/deleted/.del-sel000001.result~383913ae4505ec86:
  Auto merged
BitKeeper/deleted/.del-sel000001.test~9567c1646058cc:
  Auto merged
Build-tools/Bootstrap:
  Auto merged
Build-tools/Do-compile:
  Auto merged
Docs/Makefile.am:
  Auto merged
client/get_password.c:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
extra/perror.c:
  Auto merged
include/config-win.h:
  Auto merged
include/my_sys.h:
  Auto merged
innobase/btr/btr0cur.c:
  Auto merged
innobase/btr/btr0pcur.c:
  Auto merged
innobase/buf/buf0buf.c:
  Auto merged
innobase/buf/buf0flu.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/dict/dict0load.c:
  Auto merged
innobase/include/buf0buf.h:
  Auto merged
innobase/include/log0recv.h:
  Auto merged
innobase/include/row0sel.h:
  Auto merged
innobase/include/srv0srv.h:
  Auto merged
innobase/include/ut0mem.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/log/log0log.c:
  Auto merged
innobase/mem/mem0pool.c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/trx/trx0sys.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
innobase/ut/ut0mem.c:
  Auto merged
innobase/ut/ut0ut.c:
  Auto merged
myisam/ft_boolean_search.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_extra.c:
  Auto merged
myisam/mi_key.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
myisammrg/myrg_queue.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/ctype_latin1_de.result:
  Auto merged
mysql-test/r/flush.result:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/grant_cache.result:
  Auto merged
mysql-test/r/join.result:
  Auto merged
mysql-test/r/join_outer.result:
  Auto merged
mysql-test/r/range.result:
  Auto merged
mysql-test/r/rpl000018.result:
  Auto merged
mysql-test/r/rpl_insert_id.result:
  Auto merged
mysql-test/r/rpl_master_pos_wait.result:
  Auto merged
mysql-test/r/rpl_relayspace.result:
  Auto merged
mysql-test/r/select_safe.result:
  Auto merged
mysql-test/r/symlink.result:
  Auto merged
mysql-test/r/type_date.result:
  Auto merged
mysql-test/r/type_datetime.result:
  Auto merged
mysql-test/t/alias.test:
  Auto merged
mysql-test/t/ctype_latin1_de.test:
  Auto merged
mysql-test/t/fulltext_left_join.test:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
mysql-test/t/handler.test:
  Auto merged
mysql-test/t/heap.test:
  Auto merged
mysql-test/t/join.test:
  Auto merged
mysql-test/t/join_outer.test:
  Auto merged
mysql-test/t/order_by.test:
  Auto merged
mysql-test/t/range.test:
  Auto merged
mysql-test/t/rpl000001.test:
  Auto merged
mysql-test/t/rpl000018.test:
  Auto merged
mysql-test/t/rpl_insert_id.test:
  Auto merged
mysql-test/t/sel000100.test:
  Auto merged
mysql-test/t/select_safe.test:
  Auto merged
mysql-test/t/type_date.test:
  Auto merged
mysql-test/t/type_datetime.test:
  Auto merged
mysql-test/t/user_var.test:
  Auto merged
mysys/default.c:
  Auto merged
mysys/mf_format.c:
  Auto merged
mysys/my_getopt.c:
  Auto merged
mysys/thr_lock.c:
  Auto merged
mysys/tree.c:
  Auto merged
scripts/Makefile.am:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
scripts/mysqld_safe.sh:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/field_conv.cc:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/ha_myisammrg.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/net_serv.cc:
  Auto merged
sql/nt_servc.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_rename.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_update.cc:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/uniques.cc:
  Auto merged
support-files/mysql.spec.sh:
  Auto merged
vio/viosocket.c:
  Auto merged
BitKeeper/deleted/.del-ctype-latin1_de.c~c5d8f9208bceb98e:
  merge
BitKeeper/deleted/.del-mini_client.cc~8677895ec8169183:
  merge
acinclude.m4:
  Merge with 4.0 (openssl patch)
client/mysqlbinlog.cc:
  Merge with 4.0 in which we had added code from 4.1
  (We are basicly only using the 4.1 code here)
configure.in:
  Keep 4.1 file
heap/hp_open.c:
  merge with 4.0
include/my_base.h:
  merge with 4.0
include/my_global.h:
  merge with 4.0
include/mysqld_error.h:
  merge with 4.0
innobase/ha/ha0ha.c:
  merge with 4.0
  (Code should be same but we use indentaion from 4.0)
innobase/log/log0recv.c:
  merge with 4.0
libmysql/libmysql.c:
  Remove with 4.0 code that was ported from 4.1
libmysqld/lib_sql.cc:
  merge with 4.0
myisam/mi_open.c:
  Remove 4.0 specific code
myisam/myisamchk.c:
  merge with 4.0
myisammrg/myrg_rkey.c:
  merge with 4.0
mysql-test/r/alter_table.result:
  May need to be fixed after merge
mysql-test/r/create.result:
  May need to be fixed after merge
mysql-test/r/distinct.result:
  May need to be fixed after merge
mysql-test/r/drop.result:
  May need to be fixed after merge
mysql-test/r/fulltext.result:
  May need to be fixed after merge
mysql-test/r/func_set.result:
  May need to be fixed after merge
mysql-test/r/func_str.result:
  May need to be fixed after merge
mysql-test/r/func_test.result:
  May need to be fixed after merge
mysql-test/r/grant.result:
  May need to be fixed after merge
mysql-test/r/group_by.result:
  May need to be fixed after merge
mysql-test/r/handler.result:
  May need to be fixed after merge
mysql-test/r/heap.result:
  May need to be fixed after merge
mysql-test/r/innodb.result:
  May need to be fixed after merge
mysql-test/r/insert.result:
  May need to be fixed after merge
mysql-test/r/insert_select.result:
  May need to be fixed after merge
mysql-test/r/key_diff.result:
  May need to be fixed after merge
mysql-test/r/merge.result:
  May need to be fixed after merge
mysql-test/r/myisam.result:
  May need to be fixed after merge
mysql-test/r/order_by.result:
  May need to be fixed after merge
mysql-test/r/query_cache.result:
  May need to be fixed after merge
mysql-test/r/rpl_flush_log_loop.result:
  May need to be fixed after merge
mysql-test/r/rpl_loaddata.result:
  May need to be fixed after merge
mysql-test/r/rpl_log.result:
  May need to be fixed after merge
mysql-test/r/rpl_log_pos.result:
  May need to be fixed after merge
mysql-test/r/rpl_rotate_logs.result:
  May need to be fixed after merge
mysql-test/r/select.result:
  May need to be fixed after merge
mysql-test/r/union.result:
  May need to be fixed after merge
mysql-test/r/user_var.result:
  May need to be fixed after merge
mysql-test/t/alter_table.test:
  merge with 4.0
mysql-test/t/create.test:
  merge with 4.0
mysql-test/t/distinct.test:
  merge with 4.0
mysql-test/t/drop.test:
  merge with 4.0
mysql-test/t/flush.test:
  merge with 4.0
mysql-test/t/fulltext.test:
  merge with 4.0
mysql-test/t/func_set.test:
  merge with 4.0
mysql-test/t/func_str.test:
  merge with 4.0
mysql-test/t/func_test.test:
  merge with 4.0
mysql-test/t/grant.test:
  merge with 4.0
mysql-test/t/grant_cache.test:
  merge with 4.0
mysql-test/t/innodb.test:
  Add back EXPLAIN and SHOW KEYS statements, but make them independent of number of rows returned by InnoDB
mysql-test/t/insert.test:
  merge with 4.0
mysql-test/t/insert_select.test:
  merge with 4.0
mysql-test/t/merge.test:
  merge with 4.0
mysql-test/t/query_cache.test:
  merge with 4.0
mysql-test/t/rpl_flush_log_loop.test:
  merge with 4.0
mysql-test/t/rpl_loaddata.test:
  merge with 4.0
mysql-test/t/rpl_rotate_logs.test:
  merge with 4.0
mysql-test/t/select.test:
  merge with 4.0
mysql-test/t/symlink.test:
  merge with 4.0
mysql-test/t/union.test:
  merge with 4.0
mysys/charset.c:
  merge with 4.0
scripts/mysql_fix_privilege_tables.sh:
  merge with 4.0 (Add quoting for some variables)
sql/field.h:
  merge with 4.0
sql/ha_innodb.cc:
  merge with 4.0
sql/item_cmpfunc.cc:
  merge with 4.0
sql/item_cmpfunc.h:
  merge with 4.0
sql/item_func.h:
  merge with 4.0
sql/item_strfunc.cc:
  merge with 4.0
  Fixed null handling with ELT()
sql/item_timefunc.h:
  merge with 4.0
sql/lex.h:
  merge with 4.0
sql/log.cc:
  merge with 4.0
sql/log_event.cc:
  Merge with 4.0
  Cleanups:
  - Indentation
  - #endif comments
  - Replace strmov() with *pos++= for two byte strings
  - Moved variable declarations to start of functions
  - Merged identical code (LOAD_EVENT)
  - Added casts when subtracting pointers
  Did a full diff between this and 4.0 to ensure that the file is correct after merge.
sql/log_event.h:
  merge with 4.0
sql/mysql_priv.h:
  merge with 4.0
sql/mysqld.cc:
  merge with 4.0
sql/repl_failsafe.cc:
  merge with 4.0
sql/set_var.cc:
  merge with 4.0
sql/set_var.h:
  merge with 4.0
sql/share/czech/errmsg.txt:
  merge with 4.0
sql/share/danish/errmsg.txt:
  merge with 4.0
sql/share/dutch/errmsg.txt:
  merge with 4.0
sql/share/english/errmsg.txt:
  merge with 4.0
sql/share/estonian/errmsg.txt:
  merge with 4.0
sql/share/french/errmsg.txt:
  merge with 4.0
sql/share/german/errmsg.txt:
  merge with 4.0
sql/share/greek/errmsg.txt:
  merge with 4.0
sql/share/hungarian/errmsg.txt:
  merge with 4.0
sql/share/italian/errmsg.txt:
  merge with 4.0
sql/share/japanese/errmsg.txt:
  merge with 4.0
sql/share/korean/errmsg.txt:
  merge with 4.0
sql/share/norwegian-ny/errmsg.txt:
  merge with 4.0
sql/share/norwegian/errmsg.txt:
  merge with 4.0
sql/share/polish/errmsg.txt:
  merge with 4.0
sql/share/portuguese/errmsg.txt:
  merge with 4.0
sql/share/romanian/errmsg.txt:
  merge with 4.0
sql/share/russian/errmsg.txt:
  merge with 4.0
sql/share/slovak/errmsg.txt:
  merge with 4.0
sql/share/spanish/errmsg.txt:
  merge with 4.0
sql/share/swedish/errmsg.txt:
  merge with 4.0
sql/share/ukrainian/errmsg.txt:
  merge with 4.0
sql/slave.cc:
  Merge + some indentation fixes
sql/slave.h:
  merge with 4.0
sql/sql_acl.cc:
  merge with 4.0
  Some end space removal to make it easier to do future merges
sql/sql_acl.h:
  merge with 4.0
sql/sql_cache.cc:
  merge with 4.0
sql/sql_class.h:
  merge with 4.0
sql/sql_handler.cc:
  merge with 4.0
sql/sql_lex.cc:
  merge with 4.0
sql/sql_lex.h:
  merge with 4.0
sql/sql_parse.cc:
  merge with 4.0
sql/sql_repl.cc:
  merge with 4.0
sql/sql_select.cc:
  merge with 4.0
sql/sql_table.cc:
  merge with 4.0
sql/sql_union.cc:
  Merge with 4.0
  Note that I couldn't find out how to merge OPTION_FOUND_ROWS handling so this has to be fixed later
sql/sql_yacc.yy:
  merge with 4.0
  Removed end space to make merge easier
vio/Makefile.am:
  merge with 4.0
2003-08-11 22:44:43 +03:00
unknown
e97b2766e1 Fixed wrong test in LOG::close
Fixed test for binary build


mysql-test/r/rpl_max_relay_size.result:
  Fixed test for binary build
mysql-test/t/rpl_max_relay_size.test:
  Fixed test for binary build
sql/log.cc:
  Fixed wrong test in close
2003-07-14 23:49:19 +03:00
unknown
128feded87 Better fix for bug #791: At binlog rotation, INSERTs may not find their way into the binlog
mysql-test/t/rpl_flush_log_loop.test:
  Add timer to avoid problem when 'flush logs' is executed before we have read all data from master
sql/log.cc:
  Better fix for bug #791:
  Mark log as LOG_TO_BE_OPENED instead of LOG_CLOSED when it's closed and opened.
sql/mysqld.cc:
  Better startup message
sql/slave.cc:
  Fix argument to close()
sql/sql_class.h:
  Better handling of log.close()
2003-07-14 14:59:26 +03:00
unknown
e1a3069603 Safety and speedup fixes:
Changed is_open() to work as before.
Added back inited argument to LOG


mysql-test/r/rpl_flush_log_loop.result:
  Fixed results (probably bug in previous rpatch)
sql/handler.cc:
  Changed is_open() to work as before
sql/item_func.cc:
  Changed is_open() to work as before
sql/log.cc:
  Part revert of previous patch.
  The reason for adding back 'inited' is that is that we can't be 100 % sure that init_pthread_objects() is called before mysqld dies (for example on windows)
  I removed mutex lock handling in is_open() as the new code didn't have ANY affect except beeing slower.
  Added back checking of is_open() to some functions as we don't want to do a mutex lock when we are not using logging.
  Indentation/comment fixes
sql/log_event.cc:
  Changed is_open() to work as before
sql/repl_failsafe.cc:
  Changed is_open() to work as before
sql/sql_base.cc:
  Changed is_open() to work as before
sql/sql_class.h:
  Changed is_open() to work as before. Added back 'inited' variable
sql/sql_db.cc:
  Changed is_open() to work as before
sql/sql_delete.cc:
  Changed is_open() to work as before
sql/sql_insert.cc:
  Changed is_open() to work as before
sql/sql_load.cc:
  Changed is_open() to work as before
sql/sql_parse.cc:
  Changed is_open() to work as before
sql/sql_rename.cc:
  Changed is_open() to work as before
sql/sql_repl.cc:
  Changed is_open() to work as before
sql/sql_table.cc:
  Changed is_open() to work as before
sql/sql_update.cc:
  Changed is_open() to work as before
2003-07-14 10:12:05 +03:00
unknown
5526d454fd Member no_rotate in MYSQL_LOG was always 0, I delete it.
sql/log.cc:
  Member no_rotate of MYSQL_LOG is useless; this shows it for sure:
  [guilhem@gbichot2 mysql-4.0]$ bk -r grep no_rotate
  sql/log.cc      1.83       no_rotate(0), need_start_event(1)
  sql/log.cc      1.75      if (no_rotate)
  sql/log.cc      1.89      if (!no_rotate)
  sql/sql_class.h 1.119     bool no_rotate;
  i.e. no_rotate is 0 all the time. So we don't need it.
  Biggest part of the patch is indentation change.
sql/sql_class.h:
  suppress no_rotate
2003-07-12 15:48:26 +02:00
unknown
543208de96 removed 2 small useless if().
sql/log.cc:
  a comment for the future.
sql/mysqld.cc:
  if (p) is not needed: fn_ext() always returns a valid pointed; the way
  to test if an extension was found is if (*p), not if (p).
  But here even if there's no extension, we still want to truncate opt_name
  to FN_REFLEN, so we always execute the code.
  By design, the test was always 'false' (because we strip the extension before
  testing if there's an extension) so log->set_no_rotate never executed.
sql/sql_class.h:
  remove set_no_rotate as we don't need it.
2003-07-12 15:06:40 +02:00
unknown
d974959b4f Fix for BUG#791:
a safer way of initing the mutexes in MYSQL_LOG.
is_open() is now always thread-safe.
See each file for details.


sql/handler.cc:
  is_open() with locks
sql/item_func.cc:
  is_open() with locks
sql/log.cc:
  No more 'inited'.
  We now always use is_open() in a thread-safe manner.
  This simplifies some functions (no more need to test is_open() twice).
sql/log_event.cc:
  is_open() with locks
sql/mysqld.cc:
  Init mutexes for the global MYSQL_LOG objects.
  We care about no_rotate, because we can't do it in open() anymore (because
  we don't have 'inited' anymore).
sql/repl_failsafe.cc:
  is_open() with locks
sql/slave.cc:
  init pthread objects (mutexes, conds) in the constructor of st_relay_log_info.
  Some better locking in rotate_relay_log().
sql/sql_base.cc:
  is_open() with locks
sql/sql_class.h:
  Before, we inited LOCK_log in MYSQL_LOG::open(), so in other places of the code
  when we were never 100% sure that it had been inited. For example, if the server
  was running without --log-bin, ::open() was not called so the mutex was not
  inited. We could detect it with !inited, but not safely as 'inited' was not
  protected by any mutex.
  So now:
  we *always* init the LOCK_log mutex, even if the log is not used. We can't init
  the mutex in MYSQL_LOG's constructor, because for global objects like
  mysql_bin_log, mysql_log etc, the constructor is called before MY_INIT(), but
  safe_mutex depends on MY_INIT(). So we have a new function MYSQL_LOG::init_pthread_objects
  which we call in main(), after MY_INIT().
  For the relay log, we call this function in the constructor of
  st_relay_log_info, which is called before any function tries to
  use the relay log (the relay log is always invoked as rli.relay_log).
  So now we should be safe in all cases and we don't need 'inited'.
sql/sql_db.cc:
  is_open() with locks
sql/sql_delete.cc:
  is_open() with locks
sql/sql_insert.cc:
  is_open() with locks
sql/sql_load.cc:
  is_open() with locks
sql/sql_parse.cc:
  is_open() with locks
sql/sql_rename.cc:
  is_open() with locks
sql/sql_repl.cc:
  is_open() with locks
sql/sql_table.cc:
  is_open() with locks
sql/sql_update.cc:
  is_open() with locks
2003-07-11 14:26:44 +02:00
unknown
3c268e59ec Cleanups
mysql-test/t/distinct.test:
  Cleanup
sql/log.cc:
  Cleanup
sql/slave.cc:
  Cleanup
sql/sql_delete.cc:
  Cleanup
sql/sql_parse.cc:
  Simple optimization
2003-07-09 00:55:07 +03:00
unknown
d6b336359a Merge 4.1 into 5.0 (first pass).
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
BitKeeper/deleted/.del-cron-build:
  Delete: netware/BUILD/cron-build
BitKeeper/deleted/.del-crontab:
  Delete: netware/BUILD/crontab
BitKeeper/triggers/post-commit:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
libmysqld/Makefile.am:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/r/connect.result:
  Auto merged
mysql-test/r/rpl_temporary.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
netware/BUILD/compile-AUTOTOOLS:
  Auto merged
netware/BUILD/compile-linux-tools:
  Auto merged
netware/BUILD/compile-netware-END:
  Auto merged
netware/BUILD/compile-netware-START:
  Auto merged
netware/BUILD/compile-netware-all:
  Auto merged
netware/BUILD/compile-netware-debug:
  Auto merged
netware/BUILD/compile-netware-standard:
  Auto merged
netware/BUILD/mwasmnlm:
  Auto merged
netware/BUILD/mwccnlm:
  Auto merged
netware/BUILD/mwldnlm:
  Auto merged
netware/BUILD/nwbootstrap:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/protocol.cc:
  Auto merged
sql/records.cc:
  Auto merged
sql/repl_failsafe.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_derived.cc:
  Auto merged
sql/sql_error.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
2003-07-08 17:50:23 +02:00
unknown
eed62d993d Fix for
BUG#797 "If query ignored on slave (replicate-ignore-table) the slave still checks if
the returned error (0) is the same as the one on the master, whereas it shouldn't
test this.
Plus a new test for BUG#797.


include/mysqld_error.h:
  New error code (can be sent only to the slave thread, not to normal clients).
sql/log.cc:
  removed comment from a previous debugging.
sql/log_event.cc:
  ER_SLAVE_IGNORED_TABLE is an ignorable error.
sql/share/czech/errmsg.txt:
  for BUG#797
sql/share/danish/errmsg.txt:
  for BUG#797
sql/share/dutch/errmsg.txt:
  for BUG#797
sql/share/english/errmsg.txt:
  for BUG#797
sql/share/estonian/errmsg.txt:
  for BUG#797
sql/share/french/errmsg.txt:
  for BUG#797
sql/share/german/errmsg.txt:
  for BUG#797
sql/share/greek/errmsg.txt:
  for BUG#797
sql/share/hungarian/errmsg.txt:
  for BUG#797
sql/share/italian/errmsg.txt:
  for BUG#797
sql/share/japanese/errmsg.txt:
  for BUG#797
sql/share/korean/errmsg.txt:
  for BUG#797
sql/share/norwegian-ny/errmsg.txt:
  for BUG#797
sql/share/norwegian/errmsg.txt:
  for BUG#797
sql/share/polish/errmsg.txt:
  for BUG#797
sql/share/portuguese/errmsg.txt:
  for BUG#797
sql/share/romanian/errmsg.txt:
  for BUG#797
sql/share/russian/errmsg.txt:
  for BUG#797
sql/share/slovak/errmsg.txt:
  for BUG#797
sql/share/spanish/errmsg.txt:
  for BUG#797
sql/share/swedish/errmsg.txt:
  for BUG#797
sql/share/ukrainian/errmsg.txt:
  for BUG#797
sql/sql_parse.cc:
  when in sql_parse in the slave thread we ignore the query because of replicate-do
  and replicate-ignore options, we return a specific error to the slave thread,
  so that it knows that the query has been ignored (which is different from a
  successful query).
  A small cleanup (test was done twice).
2003-07-08 15:50:57 +02:00
unknown
27601fc5ee WL#912 (more user control on relay logs):
FLUSH LOGS now rotates relay logs,
and a new variable max_relay_log_size.
Plus a very small bit of code cleaning.


libmysqld/lib_sql.cc:
  open_log has no default arguments anymore.
mysql-test/r/rpl_flush_log_loop.result:
  result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_log.result:
  result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_rotate_logs.result:
  result update now that max_binlog_size is 4096.
mysql-test/t/rpl_rotate_logs-master.opt:
  now max_binlog_size must be a multiple of 4096 (see change in mysqld.cc)
sql/log.cc:
  Got rid of default arguments of various MYSQL_LOG methods (the default arguments
  made code reading uneasy).
  Set max_size in ::init().
  New function set_max_size() to set max_size of a MYSQL_LOG on-the-fly.
  More DBUG info.
sql/mysql_priv.h:
  no defaults in open_log().
  New variables max_relay_log_size.
sql/mysqld.cc:
  New variable and option max_relay_log_size.
  max_binlog_size and max_relay_log_size are multiples of IO_SIZE.
  No more default arguments for log functions.
sql/set_var.cc:
  New variable max_relay_log_size.
  If it is 0, then max_binlog_size will apply to relay logs.
  When one of these variables is changed, fix_max_%log_size is called
  to update max_size of the binary and/or relay logs.
sql/slave.cc:
  New function rotate_relay_log().
sql/slave.h:
  New function rotate_relay_log().
sql/sql_class.h:
  New member max_size of MYSQL_LOG (for automatic rotation).
  New method set_max_size() for setting on-the-fly.
sql/sql_parse.cc:
  Flush the relay log in FLUSH LOGS.
2003-07-06 17:59:54 +02:00