Commit graph

119 commits

Author SHA1 Message Date
unknown
f63c8f53b0 Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
Added protection against global read lock while creating and
initializing a delayed insert handler.
Allowed to ignore a global read lock when locking the table
inside the delayed insert handler.
Added some minor improvements.


sql/lock.cc:
  Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
  Changed mysql_lock_tables() to allow for ignoring global read lock.
  Added functions to set/unset protection against global read lock.
sql/mysql_priv.h:
  Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
  Changed existing and added new function declarations.
sql/sql_insert.cc:
  Bug#7823 - FLUSH TABLES WITH READ LOCK + INSERT DELAYED = deadlock
  Added and extended some comments.
  Added a protection against global read lock while a handler is
  created and initialized.
  Moved the unlock of the delayed insert object past its last usage
  in delayed_get_table().
  Changed the table locking in handle_delayed_insert() so that it
  does not wait for global read lock.
2005-04-27 12:40:37 +02:00
unknown
9286d1c145 Prevent adding 'CREATE TABLE .. SELECT' query to the binary log when the
insertion of new records partially failed. It would get logged because of the
logic to log a partially-failed 'INSERT ... SELECT' (which can't be rolled back
in non-transactional tables), but 'CREATE TABLE ... SELECT' is always rolled
back on failure, even for non-transactional tables. (Bug #6682)
(Original fix reimplemented after review by Serg and Guilhem.)


mysql-test/t/insert_select.test:
  Add test case for Bug #6682
mysql-test/r/insert_select.result:
  Add results for test case for Bug #6682
sql/sql_table.cc:
  moved tmp_disable_binlog() and reenable_binlog macros to sql/sql_class.h
sql/sql_insert.cc:
  disable binlog during call to super's ::send_error in select_create class
sql/sql_class.h:
  add select_create::send_error()
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-12-03 00:05:11 +01:00
unknown
382ff793bb Fix for BUG#4551 "Temporary InnoDB tables not replicated properly with CREATE TABLE .. SELECT"
The problem was that (for any storage engine), the created temporary table was not removed if CREATE SELECT failed (because
of a constraint violation for example). This was not consistent with the manual and with CREATE SELECT (no TEMPORARY).


sql/sql_insert.cc:
  Fix for BUG#4551 "Temporary InnoDB tables not replicated properly with CREATE TABLE .. SELECT"
  The problem was that (for any storage engine), the created temporary table was not removed if CREATE SELECT failed (because
  of a constraint violation for example). This was not consistent with the manual and with CREATE SELECT (no TEMPORARY).
  And it led to the above bug, because the binlogging of CREATE SELECT is done by select_insert::send_eof() (same function
  as INSERT SELECT) and so, if the table is transactional and there is a failure, the statement is considered as rolled
  back and so nothing is written in the binlog. So temp table MUST be deleted.
2004-07-18 14:34:35 +02:00
unknown
b0a8fde897 Fixed stack overrun with some INSERT ... SELECT ... GROUP BY queries (Bug #3265)
Ensure that raid_chunks is not set to higher than 255 as this could cause problems with DROP DATABASE. (Bug #3182)


mysql-test/r/raid.result:
  Test of raid_chunks > 255
mysql-test/t/raid.test:
  Test of raid_chunks > 255
sql/item.cc:
  Fixed wrong usage of str_value in Item::save_in_field
  This could caused a stack overrun with some very special INSERT ... SELECT ... GROUP BY queries where the GROUP BY value was an expression that generated a NULL value. (Bug #3265)
  The Item_copy_string::save_in_field() function is from 4.1 and helps optimized this case a bit
sql/item.h:
  Fixed wrong usage of str_value in Item_copy_string::save_in_field
sql/sql_insert.cc:
  More debug information
sql/table.cc:
  Ensure that raid_chunks is not set to higher than 255 as this could cause problems with DROP DATABASE.
  Another problem with values > 255 is that in the .frm file we store the chunks value in one byte.
  (Bug #3182)
2004-04-28 03:37:45 +03:00
unknown
5bc89a9644 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
2004-03-06 10:43:53 +02:00
unknown
52236ae1e1 Fixed Bug#2491, INSERT DELAYED causes binary log unusable by mysqlbinlog (replication is ok)
Setting insert delayed threads = 0 at mysql_init_command.


sql/mysql_priv.h:
  New session variable, max_insert_delayed_threads
sql/mysqld.cc:
  New session variable, max_insert_delayed_threads
sql/set_var.cc:
  New session variable, max_insert_delayed_threads
sql/sql_class.h:
  New session variable, max_insert_delayed_threads
sql/sql_insert.cc:
  New session variable, max_insert_delayed_threads
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-03-04 17:58:36 +00:00
unknown
0b751edc57 Rollback UPDATE/DELETE statements on kill
nsure that rows in a multi-row INSERT DELAYED are inserted atomicly


mysql-test/mysql-test-run.sh:
  Make test case safe for openserver/unixware (Bug #2700)
sql/sql_delete.cc:
  Rollback statement on kill
sql/sql_insert.cc:
  Ensure that rows in a multi-row INSERT DELAYED are inserted atomicly (without releasing logs).
  This is needed to ensure that the mysqlbinlog is consistent.
  Bug #2491
sql/sql_list.h:
  Ensure that rows in a multi-row INSERT DELAYED is inserted atomicly (without releasing logs).
  This is needed to ensure that the mysqlbinlog is consistent.
  Bug #2491
sql/sql_update.cc:
  Rollback statement on kill
2004-03-04 18:16:10 +02:00
unknown
30d52f53d1 Code cleanups
client/mysqlbinlog.cc:
  Ensure that errors are returned to upper levels instead of just doing 'exit/die' in sub function.
sql/handler.h:
  Indentation cleanup
sql/sql_insert.cc:
  Indentation cleanup
2004-02-10 12:03:08 +01:00
unknown
e2646f092e row0mysql.c:
Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
Many files:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way


sql/ha_innodb.cc:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/sql_insert.cc:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/ha_innodb.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/handler.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/dict/dict0dict.c:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/include/dict0dict.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/row/row0mysql.c:
  Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
2004-02-09 23:57:29 +02:00
unknown
376fb08072 Some small portability fixes.
Added support for lower_case_table_names=2, which is to be used on case insensitive file systems.
This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)


client/mysqltest.c:
  Indentation cleanup
include/myisam.h:
  Made some pointers 'const'
mysql-test/mysql-test-run.sh:
  Portability fix for OSX
sql/filesort.cc:
  Safety fix (not needed for current code but needed for 5.0)
sql/ha_berkeley.cc:
  More debugging
  Changed 'create' to return error number
sql/ha_berkeley.h:
  Added HA_FILE_BASED
sql/ha_innodb.cc:
  Added missing DBUG_RETURN
sql/ha_isam.cc:
  Changed create to return error number
sql/ha_isam.h:
  Added HA_FILE_BASED
sql/ha_isammrg.h:
  Added HA_FILE_BASED
sql/ha_myisam.cc:
  Changed create to return error number
sql/ha_myisam.h:
  Added HA_FILE_BASED
sql/ha_myisammrg.cc:
  Changed create to return error number
sql/ha_myisammrg.h:
  Added HA_FILE_BASED
sql/handler.cc:
  Ensure that table engines gets table names in lower case even if we are using lower_case_table_names
  Removed test for DB_TYPE_INNODB by ensuring that create method returns error number.
sql/handler.h:
  Added HA_FILE_BASED
  Made some struct entries 'const'
  Added 'alias' for create to be able to create tables in mixed case on case insensitive file systems
sql/mysql_priv.h:
  Support for lower_case_table_names=2
sql/mysqld.cc:
  Support for lower_case_table_names=2
  Moved test of case insenstive file system after all mutex are created
sql/set_var.cc:
  Support for lower_case_table_names=2
sql/sql_class.h:
  Indentation change
sql/sql_db.cc:
  Support for lower_case_table_names=2
sql/sql_insert.cc:
  Indentation change
sql/sql_parse.cc:
  Support for lower_case_table_names=2
sql/sql_rename.cc:
  Support for lower_case_table_names=2
  Added missing 'unpack_filename' to RENAME which may fix a bug in RENAME TABLE on windows
sql/sql_show.cc:
  If lower_case_table_name=2 is given, show original case in SHOW CREATE TABLE
sql/sql_table.cc:
  Support for lower_case_table_names=2 for DROP TABLE, RENAME TABLE, ALTER TABLE and CREATE TABLE
2003-12-30 13:14:21 +02:00
unknown
b26fd7b922 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0


sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2003-12-16 11:12:40 +01:00
unknown
e97722e495 Fix for BUG#2083
"EE_ error codes (EE_DELETE, EE_WRITE) end up in the binlog, making slave stop".
The problem was that during execution of the command on the master, an error
can occur (for example, not space left on device, then mysqld waits and when
there is space it completes successfully: so finally it worked but the error
EE_WRITE remains in thd->net.last_errno and thd->net.last_error).
To know if finally the command succeeded, we test the 'error' variable in
every place, and if it shows no failure we reset thd->net.last_err* using
the function THD::clear_error() which is backported from 4.1.
A new test to see if now only real errors get to the binlog (note: the test
uses "rm").

Also a bit of memory free/alloc saving in log_event.cc (do not free the whole
mem_root after every query in the slave SQL thread: we can keep the initial
block of it; which will be freed when the thread terminates).


sql/log_event.cc:
  In the slave SQL thread, it's a waste to free the initial block of the mem_root
  after every query. We can instead keep it. It will be freed when the thread
  terminates (in THD::~THD()).
sql/sql_acl.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_base.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_class.h:
  Backport of THD::clear_error() from 4.1:
  clears the error in thd->net.last_errno
sql/sql_db.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_delete.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_insert.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_parse.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_rename.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_table.cc:
  clear the error in thd->net.last_errno as there was no error
sql/sql_update.cc:
  clear the error in thd->net.last_errno as there was no error
2003-12-16 11:10:50 +01:00
unknown
ceab00b0c8 cleanup: if there is return from if-part, we don't need else statement 2003-12-10 22:26:31 +03:00
unknown
66927c51fa - Fix for BUG#1858 "SQL-Thread stops working when using optimize table":
we change THD::system_thread from a 'bool' to a bitmap to be able to
distinguish between delayed-insert threads and slave threads.
- Fix for BUG#1701 "Update from multiple tables" (one line in sql_parse.cc,
plus a new test rpl_multi_update.test). That's just adding an initialization.


sql/repl_failsafe.cc:
  comment to warn about this unused code
sql/slave.cc:
  Now thd->system_thread is a bitmap, not a bool.
sql/sql_class.h:
  'bool' for THD::system_thread is not accurate enough; sometimes we need
  to distinguish between delayed-insert threads and slave threads;
  so changing THD::system_thread to a bitmap (uint).
sql/sql_insert.cc:
  thd.system_thread is now a bitmap
sql/sql_parse.cc:
  We need to initialize thd->lex.select_lex.options in mysql_init_query();
  it's already initialized in dispatch_command() but replication calls
  mysql_parse() directly, thus bypassing dispatch_command().
  Not initing it here leads to a query influencing the next query,
  in the slave SQL thread.
  The initialization in dispatch_command() must be kept as this
  command uses the variable in tests, even when the command was not a
  query (i.e. when mysql_init_query() was not called).
2003-12-04 22:42:18 +01:00
unknown
b06eb4d81a Better fix for CREATE TABLE IF NOT EXISTS ... SELECT
Fixed chsize() problem on windows
Extend default timeout on windows clients to 1 year (to avoid timeout problems)


include/mysql.h:
  Added client timeouts (for TCP/IP)
libmysql/libmysql.c:
  Added client timeouts (for TCP/IP)
mysql-test/r/create.result:
  More tests for CREATE TABLE IF NOT EXISTS ... SELECT
mysql-test/t/create.test:
  More tests for CREATE TABLE IF NOT EXISTS ... SELECT
mysys/my_chsize.c:
  Fix for windows
sql/handler.h:
  Remove not used field 'if_not_exists'
  Ordered fields to be more optimized for new CPU's
  Added field 'table_existed'
sql/slave.cc:
  Cleanup temporary tables when slave ends
sql/sql_class.h:
  Remove not used 'do_not_drop' field
sql/sql_insert.cc:
  Better fix for CREATE TABLE IF NOT EXISTS ... SELECT
sql/sql_table.cc:
  Better fix for CREATE TABLE IF NOT EXISTS ... SELECT
2003-10-15 21:41:13 +03:00
unknown
e86fc82cf2 bug #1434 (and related issues) 2003-10-06 20:02:27 +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
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
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
73e80314aa Fix for bug #490 and #491 (see details below)
mysql-test/r/insert_select.result:
  Result update.
mysql-test/r/rpl_insert_id.result:
  Test update
mysql-test/t/insert_select.test:
  Check if a partly completed INSERT SELECT (failing because of "Duplicate key"
  after successfully inserting other rows) is written to the binlog if the
  table is not transactional and at least one row has been inserted (bug #491)
mysql-test/t/rpl_insert_id.test:
  Test for bug #490 (INSERT SELECT in auto_increment)
sql/sql_insert.cc:
  - In INSERT ... SELECT, if it fails with error but one row has been inserted and
  the table is not transactional, we must write to the binlog (the slave will stop
  because of the error code in the binlog event, this is normal). bug 491.
  - we must set INSERT_ID before writing to the binlog (bug 490
  accidentally introduced by another dev in 4.0.13).
2003-05-24 16:43:53 +02:00
unknown
dc1e55f819 Fix for UNION and LEFT JOIN (Bug #386)
Fixed wrong logging of Access denied error (Bug #398)


include/my_global.h:
  Fix for QNX
mysql-test/r/union.result:
  new test case
mysql-test/t/union.test:
  Test of bug in union and left join
mysys/my_seek.c:
  Safety fix to find out when pos gets a wrong value
sql/field.h:
  Fix for UNION and LEFT JOIN
sql/mysql_priv.h:
  Fix for UNION and LEFT JOIN
sql/sql_base.cc:
  Fix for UNION and LEFT JOIN
sql/sql_insert.cc:
  Fix for UNION and LEFT JOIN
sql/sql_parse.cc:
  Fixed wrong logging of Access denied error
sql/sql_union.cc:
  Fix for UNION and LEFT JOIN
sql/sql_update.cc:
  Fix for UNION and LEFT JOIN
2003-05-13 18:58:26 +03:00
unknown
f22be77734 Fixed problem when comparing a key for a multi-byte-character set. (bug 152)
Use 0x.... as strings if 'new' mode. (bug 152)
Don't report -max on windows when InnoDB is enabled. (bug 332)
Reset current_linfo;  This could cause a hang when doing PURGE LOGS.
Fix for row numbers in EXPLAIN (bug 322)
 Fix that USE_FRM works for all table types (bug 97)


VC++Files/libmysql/libmysql.dsp:
  Added new source files
myisam/mi_key.c:
  Fixed problem when comparing a key for a multi-byte-character set.
myisam/mi_range.c:
  Fixed problem when comparing a key for a multi-byte-character set.
myisam/mi_rkey.c:
  Fixed problem when comparing a key for a multi-byte-character set.
myisam/mi_search.c:
  Fixed problem when comparing a key for a multi-byte-character set.
myisam/mi_test2.c:
  Fixed printf statements
myisam/myisamdef.h:
  Fixed problem when comparing a key for a multi-byte-character set.
myisam/sort.c:
  Fixed printf statements
mysql-test/r/ctype_latin1_de.result:
  New test results
mysql-test/r/join.result:
  New test results
mysql-test/r/repair.result:
  New test results
mysql-test/r/rpl_alter.result:
  New test results
mysql-test/t/ctype_latin1_de-master.opt:
  --new is needed to get 0x... strings to work properly
mysql-test/t/ctype_latin1_de.test:
  New test for latin1_de
mysql-test/t/repair.test:
  Test of USE_FRM and HEAP tables
sql/field.cc:
  Fixed problem when comparing a key for a multi-byte-character set.
sql/item.cc:
  Use 0x.... as strings if 'new' mode
sql/item.h:
  Use 0x.... as strings if 'new' mode
sql/mysqld.cc:
  Don't report -max on windows when InnoDB is enabled.
sql/sql_analyse.cc:
  Removed unused variable
sql/sql_insert.cc:
  Removed debug message
sql/sql_repl.cc:
  Reset current_linfo;  This could cause a hang when doing PURGE LOGS.
sql/sql_select.cc:
  Fix for row numbers in EXPLAIN
sql/sql_table.cc:
  Fix that USE_FRM works for all table types (without strange errors)
sql/sql_yacc.yy:
  Removed compiler warnings.
2003-04-27 22:12:08 +03:00
unknown
62af18cb87 Fix for -fbranch-probabilites (bug 268)
Fix for LEFT/RIGHT/MID with multi-byte-character sets (bug 314)
Fix for new bison 1.875
max_insert_delayed_threads and delayed_insert_timeout now works as documented (bug 211)
Don't show port in SHOW PROCESSLIST for system threads
Fix problem with ORDER BY being discarded for some DISTINCT queries (bug 275)
Fixed bug with NATURAL LEFT JOIN, NATURAL RIGHT JOIN and RIGHT JOIN when
using many joined tables (Bug 212)


acinclude.m4:
  Fix for -fbranch-probabilites
configure.in:
  Fix for -fbranch-probabilites
myisam/mi_open.c:
  Give error instead of writing to stderr (Which user can't see)
mysql-test/r/join.result:
  Update results after change to NATURAL/LEFT/RIGHT JOIN
mysql-test/r/join_outer.result:
  Update results after change to NATURAL/LEFT/RIGHT JOIN
mysql-test/r/select.result:
  Update results after change to NATURAL/LEFT/RIGHT JOIN
mysql-test/t/join.test:
  Update results after change to NATURAL/LEFT/RIGHT JOIN
sql/item_strfunc.cc:
  Fix for LEFT/RIGHT/MID with multi-byte-character sets
sql/mysqld.cc:
  Fix for new bison 1.875 (Wrong error text message when one got syntax error)
sql/sql_class.cc:
  Don't show port in SHOW PROCESSLIST for system threads
sql/sql_insert.cc:
  max_insert_delayed_threads now works as documented.
  delayed_insert_timeout now works on Linux
sql/sql_parse.cc:
  Added comment
sql/sql_select.cc:
  Fix problem with ORDER BY being discarded and results returned un-sorted
sql/sql_yacc.yy:
  Fixed bug with NATURAL LEFT JOIN, NATURAL RIGHT JOIN and RIGHT JOIN when
  using many joined tables.
2003-04-26 20:43:28 +03:00
unknown
4832d06f92 fixed incorrect number of affected rows in REPLACE...SELECT... (bug 130)
sql/sql_insert.cc:
  fixed incorrect number of affected rows in REPLACE...SELECT...
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2003-04-26 15:53:27 +03:00
unknown
9681f4a8cd Write binlog before commit when doing INSERT ... SELECT
mysql-test/r/create.result:
  After merge fix
sql/sql_insert.cc:
  Write binlog before commit
sql/sql_update.cc:
  Added comment
2003-03-16 16:28:30 +02:00
unknown
ab3c0ac156 Proper fix for INSERT DELAYED and --max-delayed-threads 2003-03-12 08:08:07 +02:00
unknown
64cf72900c Made it possible to use --max-delayed-threads=0 in order to disable
INSERT DELAYED.
2003-03-09 19:03:55 +02:00
unknown
2395cd9805 remove spaces according to coding rules 2003-03-06 22:53:58 +01:00
unknown
65b62bd474 Fix so that INSERT DELAYED cares about SQL_LOG_BIN=0 (bug #104) 2003-03-06 22:46:24 +01:00
unknown
e6dad70436 Added detection if pthread_attr_getstacksize() exists
Fixed bug in RAND() usage in mysqlbinlog


configure.in:
  Added detection if pthread_attr_getstacksize() exists
include/thr_lock.h:
  Fixed wrong comment
sql/log_event.cc:
  Fixed bug in RAND() usage in mysqlbinlog
sql/mysqld.cc:
  Portablity fix
sql/repl_failsafe.cc:
  Set host_or_ip for system threads (to make other code simpler)
sql/slave.cc:
  Set host_or_ip for system threads (to make other code simpler)
sql/sql_class.cc:
  Set host_or_ip for system threads (to make other code simpler)
sql/sql_insert.cc:
  Set host_or_ip for system threads (to make other code simpler)
sql/sql_show.cc:
  Set host_or_ip for system threads (to make other code simpler)
2003-02-27 17:35:51 +02:00
unknown
84f81dc593 Fixes for Netware
Call pthread_mutex_destroy() on not used mutex.
Changed comments in .h and .c files from // -> /* */
Added detection of mutex on which one didn't call pthread_mutex_destroy()
Fixed bug in create_tmp_field() which causes a memory overrun in queries that uses "ORDER BY constant_expression"
Added optimisation for ORDER BY NULL


BitKeeper/deleted/.del-ChangeLog~dfc92e15bee6fc75:
  Delete: sql/ChangeLog
BUILD/compile-pentium-valgrind-max:
  Don't use valgrind with safemalloc as this can hide some bugs
Makefile.am:
  Added platform dirs
bdb/os/os_handle.c:
  Portability fix
client/mysql.cc:
  Fixes for Netware.
  Fixed duplicate output when using 'tee'
  Simple optimisations
client/mysqldump.c:
  Portability fix
client/mysqltest.c:
  Portability fix
configure.in:
  Fixes for Netware
extra/resolveip.c:
  Fixes for Netware
include/Makefile.am:
  Fixes for Netware
include/config-win.h:
  Portability fix
include/my_global.h:
  Fixes for Netware
include/my_net.h:
  Fixes for Netware
include/my_pthread.h:
  Fixes for Netware
  Added detection of mutexes that was not destroyed
include/my_sys.h:
  Fixes for Netware
  Added 'extern' before external functions
include/mysql.h:
  Fixes for Netware
innobase/configure.in:
  Fixes for Netware
innobase/include/os0thread.h:
  Fixes for Netware
innobase/os/os0sync.c:
  Fixes for Netware
innobase/os/os0thread.c:
  Fixes for Netware
innobase/srv/srv0srv.c:
  Fixes for Netware
innobase/srv/srv0start.c:
  Fixes for Netware
innobase/sync/sync0sync.c:
  Fixes for Netware
isam/test3.c:
  Disable test on Netware
libmysql/Makefile.shared:
  Added my_sleep
libmysql/get_password.c:
  Fixes for Netware
libmysql/libmysql.c:
  Fixes for Netware
  Made mysql_once_init() global
libmysql/manager.c:
  Fixes for Netware
myisam/mi_test3.c:
  Disable test for netware
mysql-test/mysql-test-run.sh:
  Give warning if output file contains errors
mysql-test/r/count_distinct.result:
  More tests
mysql-test/r/group_by.result:
  Test of ORDER BY NULL
mysql-test/t/backup.test:
  Fixes for Netware
mysql-test/t/count_distinct.test:
  More tests
mysql-test/t/func_crypt.test:
  Fixes for Netware
mysql-test/t/grant_cache.test:
  Fixes for Netware
mysql-test/t/group_by.test:
  Tests of ORDER BY NULL
mysql-test/t/rpl000015.test:
  Fixes for Netware
mysql-test/t/rpl000017.test:
  Fixes for Netware
mysql-test/t/rpl_rotate_logs.test:
  Fixes for Netware
mysys/Makefile.am:
  Added my_sleep.c and my_netware.c
mysys/charset.c:
  Fixes for Netware
mysys/default.c:
  Fixes for Netware
mysys/mf_tempfile.c:
  Fixes for Netware
mysys/my_clock.c:
  Fixes for Netware
mysys/my_copy.c:
  Fixes for Netware
mysys/my_getwd.c:
  Changed function comment from // -> /* */
mysys/my_init.c:
  Fixes for Netware
mysys/my_lock.c:
  Fixes for Netware
mysys/my_messnc.c:
  Fixes for Netware
mysys/my_os2cond.c:
  Removed comment
mysys/my_os2dirsrch.c:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_os2dirsrch.h:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_os2file64.c:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_os2mutex.c:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_os2thread.c:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_os2tls.c:
  Changed function comment from // -> /* */
  Fixed indentation
mysys/my_pthread.c:
  Fixes for Netware
mysys/my_redel.c:
  Fixes for Netware
mysys/my_tempnam.c:
  Fixes for Netware
mysys/my_thr_init.c:
  Remove created mutexes when program ends.
mysys/mysys_priv.h:
  Cleanup
mysys/safemalloc.c:
  Prefix error messages with "Error:"
mysys/thr_alarm.c:
  Destroy internal mutex on end_thr_alarm.
mysys/thr_mutex.c:
  Added detection of mutex on which one didn't call pthread_mutex_destroy()
scripts/make_binary_distribution.sh:
  Fixes for Netware
sql/des_key_file.cc:
  Free mutex at end
sql/ha_innodb.cc:
  Free mutex at end
sql/ha_myisam.cc:
  Changed warnings from REPAIR Note:
  (For mysql-test-run)
sql/hostname.cc:
  Fixes for Netware
sql/item.h:
  Fixed bug in create_tmp_field() which causes a memory overrun
sql/item_func.cc:
  Free used mutexes
sql/item_sum.cc:
  Fixed bug in create_tmp_field() which causes a memory overrun
sql/log.cc:
  Free used mutexes
sql/my_lock.c:
  Fixes for Netware
sql/mysql_priv.h:
  Fixes for Netware
sql/mysqld.cc:
  Fixes for Netware
  Added Have_crypt
  Properly free mutexes from MYSQL_LOG by calling cleanup
  Free mutex before exit
sql/repl_failsafe.cc:
  Fixes for Netware
sql/set_var.cc:
  Added have_crypt
sql/share/english/errmsg.txt:
  Added version socket and port to stderr log
sql/slave.cc:
  Remove global MASTER_INFO variable and use instead an allocated variable.
  This allows us to correctly free used mutex.
sql/slave.h:
  Move constructors and destuctors to slave.cc
  (To make it easier to clear all needed variables)
sql/sql_base.cc:
  Safety fix
sql/sql_class.h:
  Portability fixes.
  Added 'cleanup' to log handling to be able to free mutexes.
sql/sql_insert.cc:
  Fixes for Netware
mysys/my_sleep.c:
  E
sql/sql_parse.cc:
  Fixes for Netware
sql/sql_select.cc:
  Added optimisation for ORDER BY NULL
sql/sql_select.h:
  Fixed bug in create_tmp_field() which causes a memory overrun
sql/sql_table.cc:
  Fixed bug in create_tmp_field() which causes a memory overrun
sql/sql_udf.cc:
  Free mutex on end
vio/test-ssl.c:
  Simple code cleanup
vio/test-sslclient.c:
  Simple code cleanup
vio/test-sslserver.c:
  Simple code cleanup
vio/viotest-ssl.c:
  Simple code cleanup
2003-01-28 08:38:28 +02:00
unknown
b512c8b83a Transactions in AUTOCOMMIT=0 mode didn't rotate binary log
Don't enable any bulk insert or record caching code if inserting less than MIN_ROWS_TO_USE_BULK_INSERT rows (100)


myisam/mi_check.c:
  Fixed bug in copying statistics for disabled index
mysql-test/r/distinct.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/fulltext.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/insert.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/key_diff.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/order_by.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/select.result:
  Fix result after not doing key statistics for first insert.
mysql-test/r/show_check.result:
  Fix result after not doing key statistics for first insert.
sql/ha_myisam.cc:
  Don't disable index when inserting only a few rows
sql/log.cc:
  Transactions in AUTOCOMMIT=0 mode didn't rotate binary log.
sql/sql_insert.cc:
  Don't enable any bulk insert or record caching code if inserting less than MIN_ROWS_TO_USE_BULK_INSERT
2002-12-14 12:45:31 +02:00
unknown
6271ea35b8 bulk insert code optimized
mysql-test/r/distinct.result:
  updated
mysql-test/r/fulltext.result:
  updated
mysql-test/r/select.result:
  updated
mysql-test/r/show_check.result:
  updated
mysql-test/t/insert.test:
  updated
2002-12-07 22:40:20 +01:00
unknown
4653621909 New multi-table-update code
New (simpler) internal timestamp handling.
More debuging to heap tables.
Small cleanups to multi-table-delete
false -> 0 and true -> 1  (We should use TRUE and FALSE)


heap/_check.c:
  Added checking of rows
heap/hp_delete.c:
  Extra debugging
heap/hp_scan.c:
  Extra debugging
heap/hp_update.c:
  Extra debugging
heap/hp_write.c:
  Extra debugging
include/my_base.h:
  Added option to disable row cache when using updates
isam/extra.c:
  Added option to disable row cache when using updates
myisam/mi_check.c:
  Comment cleanup
myisam/mi_extra.c:
  Added option to disable row cache when using updates
myisam/sort.c:
  Indentaion cleanups
myisammrg/myrg_extra.c:
  Added option to disable row cache when using updates
mysql-test/r/multi_update.result:
  Updated results
mysql-test/t/multi_update.test:
  Cleanup up to only use table names t1, t2,...
mysys/mf_iocache.c:
  Safety fix
sql/item_cmpfunc.cc:
  change true-> 1 and false -> 0
sql/mysql_priv.h:
  Cleaned up SQL_LIST handling
sql/sql_base.cc:
  Fixed grant checking if SELECT tablename.*
sql/sql_class.h:
  Cleaned up multi-table-update
sql/sql_delete.cc:
  Fixed OPTION_SAFE_UPDATE checking in multi-table-delete.
  Fixed query-cache invalidation in multi-table-delete
sql/sql_insert.cc:
  cleaned up timestamp handling
sql/sql_olap.cc:
  false -> 0
sql/sql_parse.cc:
  Optimized some list handling.
  Moved multi-table-update to sql_update.cc
sql/sql_select.cc:
  More comments
  Fixed create_tmp_table for multi-table-update
sql/sql_select.h:
  New prototypes
sql/sql_union.cc:
  false -> 0
  Cleaned up timestamp handling
sql/sql_update.cc:
  New multi-update-table code
sql/sql_yacc.yy:
  false -> 0, true -> 1
  Optimized some list handling
sql/table.h:
  Added union for temporary values.
  Made shared int to be able to store counters.
sql/uniques.cc:
  Indentation cleanup
2002-11-29 16:40:18 +02:00
unknown
03ac294cce fixed invalidation of query cache
excluded double call of 'invalidate()'


mysql-test/r/innodb_cache.result:
  test of invalidation
mysql-test/t/innodb_cache.test:
  test of invalidation
sql/handler.cc:
  excluded double call of 'invalidate()'
sql/sql_delete.cc:
  fixed invalidation of query cache
sql/sql_insert.cc:
  fixed invalidation of query cache
sql/sql_update.cc:
  fixed invalidation of query cache
2002-11-22 00:33:15 +02:00
unknown
9b9546edbc Try to optimize the cache buffer size needed for bulk_insert
Fix for shutdown on Mac OS X


include/my_tree.h:
  Try to optimize the cache buffer size needed for bulk_insert
myisam/mi_write.c:
  Try to optimize the cache buffer size needed for bulk_insert
mysql-test/r/bdb.result:
  Make test repeatable
mysql-test/t/bdb.test:
  Make test repeatable
mysys/tree.c:
  Try to optimize the cache buffer size needed for bulk_insert
sql/mysql_priv.h:
  Small optimization
sql/mysqld.cc:
  Fix for shutdown on Mac OS X
sql/sql_insert.cc:
  Try to optimize the cache buffer size needed for bulk_insert
sql/sql_yacc.yy:
  Call thd->strmake() instead of sql_strmake()
sql/table.cc:
  Try to optimize the cache buffer size needed for bulk_insert
sql/table.h:
  Try to optimize the cache buffer size needed for bulk_insert
2002-11-20 22:56:57 +02:00
unknown
bd1c2d65c4 Small improvement to alloc_root
Add support for LIMIT # OFFSET #
Changed lock handling:  Now all locks should be stored in TABLE_LIST instead of passed to functions.
Don't call query_cache_invalidate() twice in some cases
mysql_change_user() now clears states to be equal to close + connect.
Fixed a bug with multi-table-update and multi-table-delete when used with LOCK TABLES
Fixed a bug with replicate-do and UPDATE


BitKeeper/etc/ignore:
  added autom4te.cache/* bdb/dist/autom4te.cache/* innobase/autom4te.cache/*
include/my_alloc.h:
  Small improvement to alloc_root
libmysql/libmysql.c:
  Removed compiler warning
myisam/mi_page.c:
  Better DBUG message
mysql-test/r/multi_update.result:
  Added test with lock tables
mysql-test/r/rpl_replicate_do.result:
  Update results
mysql-test/r/rpl_rotate_logs.result:
  Make test independent of if t1 exists
mysql-test/t/multi_update.test:
  Added test with lock tables
mysql-test/t/rpl_rotate_logs.test:
  Make test independent of if t1 exists
mysys/my_alloc.c:
  Small imprevement to alloc_root
  (Don't free blocks less than ALLOC_MAX_BLOCK_ROOT (4K)
sql/ha_innodb.cc:
  More debug messages
sql/ha_myisam.cc:
  Safety change
sql/lex.h:
  Add support for LIMIT # OFFSET #
sql/lock.cc:
  Added assertion
sql/mysql_priv.h:
  Change of lock handling
sql/mysqld.cc:
  Added function clear_error_messages()
sql/sql_base.cc:
  Change lock handling by open_ltable() and open_and_lock_tables()
sql/sql_class.cc:
  Split THD::THD to two functions
  Move some code from cleanup() to ~THD:THD
  Add THD::change_user()
sql/sql_class.h:
  Prototype changes in class THD
sql/sql_delete.cc:
  Remove locking argument from mysql_delete()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
sql/sql_insert.cc:
  Remove locking argument from mysql_insert()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
  Don't use bulk insert if bulk_insert_buff_size is 0
sql/sql_parse.cc:
  Changes to make mysql_change_user() work as close+connect
  Changed command statistics to use statstics_increment to get more speed
  Update code to handle that locks is now stored in TABLE_LIST
sql/sql_update.cc:
  Remove locking argument from mysql_update()
  Locking type is now stored in TABLE_LIST
  Small code change to not call query_cache_invalidate() twice for transactional tables.
sql/sql_yacc.yy:
  Locking type is now stored in TABLE_LIST
  Added support for LIMIT # OFFSET # syntax
  Removed some wrong (never true) checks for SQLCOM_MULTI_UPDATE
mysql-test/t/rpl_replicate_do-slave.opt:
  Changed tables to use t1,t2,...
mysql-test/t/rpl_replicate_do.test:
  Changed tables to use t1,t2,...
2002-11-16 20:19:10 +02:00
unknown
3ef571302d Portability fix (accidently left out from last changeset) 2002-11-07 19:25:27 +02:00
unknown
8fc4319ae3 Portability fix extern "C" static -> extern "C"
client/mysqlbinlog.cc:
  Portability fix
sql/gen_lex_hash.cc:
  Portability fix
sql/repl_failsafe.cc:
  Portability fix
sql/sql_class.cc:
  Portability fix
sql/sql_udf.cc:
  Portability fix
sql/mysqld.cc:
  Portability fix
sql/sql_base.cc:
  Portability fix
sql/sql_insert.cc:
  Portability fix
sql/sql_parse.cc:
  Portability fix
sql/sql_delete.cc:
  Portability fix
2002-11-07 12:49:02 +02:00
unknown
8d0d518ced merge
configure.in:
  Auto merged
sql/field.cc:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2002-11-07 12:49:01 +02:00
unknown
72413e7f81 Put temporary files in binlog cache when using BEGIN/COMMIT
Let MySQL 4.0 read 4.1 .frm files without 4.1 specific extensions
New variables @@rand_seed1 and @@rand_seed2 (used by replication)
DROP TEMPORARY TABLE


mysql-test/r/rpl_log.result:
  Update of results after last replication change
mysql-test/r/variables.result:
  Test of new variables @@rand_seed1 and @@rand_seed2
mysql-test/t/variables.test:
  Test of new variables @@rand_seed1 and @@rand_seed2
sql/field.cc:
  Let MySQL 4.0 read 4.1 .frm files without 4.1 specific extensions
sql/field.h:
  Let MySQL 4.0 read 4.1 .frm files without 4.1 specific extensions
sql/item_func.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/log.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
  More debug information
sql/log_event.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/log_event.h:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/set_var.cc:
  Add system variables @@rand_seed1 and @@rand_seed2
sql/set_var.h:
  Add system variables @@rand_seed1 and @@rand_seed2
sql/slave.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_acl.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_base.cc:
  Store DROP of temporary tables in binlog cache
sql/sql_class.h:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_db.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_delete.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_insert.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_lex.h:
  DROP TEMPORARY TABLE
sql/sql_load.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_parse.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_rename.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_repl.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_repl.h:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_table.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_update.cc:
  Put temporary files in binlog cache when using BEGIN/COMMIT
sql/sql_yacc.yy:
  DROP TEMPORARY
sql/table.cc:
  Let MySQL 4.0 read 4.1 .frm files without 4.1 specific extensions
sql/unireg.cc:
  Let MySQL 4.0 read 4.1 .frm files without 4.1 specific extensions
2002-11-07 04:02:37 +02:00
unknown
c88b910208 Portability fixes for Fortre C++ 5.0 (on Sun) in 32 and 64 bit modes.
client/mysqlbinlog.cc:
  Portability fix
configure.in:
  Added use of ASFLAGS (For Solaris with Forte 5.0)
include/my_global.h:
  Portability fix
include/myisam.h:
  Portability fix
include/queues.h:
  Portability fix
innobase/include/ut0ut.h:
  Portability fix
innobase/log/log0log.c:
  Portability fix
innobase/rem/rem0cmp.c:
  Portability fix
innobase/trx/trx0sys.c:
  Portability fix
isam/pack_isam.c:
  Portability fix
myisam/ft_boolean_search.c:
  Portability fix
myisam/mi_dynrec.c:
  Code change to go around bug in Forte 5.0
myisam/sort.c:
  Portability fix
mysys/my_aes.c:
  Portability fix
scripts/Makefile.am:
  Support for ASFLAGS
scripts/mysqlbug.sh:
  Support for ASFLAGS
sql/field.cc:
  Portability fix
sql/filesort.cc:
  Portability fix
sql/gen_lex_hash.cc:
  Portability fix
sql/ha_innodb.cc:
  Portability fix
  Changed SHOW INNODB STATUS to return error instead of writing message to log file.
sql/ha_isammrg.cc:
  Portability fix
sql/ha_myisam.cc:
  Portability fix
sql/ha_myisammrg.cc:
  Portability fix
sql/hash_filo.h:
  Portability fix
sql/hostname.cc:
  Portability fix
sql/item_cmpfunc.h:
  Indentation change
sql/item_func.cc:
  Portability fix
sql/item_func.h:
  Portability fix
sql/log.cc:
  Portability fix
sql/log_event.cc:
  Portability fix
sql/mysql_priv.h:
  Portability fix
sql/mysqld.cc:
  Portability fix
  Fixed bug with rpl_recovery_rank command line option on 64 bit systems
sql/opt_range.cc:
  Portability fix
sql/repl_failsafe.cc:
  Portability fix
sql/slave.cc:
  Portability fix
sql/slave.h:
  Portability fix
sql/sql_acl.cc:
  Portability fix
sql/sql_base.cc:
  Portability fix
sql/sql_cache.cc:
  Portability fix
sql/sql_cache.h:
  Portability fix
sql/sql_class.cc:
  Portability fix
sql/sql_delete.cc:
  Portability fix
sql/sql_insert.cc:
  Portability fix
sql/sql_manager.cc:
  Portability fix
sql/sql_parse.cc:
  Portability fix
BUILD/compile-solaris-sparc-forte:
  C
sql/sql_udf.cc:
  Portability fix
sql/sql_update.cc:
  Portability fix
strings/Makefile.am:
  Portability fix
strings/bmove_upp-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/str_test.c:
  Cleanup
strings/strappend-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strend-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strmake-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strmov-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strnmov-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strstr-sparc.s:
  Fix so that this works on 32 and 64 bit sparcs
strings/strxmov-sparc.s:
  Fixes to make this more portable, but it's still not usable on 64 bit systems :(
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2002-11-07 03:54:00 +02:00
unknown
f631f93ed8 Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
This should fix some issues where --lower-case-table-names doesn't work properly under windows.


client/mysql.cc:
  Added missing sslopt-case.h
sql/lock.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/log_event.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/mysqld.cc:
  Fixed that --ssl and --skip-ssl works
sql/slave.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_acl.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_base.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_cache.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_handler.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_insert.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_parse.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_show.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_table.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_udf.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_union.cc:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/sql_yacc.yy:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
sql/table.h:
  Changed table_list->name -> table_list->alias to find places where we where using alias instead of table_name.
2002-09-20 14:05:18 +03:00
unknown
83fc12f216 Added code to flush a bulk_insert index.
This fixes a bug when doing multi-row inserts on table with an auto_increment key that is not in the first key segment.


Docs/manual.texi:
  Changelog
include/my_base.h:
  Added code to flush a bulk_insert index
myisam/mi_extra.c:
  Added code to flush a bulk_insert index
mysql-test/r/insert.result:
  test of auto_increment and bulk_insert
mysql-test/t/insert.test:
  test of auto_increment and bulk_insert
sql/ha_myisam.cc:
  Added code to flush a bulk_insert index
sql/sql_insert.cc:
  Mark that bulk_insert is used
sql/sql_load.cc:
  Mark that bulk_insert is used
  Remove duplicated call to initialize bulk insert
sql/table.h:
  Mark that bulk_insert is used
vio/viosslfactories.c:
  Remove compiler warning
2002-09-18 21:04:49 +03:00
unknown
8f2482d283 Fixed searching after ssl directories.
Fixed that GRANT ... REQUIRE options are not forgot when doing new GRANT
Changed fn_ext to point at first '.' after directory.
FLUSH LOGS removed numerical extension for all future update logs.
Fixed the mysqld --help reports right values for --datadir and --bind-address
--log-binary=a.b.c now properly strips of .b.c
Fix that one can DROP UDF functions that was not loaded at startup
Made AND optional in REQUIRE
Added REQUIRE NONE


BitKeeper/deleted/.del-CodingStyle~1ba7ff62d4cd0ea:
  Delete: vio/docs/CodingStyle
BitKeeper/deleted/.del-COPYING.dbug~ca0c017a4d7e8609:
  Delete: vio/docs/COPYING.dbug
BitKeeper/deleted/.del-COPYING.mysql~471498c82977cd3a:
  Delete: vio/docs/COPYING.mysql
BitKeeper/deleted/.del-README~947354991dc882f8:
  Delete: vio/docs/README
Docs/manual.texi:
  Changelog
acinclude.m4:
  Fixed searching after ssl directories.
client/Makefile.am:
  Moved openssl include to avoid problem with installed readline
include/Makefile.am:
  Install my_global.h
include/violite.h:
  Fixed that GRANT ... REQUIRE options are not forgot when doing new grant
libmysqld/examples/Makefile.am:
  Moved openssl include to avoid problem with installed readline
mysql-test/mysql-test-run.sh:
  Improved 'which' handling to give error if command is not found
mysys/mf_fn_ext.c:
  Changed fn_ext to point at first '.' after directory.
sql/Makefile.am:
  More comments
sql/lex.h:
  Added NONE as keyword
sql/log.cc:
  FLUSH LOGS removed numerical extension for all future update logs.
  Simple code cleanup
sql/mysqld.cc:
  Fixed the --help reports right values for --datadir and --bind-address
  --log-binary=a.b.c now properly strips of .b.c
  Removed option --skip-external-locking (not needed as this is automatic)
sql/repl_failsafe.cc:
  Moved some common THD initalization to store_globals()
sql/slave.cc:
  Moved openssl include to avoid problem with installed readline
sql/sql_acl.cc:
  Moved openssl include to avoid problem with installed readline
sql/sql_acl.h:
  Updated function prototypes
sql/sql_base.cc:
  Added comment
sql/sql_class.cc:
  Moved openssl include to avoid problem with installed readline.
  Changed THD::thd to make things work for main thread.
sql/sql_class.h:
  Fixed wrongly removed line (fixes compiler problem on MacOSX)
sql/sql_insert.cc:
  Moved openssl include to avoid problem with installed readline
sql/sql_lex.cc:
  Moved save_to_cache_query=0 to udf detection function to make sql_yacc.yy simpler
sql/sql_lex.h:
  Indentation cleanup
sql/sql_parse.cc:
  Moved openssl include to avoid problem with installed readline.
  Added THD argument to acl_reload()
sql/sql_repl.h:
  Made opt_bin_logname static
sql/sql_udf.cc:
  Fix that one can DROP UDF functions that was not loaded at startup
sql/sql_yacc.yy:
  made AND optional in REQUIRE
  Added REQUIRE NONE
  Fixed that old SSL options are not forgotten when doing new GRANT.
sql/udf_example.cc:
  Improved comments
2002-09-05 16:17:08 +03:00
unknown
e4d5597d7e Fixed bug in wait_for_update() that I had introduced.
Changed option variables to my_bool (to avoid bugs in my_getopt())
Added new thread specific mutex LOCK_delete to be able to free LOCK_thread_count early.
Changed usage of LOCK_thread_count -> LOCK_status for statistics variables


libmysqld/lib_sql.cc:
  Removed not needed LOCK
mysql-test/mysql-test-run.sh:
  Log name of running test
mysql-test/r/rpl_sporadic_master.result:
  Cleaned up test
mysql-test/t/rpl_sporadic_master.test:
  cleaned up test
sql/log.cc:
  Cleanup.
  Fixed bug in wait_for_update() that I had introduced.
sql/mini_client.cc:
  Indentation changes.
sql/mysql_priv.h:
  Changed option variables to my_bool.
sql/mysqld.cc:
  Changed option variables to my_bool.
  Removed not used LOCK_server_id
  Minor code cleanups.
sql/repl_failsafe.cc:
  Minor code cleanups
sql/slave.cc:
  Minor code cleanups.
  Fixed usage of wait_for_update().
sql/slave.h:
  Changed option variables to my_bool.
sql/sql_class.cc:
  Added new thread specific mutex LOCK_delete to be able to free LOCK_thread_count early
sql/sql_class.h:
  Added new thread specific mutex LOCK_delete to be able to free LOCK_thread_count early
sql/sql_insert.cc:
  Do broadcast after unlock()
sql/sql_parse.cc:
  Removed not needed LOCK
  Changed usage of LOCK_thread_count -> LOCK_status for statistics variables
  Changed killing of threads to not lock LOCK_thread_count for long.
sql/sql_repl.cc:
  Changed options variables to my_bool
  Fixed usage of wait_for_update()
  Fixed loop to kill slaves to not lock LOCK_thread_count for long.
  Code optimization.
sql/sql_repl.h:
  bool -> my_bool
  Fixed KICK_SLAVE to use LOCK_delete
2002-08-22 16:50:58 +03:00
unknown
514e60480d merge with 3.23.52
BitKeeper/deleted/.del-global.h~e80d28157acfdcb5:
  Auto merged
Docs/manual.texi:
  Auto merged
include/my_no_pthread.h:
  Auto merged
innobase/include/univ.i:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/os/os0thread.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
innobase/ut/ut0ut.c:
  Auto merged
mysql-test/r/bigint.result:
  Auto merged
mysql-test/t/bigint.test:
  Auto merged
mysys/my_init.c:
  Auto merged
mysys/my_net.c:
  Auto merged
mysys/mysys_priv.h:
  Auto merged
mysys/thr_rwlock.c:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
include/my_sys.h:
  merge with 3.23
libmysql/Makefile.shared:
  merge with 3.23
mysql-test/mysql-test-run.sh:
  merge with 3.23
mysql-test/r/func_if.result:
  merge with 3.23
mysys/Makefile.am:
  merge with 3.23
mysys/my_gethostbyname.c:
  merge with 3.23
sql/ha_innodb.cc:
  merge with 3.23
sql/item_cmpfunc.cc:
  merge with 3.23
sql/mysqld.cc:
  merge with 3.23
sql/sql_show.cc:
  merge with 3.23
2002-08-12 04:04:43 +03:00
unknown
49e4fea6c9 A small fix for last_insert_id with multi-row inserts 2002-08-10 22:08:00 +03:00
unknown
267b80834a merge with 3.23.52
BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
Docs/manual.texi:
  Auto merged
include/my_pthread.h:
  Auto merged
include/mysql_com.h:
  Auto merged
include/mysql_version.h.in:
  Auto merged
innobase/btr/btr0cur.c:
  Auto merged
innobase/btr/btr0sea.c:
  Auto merged
innobase/buf/buf0buf.c:
  Auto merged
innobase/buf/buf0lru.c:
  Auto merged
innobase/configure.in:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/fil/fil0fil.c:
  Auto merged
innobase/fsp/fsp0fsp.c:
  Auto merged
innobase/include/buf0buf.ic:
  Auto merged
innobase/include/dyn0dyn.ic:
  Auto merged
innobase/include/ha0ha.ic:
  Auto merged
innobase/include/sync0rw.ic:
  Auto merged
innobase/include/univ.i:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/log/log0log.c:
  Auto merged
innobase/mem/mem0dbg.c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/os/os0thread.c:
  Auto merged
innobase/page/page0cur.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
innobase/sync/sync0rw.c:
  Auto merged
innobase/sync/sync0sync.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
myisam/mi_create.c:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/lex.h:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
strings/Makefile.am:
  Auto merged
support-files/mysql.server.sh:
  Auto merged
include/my_base.h:
  merge with 3.23.52 (use local file)
include/sslopt-usage.h:
  merge with 3.23.52 (use local file)
myisam/mi_search.c:
  merge with 3.23.52 (use local file)
myisam/mi_write.c:
  merge with 3.23.52 (use local file)
mysql-test/r/group_by.result:
  merge with 3.23.52
  (Need to be fixed before push)
mysys/my_pthread.c:
  merge with 3.23.52 (use local file)
sql/gen_lex_hash.cc:
  merge with 3.23.52 (use local file)
sql/ha_innodb.cc:
  Total hand-merge with 3.23.52
sql/sql_yacc.yy:
  merge with 3.23.52 (use local file)
support-files/mysql.spec.sh:
  merge with 3.23.52 (use local file)
2002-08-08 15:24:47 +03:00
unknown
f01f49916b Lots of code fixes to the replication code (especially the binary logging and index log file handling)
Fixed bugs in my last changeset that made MySQL hard to compile.
Added mutex around some data that could cause table cache corruptions when using OPTIMIZE TABLE / REPAIR TABLE or automatic repair of MyISAM tables.
Added mutex around some data in the slave start/stop code that could cause THD linked list corruptions
Extended my_chsize() to allow one to specify a filler character.
Extend vio_blocking to return the old state (This made some usage of this function much simpler)
Added testing for some functions that they caller have got the required mutexes before calling the function.
Use setrlimit() to ensure that we can write core file if one specifies --core-file.
Added --slave-compressed-protocol
Made 2 the minimum length for ft_min_word_len
Added variables foreign_key_checks & unique_checks.
Less logging from replication code (if not started with --log-warnings)
Changed that SHOW INNODB STATUS requre the SUPER privilege
More DBUG statements and a lot of new code comments


BitKeeper/deleted/.del-rpl_compat.result~c950bc346b12c61a:
  Delete: mysql-test/r/rpl_compat.result
BitKeeper/deleted/.del-rpl_compat.test~5f6ba955e02aa95f:
  Delete: mysql-test/t/rpl_compat.test
Docs/manual.texi:
  Updated manual with fixes in this changeset
client/mysqltest.c:
  Indentation cleanup
  Better error messages for some error conditions.
include/my_pthread.h:
  Added 'safe_mutex_assert_owner()' to check that the thread really owns the mutex.
include/my_sys.h:
  Extended my_chsize() to allow one to specify a filler character.
  (For MySQL index logs)
include/raid.h:
  New my_chsize()
include/violite.h:
  Extend vio_blocking to return the old state
innobase/include/dyn0dyn.h:
  Merge with 3.23 (AIX DYN_ARRAY_DATA_SIZE)
innobase/include/dyn0dyn.ic:
  Merge with 3.23
isam/create.c:
  Fix for new my_chsize()
isam/isamchk.c:
  Fix for new my_chsize()
isam/pack_isam.c:
  Fix for new my_chsize()
libmysql/manager.c:
  Fix for new vio_blocking()
libmysqld/lib_sql.cc:
  Fix for new open_log()
myisam/mi_cache.c:
  Fix typo from previous checking
myisam/mi_check.c:
  Fix for new my_chsize()
myisam/mi_create.c:
  Fix for new my_chsize()
myisam/mi_delete_all.c:
  Fix for new my_chsize()
myisam/myisampack.c:
  Fix for new my_chsize()
mysql-test/include/master-slave.inc:
  Better initialization for replication tests
mysql-test/mysql-test-run.sh:
  Added option --log-warnings
mysql-test/r/insert.result:
  More tests if INSERT ...(DEFAULT)
mysql-test/r/rpl000001.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000002.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000003.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000004.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000005.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000006.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000007.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000008.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000009.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000010.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000011.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000012.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000013.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl000014.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_alter.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_empty_master_crash.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_get_lock.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_log.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_magic.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_mystery22.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_skip_error.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/r/rpl_sporadic_master.result:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/insert.test:
  More tests if INSERT ...(DEFAULT)
mysql-test/t/rpl000001.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000002.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000003.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000004.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000005.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000006.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000007.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000009.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000011.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000013.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl000014.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_alter.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_empty_master_crash.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_get_lock.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_magic.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_mystery22.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_skip_error.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysql-test/t/rpl_sporadic_master.test:
  Clean up tests for new master-slave.inc
  Remove 'use database'
mysys/mf_iocache.c:
  More debug info
  Force seek after reinit_io_cache()
mysys/mf_iocache2.c:
  Added my_b_filelength()
mysys/my_chsize.c:
  Extended my_chsize() to allow one to specify a filler character.
  (For MySQL index logs)
mysys/raid.cc:
  Extended my_chsize() to allow one to specify a filler character.
  (For MySQL index logs)
sql/field.h:
  Fix for INSERT ... (DEFAULT)
sql/ha_berkeley.h:
  Fix for dynamic variables
sql/ha_innodb.cc:
  Change sprintf() to my_sprintf() to make code portable.
  Fix after sync with 3.23
  (We still need to fix the storage of the replication position in innodb)
sql/ha_innodb.h:
  Fix for dynamic variables
sql/handler.cc:
  Remove writting of COMMIT to the binary log.
  (Now done in MYSQL_LOG::write())
sql/item_func.cc:
  Query_log_event() now always takes query length.
sql/item_func.h:
  Indentation cleanup
sql/item_strfunc.h:
  Indentation cleanup
sql/item_timefunc.h:
  Indentation cleanup
sql/lock.cc:
  Check that we own critical mutexes.
sql/log.cc:
  Big code cleanup / rewrite / optimize.
  - The index log file has its own IO_CACHE object.
  - Many functions totally rewritten to make them smaller and faster.
  - New handling of index log files
  - Lots of new comments
sql/log_event.cc:
  Code cleanup
  New comments
sql/log_event.h:
  Query_log_event() now always takes query length.
sql/mini_client.cc:
  Better error messages on reconnect.
  Fixed wrong variable usage from last commit.
sql/mysql_priv.h:
  New arguments to open_log()
sql/mysqld.cc:
  Use setrlimit() to ensure that we can write core file if one specifies --core-file
  Added index file name as parameter to openlog().
  Added --slave-compressed-protocol
  Made 2 the minimum length for ft_min_word_len
sql/net_serv.cc:
  Use new vio_blocking()
  (The vio_blocking() change was done to make this code more readable)
sql/repl_failsafe.cc:
  Minor code cleanup
sql/set_var.cc:
  Added variables slave_compressed_protocol, foreign_key_checks & unique_checks.
sql/set_var.h:
  Generalization
sql/slave.cc:
  Code cleanup & rewrite.
  Dont call SELECT VERSION() on check_master_version()
  New init_slave() code.
  Ensure that all threads create a THD early.
  Add locks around manipulation of critical structures
  Don't retry a command more than master_retry_count times.
  Write less warnings to the log file (if not started with --log-warnings)
  Faster flush_relay_log_info()
sql/slave.h:
  More comments
  Added new arguments to some functions.
sql/sql_acl.cc:
  More DBUG info
  New parameter to Query_log_event()
sql/sql_base.cc:
  Added some mutex checking.
sql/sql_cache.cc:
  Less not critical debug info
sql/sql_class.h:
  Fix for new log handling.
sql/sql_db.cc:
  Added mutex around remove_db_from_cache()
sql/sql_delete.cc:
  Added missing parameters to changed functions
sql/sql_insert.cc:
  Added missing parameters to changed functions
sql/sql_parse.cc:
  Do an 'end_active_trans()' before 'load_master_data'
  Changed that SHOW INNODB STATUS requre the SUPER privilege
  Added new function parameters to new functions
sql/sql_rename.cc:
  Added missing parameters to changed functions
sql/sql_repl.cc:
  Code cleanups / new comments
  Fix for new find_first_log() calling standard.
  More DBUG statements.
  Show binlogs updated to use new IO_CACHE:d index log file.
sql/sql_repl.h:
  New function arguments
sql/sql_select.cc:
  Indentation changes
sql/sql_table.cc:
  Added missing parameters to changed functions
  Added checking of mutex
  Added mutex around critical regions.
sql/sql_test.cc:
  Don't use THR_ALARM if the configuration doesn't support it.
sql/sql_update.cc:
  Added missing parameters to changed functions
sql/table.cc:
  Added missing parameters to changed functions
vio/vio.c:
  Extend vio_blocking to return the old state
vio/viosocket.c:
  Extend vio_blocking to return the old state
vio/viossl.c:
  Extend vio_blocking to return the old state
2002-08-08 03:12:02 +03:00