1
0
mirror of https://github.com/MariaDB/server.git synced 2025-04-21 20:06:07 +03:00

1085 Commits

Author SHA1 Message Date
monty@mashka.mysql.fi
d69250a969 Fixes and code cleanups after merge with 4.0.3
Warning handling and initial prepared statement handling (last not complete yet)
Changed a lot of functions that returned 0/1 to my_bool type.
GRANT handling now uses read/write locks instead of mutex
Change basic net functions to use THD instead of NET
(needed for 4.1 protocol)
Use my_sprintf instead of sprintf() + strlen()
Added alloc_query() to be able to chare query initialization code with
prepared statements.
Cleanup handling of SHOW COUNT(*) WARNINGS and SELECT LAST_INSERT_ID()

Note that the following test fails (will be fixed ASAP):
sub_select, union, rpl_rotate_logs and rpl_mystery22
2002-10-02 13:33:08 +03:00
unknown
8f232cb75f Portability fixes.
Improve mysql-test to be more robust.
Fix that GRANT doesn't delete SSL options
Change innobase_flush_log_at_trx_commit to uint.
Don't rotate logs if we read a rotate log entry from the master.


Docs/manual.texi:
  Changelog
client/mysqlbinlog.cc:
  Handle empty binlogfiles gracefully
client/mysqltest.c:
  Do a sleep after 'sync_with_master'
  Cleaned up sleep() handling.
  Free all memory on exit
configure.in:
  Fix for Mac OS 10.2
include/my_sys.h:
  Added my_strdup_with_length()
innobase/btr/btr0cur.c:
  Fixed wrong printf()
libmysql/libmysql.c:
  Added DBUG_PRINT statements.
  Assume that mysql_...send() functions has correct query length.
mysql-test/mysql-test-run.sh:
  Properly remove log files before starting new tests.
mysql-test/r/grant.result:
  Update for new test results
mysql-test/r/innodb.result:
  Update for new test results
mysql-test/r/myisam.result:
  Update for new test results
mysql-test/r/rpl_log.result:
  Update for new test results
mysql-test/r/rpl_rotate_logs.result:
  Update for new test results
mysql-test/r/variables.result:
  Update for new test results
mysql-test/t/grant.test:
  Test that GRANT doesn't delete SSL options
mysql-test/t/myisam.test:
  Test long key usage
mysql-test/t/rpl_log.test:
  Disable 'show new master'
mysql-test/t/rpl_mystery22.test:
  Longer sleep for more safety.
mysql-test/t/rpl_rotate_logs.test:
  More comments
mysys/my_malloc.c:
  Added my_strdup_with_length()
mysys/safemalloc.c:
  Added my_strdup_with_length()
mysys/thr_alarm.c:
  Fix of alarms for windows.
sql/ha_innodb.cc:
  Change innobase_flush_log_at_trx_commit to uint
mysql-test/r/rpl_redirect.result:
  Updated test results
mysql-test/t/rpl_redirect.test:
  Added more tests to improve code coverage.
sql/ha_innodb.h:
  Change innobase_flush_log_at_trx_commit to uint
sql/item_func.cc:
  Return GLOBAL and SESSION as part of column names
sql/log.cc:
  Only write STOP events when server goes down.
sql/log_event.cc:
  Don't rotate logs if we read a rotate log entry from the master.
sql/log_event.h:
  Change ident_len to uint (more efficient)
sql/mysqld.cc:
  Change innobase_flush_log_at_trx_commit to uint
sql/net_serv.cc:
  More debug output
sql/repl_failsafe.cc:
  More DEBUG
  Search until we find next position in binary log (and not only =)
sql/slave.cc:
  More DBUG & comments
  Don't rotate the binary log on master flush logs
sql/slave.h:
  indentation change
sql/sql_acl.cc:
  Test that GRANT doesn't delete SSL options
sql/sql_parse.cc:
  Disable show_new_master.
sql/sql_repl.cc:
  Chamger show_binlog_events() to use my_error()
sql/sql_table.cc:
  Fixed check for too long keys in MyISAM
sql/sql_udf.cc:
  Fix udf handling
2002-09-11 06:40:08 +03:00
monty@mashka.mysql.fi
f3a186c905 Portability fixes.
Improve mysql-test to be more robust.
Fix that GRANT doesn't delete SSL options
Change innobase_flush_log_at_trx_commit to uint.
Don't rotate logs if we read a rotate log entry from the master.
2002-09-11 06:40: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
monty@hundin.mysql.fi
f36f9d00ff 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
2002-08-22 16:50:58 +03:00
unknown
87f9ad3724 Use our version of RWLOCKS on UNIXWARE 7
More DBUG info for replication
Better error messages from replication
Fixed bug in replication code when connecting to 'localhost' (time was not released properly)
Block ALARM signal on Linux for signal handler thread (Fixes problem with running mysqld with --debug)
Removed warning when setting an AUTO_INCREMENT field to NULL


Build-tools/Do-compile:
  Always run test with --warnings during build
Docs/manual.texi:
  Changelog
configure.in:
  Use our version of RWLOCKS on UNIXWARE 7
include/my_pthread.h:
  Use our version of RWLOCKS on UNIXWARE 7
include/mysql_version.h.in:
  Fixed warning when compiling embedded server
include/mysqld_error.h:
  New error messages
libmysql/libmysql.c:
  Give connect error message on reconnect if it fails.
  Fixed possible buffer overflow in expand_error()
  Added error messages for some error conditions.
mysql-test/mysql-test-run.sh:
  Portability fixes:
  - Search after 'time' in path.
  - Search after mysqld in libexec
  - Remove end / when doing rm -r (fix for BSD)
  Clean up skip_test handling.
mysql-test/r/rpl_empty_master_crash.result:
  New results
mysql-test/t/rpl_empty_master_crash.test:
  Extended test
mysys/mf_iocache.c:
  Remember file position on failed read.
mysys/mf_iocache2.c:
  Fixed bug in filelength() call.
mysys/thr_alarm.c:
  Made alarm handling more threadsafe when use with DBUG.
mysys/thr_mutex.c:
  More debug info
sql/log_event.cc:
  More DBUG_PRINT statements.
sql/mini_client.cc:
  Better error reporting on failures.
  Return connect error on reconnect failure (instead of SERVER_GONE_ERROR)
  Fixed critical bug in alarm handling on connect (could leave an alarm event on indefinitely)
sql/mysql_priv.h:
  Fixed arguments to mysql_binlog_send()
sql/mysqld.cc:
  Block ALARM signal on Linux for signal handler thread (Fixes problem with running mysqld with --debug)
sql/net_pkg.cc:
  Removed dead code
sql/net_serv.cc:
  Ensure that last_errno is set in net_real_write()
sql/repl_failsafe.cc:
  Code cleanup.
  Better error handling.
sql/share/czech/errmsg.txt:
  New error messages.
sql/share/danish/errmsg.txt:
  New error messages.
sql/share/dutch/errmsg.txt:
  New error messages.
sql/share/english/errmsg.txt:
  New error messages.
sql/share/estonian/errmsg.txt:
  New error messages.
sql/share/french/errmsg.txt:
  New error messages.
sql/share/german/errmsg.txt:
  New error messages.
sql/share/greek/errmsg.txt:
  New error messages.
sql/share/hungarian/errmsg.txt:
  New error messages.
sql/share/italian/errmsg.txt:
  New error messages.
sql/share/japanese/errmsg.txt:
  New error messages.
sql/share/korean/errmsg.txt:
  New error messages.
sql/share/norwegian-ny/errmsg.txt:
  New error messages.
sql/share/norwegian/errmsg.txt:
  New error messages.
sql/share/polish/errmsg.txt:
  New error messages.
sql/share/portuguese/errmsg.txt:
  New error messages.
mysql-test/r/rpl_log_pos.result:
  Updated results
mysql-test/t/rpl_log_pos.test:
  Added 'sleep' commands to make tests repeatable.
sql/share/romanian/errmsg.txt:
  New error messages.
sql/share/russian/errmsg.txt:
  New error messages.
sql/share/slovak/errmsg.txt:
  New error messages.
sql/share/spanish/errmsg.txt:
  New error messages.
sql/share/swedish/errmsg.txt:
  New error messages.
sql/share/ukrainian/errmsg.txt:
  New error messages.
sql/slave.cc:
  Code optimization and cleanup.
  More DBUG statements.
  Better cleanup if start slave fails.
  Better error messages from 'fetch_master_table'
  Thread safer handling of 'wait_for_pos'
sql/slave.h:
  Better handling of wait_for_pos
sql/sql_load.cc:
  Removed warning when setting an AUTO_INCREMENT field to NULL
sql/sql_parse.cc:
  Fixed calling of function that has changed.
sql/sql_repl.cc:
  More DBUG statements
  Give a proper error number from mysql_binlog_send() so that we know when we have to abort slaves.
2002-08-21 22:04:22 +03:00
monty@hundin.mysql.fi
03b0179af9 Use our version of RWLOCKS on UNIXWARE 7
More DBUG info for replication
Better error messages from replication
Fixed bug in replication code when connecting to 'localhost' (time was not released properly)
Block ALARM signal on Linux for signal handler thread (Fixes problem with running mysqld with --debug)
Removed warning when setting an AUTO_INCREMENT field to NULL
2002-08-21 22:04:22 +03:00
unknown
457172d992 Fixed timing problem with rpl000001 replication test.
Fixed configure problems with HPUX and openbsd
SHOW SLAVE STATUS returns empty set if slave is not initialized
SHOW MASTER STATUS returns empty set if binary logging is not enabled.
Fixed shutdown problem on Solaris.


BitKeeper/deleted/.del-set_var.cc~5374527de1955359:
  Delete: libmysqld/set_var.cc
BitKeeper/etc/ignore:
  added libmysqld/set_var.cc
Build-tools/Do-compile:
  Remove warnings from touch during compilation
Docs/manual.texi:
  Changelog
client/mysqltest.c:
  Added real_sleep command
configure.in:
  Fixed type for HPUX10
innobase/configure.in:
  Fixed type for openbsd
libmysql/libmysql.c:
  Fix for new SHOW SLAVE STATUS
myisam/mi_update.c:
  Update key file if using external locking
mysql-test/mysql-test-run.sh:
  Safety fix
mysql-test/r/rpl000015.result:
  Update for new SHOW SLAVE STATUS
mysql-test/r/rpl_empty_master_crash.result:
  Update for new SHOW SLAVE STATUS
mysql-test/t/rpl000001.test:
  sleep -> real_sleep to avoid timing problem
sql/mysqld.cc:
  Fixed bug with SIGTERM on Solaris
sql/slave.cc:
  SHOW SLAVE STATUS returns empty sets if slave is not initialized.
sql/sql_repl.cc:
  SHOW MASTER STAT returns empty set if no binary logging.
2002-08-18 16:04:26 +03:00
monty@hundin.mysql.fi
a5edb20042 Fixed timing problem with rpl000001 replication test.
Fixed configure problems with HPUX and openbsd
SHOW SLAVE STATUS returns empty set if slave is not initialized
SHOW MASTER STATUS returns empty set if binary logging is not enabled.
Fixed shutdown problem on Solaris.
2002-08-18 16:04:26 +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
monty@mashka.mysql.fi
2c4fa340cc 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
2002-08-08 03:12:02 +03:00
unknown
a8caad316a New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups


BitKeeper/deleted/.del-net.c~ef21d6402bb882f9:
  Delete: libmysql/net.c
BitKeeper/etc/ignore:
  added libmysql/net.c
Docs/manual.texi:
  New SET syntax & system variables.
client/client_priv.h:
  moved order of include files
client/mysql.cc:
  Removed compiler warning
client/mysqladmin.c:
  Use new SHOW GLOBAL syntax (if server supports it)
configure.in:
  version change
include/Makefile.am:
  indentation cleanup
include/my_getopt.h:
  Made some helper functions global
include/my_sys.h:
  Removed not used code
include/myisam.h:
  Added extra argument to ..._extra()
include/myisammrg.h:
  Added extra argument to ..._extra()
include/mysql_com.h:
  changed NET to be able to support changeable system variables
include/mysql_embed.h:
  Added MYSQL_SERVER_SUFFIX
include/mysql_version.h.in:
  Added check of multiple including (needed for embedded library)
include/mysqld_error.h:
  New error messages
innobase/dict/dict0dict.c:
  Remove compiler warnings
innobase/include/ut0mem.h:
  Remove compiler warnings
innobase/include/ut0mem.ic:
  Remove compiler warnings
isam/isamchk.c:
  new init_key_cache() arguments
isam/isamlog.c:
  new init_key_cache() arguments
isam/test2.c:
  new init_key_cache() arguments
isam/test3.c:
  new init_key_cache() arguments
libmysql/Makefile.am:
  Removed net.c (Automaticly make it from net_serv.cc)
libmysql/Makefile.shared:
  Removed net.c (Automaticly make it from net_serv.cc)
libmysql/libmysql.c:
  Changeable system variables
libmysqld/Makefile.am:
  Added set_var.cc file
libmysqld/embedded_priv.h:
  Changed order of include fiels
libmysqld/lib_sql.cc:
  merge with mysqld.cc (for changeable variables)
libmysqld/libmysqld.c:
  New changeable system variables
myisam/mi_check.c:
  Added extra argument to ..._extra()
myisam/mi_extra.c:
  Added extra argument to ..._extra()
myisam/mi_open.c:
  Removed not used variable
myisam/mi_test1.c:
  Changed call to init_key_cache
myisam/mi_test2.c:
  Added extra argument to ..._extra()
myisam/mi_test3.c:
  Added extra argument to ..._extra()
myisam/mi_write.c:
  Add cache size argument to bulk-insert-init
myisam/myisamchk.c:
  Use new key cache
myisam/myisamdef.h:
  new mi_init_bulk_insert() arguments
myisam/myisamlog.c:
  Added extra argument to ..._extra()
myisam/myisampack.c:
  Added extra argument to ..._extra()
myisammrg/myrg_extra.c:
  Added extra argument to ..._extra()
myisammrg/myrg_rrnd.c:
  Added extra argument to ..._extra()
mysql-test/r/insert_select.result:
  New changeable system variables
mysql-test/r/key.result:
  Test of bug in auto_increment
mysql-test/r/query_cache.result:
  New changeable system variables
mysql-test/r/rpl000001.result:
  New changeable system variables
mysql-test/r/rpl000016.result:
  New changeable system variables
mysql-test/r/union.result:
  New changeable system variables
mysql-test/r/user_var.result:
  New changeable system variables
mysql-test/r/variables.result:
  New changeable system variables
mysql-test/t/key.test:
  Test of bug in auto_increment
mysql-test/t/query_cache.test:
  New changeable system variables
mysql-test/t/rpl000001.test:
  New changeable system variables
mysql-test/t/rpl000009.test:
  New changeable system variables
mysql-test/t/rpl000016.test:
  New changeable system variables
mysql-test/t/rpl_compat.test:
  New changeable system variables
mysql-test/t/union.test:
  New changeable system variables
mysql-test/t/user_var.test:
  New changeable system variables
mysql-test/t/variables.test:
  New changeable system variables
mysys/default.c:
  Bigger default memory allocation
mysys/mf_iocache.c:
  Removed compiler warning
mysys/mf_keycache.c:
  Made key cache resizable on the fly
  Removed not needed extra argument to init_key_cache()
mysys/my_getopt.c:
  Made some helper functions global
sql/Makefile.am:
  Aded set_var.cc
sql/convert.cc:
  Comment cleanup
sql/field.cc:
  new changeable system variables
sql/filesort.cc:
  new changeable system variables
sql/ha_berkeley.cc:
  AUTO_COMMIT -> AUTOCOMMIT
sql/ha_innodb.cc:
  new changeable system variables
sql/ha_myisam.cc:
  Added extra argument to ..._extra()
sql/ha_myisam.h:
  Added extra argument to ..._extra()
sql/ha_myisammrg.cc:
  Added extra argument to ..._extra()
sql/ha_myisammrg.h:
  Added extra argument to ..._extra()
sql/handler.cc:
  Added extra argument to ..._extra()
  Added resize of key cache
  Change ha_table_typelib for use with new system variables
sql/handler.h:
  Added extra argument to ..._extra()
sql/item.cc:
  new changeable system variables
sql/item.h:
  Added better support of Item_uint
sql/item_func.cc:
  Added support for SET @@[global | session] system_variable
sql/item_strfunc.cc:
  new changeable system variables
sql/key.cc:
  Fixed bug in auto_increment on second part keys
sql/lex.h:
  Removed not needed keywords
sql/log.cc:
  new changeable system variables
sql/log_event.cc:
  new changeable system variables
sql/log_event.h:
  Removed not needed var reference
sql/mini_client.cc:
  new changeable system variables
  code cleanup
sql/mini_client.h:
  Indentation cleanup
sql/mysql_priv.h:
  Changed order of include files & variables to make file more readable
sql/mysqld.cc:
  Changed order of variables to make file more readable.
  Support for changeable variables
  Rename of system variables
  Moved init_vars to set_var.cc
  Changed output of --help
sql/net_pkg.cc:
  Added my_net_local_init() to make it possible to set different defaults for network connection depending if you are a client, embedded library or server.
sql/net_serv.cc:
  new changeable system variables
  To support this, some global variables had to be move to the NET structure.
sql/records.cc:
  new changeable system variables
  use extra_opt()
sql/repl_failsafe.cc:
  new changeable system variables
  minior code cleanups
sql/repl_failsafe.h:
  removed not needed external var reference
sql/share/czech/errmsg.txt:
  new changeable system variables
sql/share/danish/errmsg.txt:
  new changeable system variables
sql/share/dutch/errmsg.txt:
  new changeable system variables
sql/share/english/errmsg.txt:
  new changeable system variables
sql/share/estonian/errmsg.txt:
  new changeable system variables
sql/share/french/errmsg.txt:
  new changeable system variables
sql/share/german/errmsg.txt:
  new changeable system variables
sql/share/greek/errmsg.txt:
  new changeable system variables
sql/share/hungarian/errmsg.txt:
  new changeable system variables
sql/share/italian/errmsg.txt:
  new changeable system variables
sql/share/japanese/errmsg.txt:
  new changeable system variables
sql/share/korean/errmsg.txt:
  new changeable system variables
sql/share/norwegian-ny/errmsg.txt:
  new changeable system variables
sql/share/norwegian/errmsg.txt:
  new changeable system variables
sql/share/polish/errmsg.txt:
  new changeable system variables
sql/share/portuguese/errmsg.txt:
  new changeable system variables
sql/share/romanian/errmsg.txt:
  new changeable system variables
sql/share/russian/errmsg.txt:
  new changeable system variables
sql/share/slovak/errmsg.txt:
  new changeable system variables
sql/share/spanish/errmsg.txt:
  new changeable system variables
sql/share/swedish/errmsg.txt:
  new changeable system variables
sql/share/ukrainian/errmsg.txt:
  new changeable system variables
sql/slave.cc:
  new changeable system variables
  Added some suppression of error messages
  Initialize current_thd for all slave threads.
sql/sql_acl.cc:
  Added checking of arguments for SET PASSWORD (for new SET defintion)
sql/sql_acl.h:
  new prototypes
sql/sql_base.cc:
  new changeable system variables
sql/sql_cache.cc:
  new changeable system variables
sql/sql_cache.h:
  Renamed some arguments to make code more readable
sql/sql_class.cc:
  new changeable system variables
sql/sql_class.h:
  New changeable system variables
  Code cleanup
sql/sql_db.cc:
  Fixed bug in DROP DATABASE
sql/sql_delete.cc:
  Usage of wrong define in test (possible speed problem)
sql/sql_insert.cc:
  use extra_opt()
  Code cleanup
sql/sql_lex.cc:
  Added support for SET @@[global | session] system_variable
sql/sql_lex.h:
  Added support for SET @@[global | session] system_variable
sql/sql_load.cc:
  Cleanup for embedded library
  Use extra_opt()
sql/sql_parse.cc:
  Cleanup for embedded library
  New changeable system variables
sql/sql_repl.cc:
  new changeable system variables
sql/sql_repl.h:
  Fixed variable definitions
sql/sql_select.cc:
  new changeable system variables
sql/sql_show.cc:
  New changeable system variables
sql/sql_table.cc:
  Fixed bug in DROP DATABASE
sql/sql_union.cc:
  New changeable system variables
sql/sql_update.cc:
  Usage of wrong define in test (possible speed problem)
sql/sql_yacc.yy:
  New changeable system variables
sql/structs.h:
  Added typedef for SHOW_VAR
sql/table.cc:
  Fixed bug in auto_increment on second part keys
sql/uniques.cc:
  Comment fix
sql/unireg.h:
  A
2002-07-23 18:31:22 +03:00
monty@mashka.mysql.fi
dddc20d9d1 New SET syntax & system variables.
Made a some new buffers thread specific and changeable.
Resize of key_buffer.
AUTO_COMMIT -> AUTOCOMMIT
Fixed mutex bug in DROP DATABASE
Fixed bug when using auto_increment as second part of a key where first part could include NULL.
Split handler->extra() to extra() and extra_opt() to be able to support thread specific buffers.
Don't write message to error log when slave reconnects becasue of timeout.
Fixed possible update problem when using DELETE/UPDATE on small tables
(In some cases we used index even if table scanning would be better)
A lot of minior code cleanups
2002-07-23 18:31:22 +03:00
unknown
0724f98e67 Added the following new privleges:
SHOW DATABASES
CREATE TEMPORARY TABLE
LOCK TABLES
REPLICATION SLAVE & REPLICATION CLIENT
SUPER
EXECUTE

All scripts & documentation is updated for this change.
Added better error messages for global privileges 


BitKeeper/deleted/.del-mysql_new_fix_privilege_tables.sh~b1664b401375eece:
  Delete: scripts/mysql_new_fix_privilege_tables.sh
Docs/manual.texi:
  Updated manual for privilege changes.
include/mysqld_error.h:
  new error messages
mysql-test/install_test_db.sh:
  Updated to use new privileges
mysql-test/r/grant_cache.result:
  Updated to use new privileges
mysql-test/r/rpl000017.result:
  Updated to use new privileges
mysql-test/t/rpl000017.test:
  Updated to use new privileges
mysys/safemalloc.c:
  Cleanup
scripts/mysql_fix_privilege_tables.sh:
  Updated to use new privileges
scripts/mysql_install_db.sh:
  Updated to use new privileges
sql/field.h:
  Cleanup
sql/item_strfunc.cc:
  Updated to use new privileges
sql/lex.h:
  Updated to use new privileges
sql/log.cc:
  Updated to use new privileges
sql/mysql_priv.h:
  Updated to use new privileges
sql/mysqld.cc:
  Updated to use new privileges
sql/repl_failsafe.cc:
  Updated to use new privileges
sql/share/czech/errmsg.txt:
  new error messages
sql/share/danish/errmsg.txt:
  new error messages
sql/share/dutch/errmsg.txt:
  new error messages
sql/share/english/errmsg.txt:
  new error messages
sql/share/estonian/errmsg.txt:
  new error messages
sql/share/french/errmsg.txt:
  new error messages
sql/share/german/errmsg.txt:
  new error messages
sql/share/greek/errmsg.txt:
  new error messages
sql/share/hungarian/errmsg.txt:
  new error messages
sql/share/italian/errmsg.txt:
  new error messages
sql/share/japanese/errmsg.txt:
  new error messages
sql/share/korean/errmsg.txt:
  new error messages
sql/share/norwegian-ny/errmsg.txt:
  new error messages
sql/share/norwegian/errmsg.txt:
  new error messages
sql/share/polish/errmsg.txt:
  new error messages
sql/share/portuguese/errmsg.txt:
  new error messages
sql/share/romanian/errmsg.txt:
  new error messages
sql/share/russian/errmsg.txt:
  new error messages
sql/share/slovak/errmsg.txt:
  new error messages
sql/share/spanish/errmsg.txt:
  new error messages
sql/share/swedish/errmsg.txt:
  new error messages
sql/share/ukrainian/errmsg.txt:
  new error messages
sql/slave.cc:
  Portability cleanup
sql/sql_acl.cc:
  Updated to use new privileges
sql/sql_acl.h:
  Updated to use new privileges
sql/sql_base.cc:
  Remove not used include file
sql/sql_class.cc:
  Comment cleanup
sql/sql_class.h:
  Updated to use new privileges
  Comment cleanups
sql/sql_insert.cc:
  Updated to use new privileges
sql/sql_lex.h:
  Indentation cleanup
sql/sql_parse.cc:
  Updated to use new privileges
sql/sql_repl.cc:
  Updated to use new privileges
  Comment cleanup
sql/sql_show.cc:
  Updated to use new privileges
sql/sql_yacc.yy:
  Updated to use new privileges
  Sorted some tockens for easer merge to 4.1 in the future.
sql/table.h:
  Updated to use new privileges
tests/grant.pl:
  Updated to use new privileges
tests/grant.res:
  Updated to use new privileges
2002-06-12 15:04:18 +03:00
monty@mashka.mysql.fi
b8421d34ec Added the following new privleges:
SHOW DATABASES
CREATE TEMPORARY TABLE
LOCK TABLES
REPLICATION SLAVE & REPLICATION CLIENT
SUPER
EXECUTE

All scripts & documentation is updated for this change.
Added better error messages for global privileges
2002-06-12 15:04:18 +03:00
unknown
70aa7424c4 Big code cleanup/review before 4.0.2 release.
(All commit emails since 4.0.1 checked)
This had to be done now, before the 4.1 tree changes to much, to make it easy to propagate bug fixes to the 4.1 tree.


BUILD/SETUP.sh:
  Added -DPEDANTIC_SAFEMALLOC as standard debug option
Docs/manual.texi:
  Changes for new version.
client/mysql.cc:
  Fixed default value for rehash
  cleanup
client/mysqladmin.c:
  Cleanup
client/mysqlbinlog.cc:
  cleanup
client/mysqldump.c:
  Cleanup
client/mysqlmanager-pwgen.c:
  Cleanup
client/mysqlmanagerc.c:
  Cleanup
client/mysqltest.c:
  Cleanup
dbug/dbug.c:
  Cleanup
extra/resolve_stack_dump.c:
  Cleanup & Simple optimizations
include/ft_global.h:
  Cleanup
include/my_alloc.h:
  Cleanup
include/my_global.h:
  Cleanup
include/my_sys.h:
  Cleanup
include/myisam.h:
  Cleanup
libmysql/libmysql.c:
  Cleanup
libmysql/manager.c:
  Cleanup
myisam/ft_boolean_search.c:
  Cleanup
myisam/ft_dump.c:
  Change strcpy -> strmov
myisam/ft_eval.c:
  Cleanup
myisam/ft_nlq_search.c:
  Cleanup
myisam/ft_test1.c:
  strncpy -> strnmov
myisam/ft_update.c:
  Cleanup
myisam/mi_static.c:
  Cleanup
myisam/mi_test2.c:
  Cleanup
myisam/mi_write.c:
  Cleanup
mysys/mf_fn_ext.c:
  Cleanup
mysys/mf_iocache.c:
  Cleanup
mysys/mf_iocache2.c:
  Cleanup
mysys/my_getopt.c:
  Cleanup
mysys/my_read.c:
  Cleanup
mysys/my_thr_init.c:
  Cleanup
mysys/queues.c:
  Cleanup
mysys/safemalloc.c:
  Cleanup
sql/field.cc:
  Indentation cleanups
sql/ha_berkeley.cc:
  Indentation cleanups
sql/ha_myisam.cc:
  Cleanup
sql/item.h:
  Indentation cleanups
sql/item_cmpfunc.cc:
  Indentation cleanups
sql/item_create.cc:
  cleanup
sql/item_func.cc:
  Cleanup
sql/item_func.h:
  Indentation cleanups
sql/item_strfunc.cc:
  Indentation cleanups
sql/item_sum.cc:
  Indentation cleanups
sql/item_timefunc.cc:
  Indentation cleanups
sql/lock.cc:
  Indentation cleanups
sql/log.cc:
  Cleanup
  strnmov -> strmake
sql/log_event.cc:
  Cleanup + optimizations
  Fixed memory leak
  Added missing pthread_mutex_unlock()  (On error condition)
sql/log_event.h:
  Indentation and comment cleanup
  Merged #ifdef's into common blocks for better readability
sql/mini_client.cc:
  Indentation cleanup
sql/mysql_priv.h:
  Cleanup
  Changed int function to bool
sql/mysqld.cc:
  Indentation and comment cleanup
sql/net_pkg.cc:
  Indentation cleanup
sql/net_serv.cc:
  Changed int function -> bool
sql/nt_servc.cc:
  Cleanup
sql/opt_range.cc:
  Indentation cleanup
sql/repl_failsafe.cc:
  Cleanup + simple optimization
  strnmov -> strmake
sql/slave.cc:
  strnmov -> strmake
  Cleanups
sql/slave.h:
  Cleanup
sql/sql_acl.cc:
  Indentation and DBUG_PRINT cleanup
  Changed WITH MAX... to not use =
sql/sql_base.cc:
  Indentation cleanup
sql/sql_cache.cc:
  Indentation cleanup
sql/sql_class.cc:
  Indentation cleanup
sql/sql_class.h:
  Renamed some struct slots
sql/sql_delete.cc:
  Indentation cleanup
sql/sql_handler.cc:
  Indentation cleanup
sql/sql_insert.cc:
  Use new slot names.
sql/sql_lex.cc:
  Indentation cleanup
sql/sql_lex.h:
  Indentation cleanup
sql/sql_load.cc:
  Indentation cleanup
sql/sql_parse.cc:
  Indentation cleanup
  Removed not used check from LOCK TABLES
sql/sql_repl.cc:
  strnmov -> strmake
sql/sql_repl.h:
  Removed test if file is included (We want to know if it's included twice to avoid this)
sql/sql_select.cc:
  Indentation cleanup
sql/sql_show.cc:
  Indentation cleanup
sql/sql_string.cc:
  Indentation cleanup
sql/sql_table.cc:
  Indentation cleanup
sql/sql_union.cc:
  Use renamed struct slot
sql/sql_update.cc:
  Indentation cleanup
sql/sql_yacc.yy:
  Removed = after GRANT ... MAX_  to make the syntax uniform
sql/table.cc:
  Indentation cleanup
sql/table.h:
  Indentation cleanup
sql/time.cc:
  Indentation cleanup
sql/udf_example.cc:
  Indentation cleanup
sql/unireg.cc:
  strnmov -> strmake
tests/grant.pl:
  Added test for LOCK TABLES
tools/mysqlmanager.c:
  Cleanup
  fopen() -> my_fopen()
vio/viosocket.c:
  DBUG_PRINT cleanups
vio/viosslfactories.c:
  Indentation cleanup
  Checking of results from malloc()
  Fixed possible memory leak
BitKeeper/etc/ignore:
  Added scripts/mysql_secure_installation to the ignore list
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2002-06-11 11:20:31 +03:00
monty@mashka.mysql.fi
2aecdd1a91 Big code cleanup/review before 4.0.2 release.
(All commit emails since 4.0.1 checked)
This had to be done now, before the 4.1 tree changes to much, to make it easy to propagate bug fixes to the 4.1 tree.
2002-06-11 11:20:31 +03:00
unknown
770aa9f2d1 Added a lot of DBUG_xxx statements to be able to find replication bug.
Fixed critical bug on 64 bit systems.
Cleanups


BUILD/compile-solaris-sparc-purify:
  Added --debug option.
sql/log_event.cc:
  Added DBUG_xxx statements.
  Cleanup
sql/opt_range.h:
  Dummy fix to remove warnings in purify
sql/repl_failsafe.cc:
  Cleanup
sql/slave.cc:
  Added DBUG statements to be able to find bugs.
  Optimized code.
  Fixed critical bug on 64 bit systems.
sql/sql_repl.cc:
  Added DBUG_xx statements.
2002-06-08 21:02:01 +03:00
monty@bitch.mysql.fi
9b6df03c14 Added a lot of DBUG_xxx statements to be able to find replication bug.
Fixed critical bug on 64 bit systems.
Cleanups
2002-06-08 21:02:01 +03:00
unknown
03728196ee removed init_count from IO_CACHE.
Added missing mutex_unlock to slave replication code.


include/my_sys.h:
  removed init_count from IO_CACHE.
  General cleanup.
innobase/srv/srv0srv.c:
  Initailize slots to avoid purify warnings.
  Removed some compiler warnings.
mysql-test/mysql-test-run.sh:
  Automatic start of slave under gdb
mysys/mf_iocache.c:
  removed init_count
sql/field.cc:
  Cleanup
sql/log.cc:
  Cleanup
  added open_count variable.
sql/log_event.cc:
  cleanup
  use is_prefix instead of memcmp()
sql/repl_failsafe.cc:
  cleanup
sql/slave.cc:
  cleanup
  use MYSQL_LOG->open_count instead of IO_CACHE->init_count
  Added missing mutex_unlock()
sql/slave.h:
  cleanup
sql/sql_class.h:
  cleanup
  Added open_count to MYSQL_LOGL
sql/sql_parse.cc:
  removed compiler warning
sql/sql_repl.cc:
  added DBUG_xxx
sql/unireg.h:
  Added BIN_LOG_HEADER_SIZE
2002-06-05 23:04:38 +03:00
monty@hundin.mysql.fi
e4130b11c9 removed init_count from IO_CACHE.
Added missing mutex_unlock to slave replication code.
2002-06-05 23:04:38 +03:00
unknown
75d312bc1f Fixed a bug in make test, non-debug version.
sql/slave.cc:
  Released some variables in non-debug version. These are needed
  in mysqld.cc my_getopt struct, which defines some options,
  which are used by mysql_test in a non-debug version.
sql/sql_repl.cc:
  Released some variables in non-debug version. These are needed
  in mysqld.cc my_getopt struct, which defines some options,
  which are used by mysql_test in a non-debug version.
2002-05-29 15:20:36 +03:00
jani@hynda.(none)
d78308449e Fixed a bug in make test, non-debug version. 2002-05-29 15:20:36 +03:00
unknown
d7cfbff5b0 relay_log_space_limit
DBUG_ macro cleanup
buffer boundary cleanup
This changeset, although not fully tested, works for me better than 
anything I've had so far, including what is in the repository. I will 
push it unless something crashes while I am writing this :-)


mysql-test/r/rpl000014.result:
  updated result
mysql-test/r/rpl000015.result:
  updated result
mysql-test/r/rpl000016.result:
  updated result
mysql-test/r/rpl_log.result:
  new result
mysys/mf_iocache.c:
  DBUG_ cleanup
mysys/mf_iocache2.c:
  DBUG_ fix
sql/log.cc:
  added relay_log_space_limit
sql/mysqld.cc:
  relay_log_space_limit
sql/slave.cc:
  relay_log_space_limit
sql/slave.h:
  relay_log_space_limit
sql/sql_class.h:
  relay_log_space_limit
sql/sql_repl.cc:
  fixed buffer overrun bug
2002-04-01 21:46:23 -07:00
sasha@mysql.sashanet.com
14603a3620 relay_log_space_limit
DBUG_ macro cleanup
buffer boundary cleanup
This changeset, although not fully tested, works for me better than 
anything I've had so far, including what is in the repository. I will 
push it unless something crashes while I am writing this :-)
2002-04-01 21:46:23 -07:00
unknown
5449b03bc8 replication updates. This changeset seems to be working fine on test systems.
If no problems are discovered in the next week, this will make the replication
code ready for 4.0.2 release.


dbug/dbug.c:
  cleanup of my previous fix
sql/mysqld.cc:
  fixed a REALLY NASTY BUG - slave threads were being launched before 
  initialization of global thread keys. Thus if the slave thread was slow
  to start everything worked fine, but if it started quickly, we would get
  into trouble using the unitinialized keys
sql/net_pkg.cc:
  make net_printf() work with 0 error code taking the third argument as 
  format string in that case
sql/slave.cc:
  misc fix-ups and debugging instrumentations
sql/slave.h:
  added skip_log_purge member
sql/sql_class.cc:
  debugging instrumentation to track down random memory corruption
sql/sql_class.h:
  added debugging sentry to THD to track down memory corruption
sql/sql_repl.cc:
  fixed bugs in CHANGE MASTER
2002-03-30 12:36:05 -07:00
sasha@mysql.sashanet.com
be388422eb replication updates. This changeset seems to be working fine on test systems.
If no problems are discovered in the next week, this will make the replication
code ready for 4.0.2 release.
2002-03-30 12:36:05 -07:00
unknown
9c435716a9 replication updates and bugfixes. Still not perfect - there is some strange
memory corruption I can only repeat on one system.


mysql-test/r/multi_update.result:
  extended test trying to find why the old one was failing
mysql-test/r/rpl000015.result:
  result update
mysql-test/t/multi_update.test:
  updated test to do more intermediate result checks
mysql-test/t/rpl000014.test:
  cosmetic change
mysql-test/t/rpl000015-slave-master-info.opt:
  reduce connect retry trying to simulate a bug
mysql-test/t/rpl000015.test:
  cosmetic change
sql/lex.h:
  added RELAY_LOG_FILE and RELAY_LOG_POS to CHANGE MASTER TO
sql/log.cc:
  fixed replication bug
sql/log_event.cc:
  properly ignore replication errors according to error mask
sql/mysqld.cc:
  handle SIGFPE in the coredump handler
sql/slave.cc:
  do not kick slave if it has already exited and freed the structures
sql/sql_lex.cc:
  fixed initialization bug in CHANGE MASTER TO
sql/sql_lex.h:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
sql/sql_repl.cc:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
sql/sql_yacc.yy:
  CHANGE MASTER TO .. RELAY_LOG_FILE=,RELAY_LOG_POS=
2002-03-15 18:44:44 -07:00
sasha@mysql.sashanet.com
2e6b48afd3 replication updates and bugfixes. Still not perfect - there is some strange
memory corruption I can only repeat on one system.
2002-03-15 18:44:44 -07:00
unknown
b8a9ea66ba slave start <options> to be able to do
slave start io_thread 
 slave start sql_thread
same for stop


sql/lex.h:
  slave start <options>
sql/sql_lex.cc:
  slave start <options>
sql/sql_lex.h:
  slave start <options>
sql/sql_repl.cc:
  slave start <options>
sql/sql_yacc.yy:
  slave start <options>
2002-03-09 21:48:06 -07:00
sasha@mysql.sashanet.com
d993a1c0c4 slave start <options> to be able to do
slave start io_thread 
 slave start sql_thread
same for stop
2002-03-09 21:48:06 -07:00
unknown
d6a4362687 New error messages
Test of unsigned BIGINT values
Fixes for queries-per-hour
Cleanup of replication code (comments and portability fixes)
Make most of the binary log code 4G clean
Changed syntax for GRANT ... QUERIES PER HOUR


Docs/manual.texi:
  Fixed Changelog, upgrading to 4.0 and 4.1 TODO sections.
Docs/mysqld_error.txt:
  Added error message.
configure.in:
  Fix for autoconf 2.52
include/my_getopt.h:
  Portability fix.
include/my_global.h:
  Portablity fix.
include/mysqld_error.h:
  New error messages
mysql-test/r/bigint.result:
  Test of unsigned BIGINT values.
mysql-test/r/func_op.result:
  Test of unsigned BIGINT values.
mysql-test/r/varbinary.result:
  Test of unsigned BIGINT values.
mysql-test/t/bigint.test:
  Test of unsigned BIGINT values.
sql/item_func.h:
  Optimized Item_int_func() usage.
sql/lock.cc:
  Cleanup comments
sql/log.cc:
  Cleanup
sql/log_event.cc:
  Cleanup and portability fixes.
sql/log_event.h:
  Cleanup and portability fixes.
sql/mini_client.cc:
  Cleanup and portability fixes.
sql/mysqld.cc:
  Fix for queries-per-hour
sql/repl_failsafe.cc:
  Prepare for making binary log 2G clean.
sql/share/czech/errmsg.txt:
  New error messages
sql/share/danish/errmsg.txt:
  New error messages
sql/share/dutch/errmsg.txt:
  New error messages
sql/share/english/errmsg.txt:
  New error messages
sql/share/estonian/errmsg.txt:
  New error messages
sql/share/french/errmsg.txt:
  New error messages
sql/share/german/errmsg.txt:
  New error messages
sql/share/greek/errmsg.txt:
  New error messages
sql/share/hungarian/errmsg.txt:
  New error messages
sql/share/italian/errmsg.txt:
  New error messages
sql/share/japanese/errmsg.txt:
  New error messages
sql/share/korean/errmsg.txt:
  New error messages
sql/share/norwegian-ny/errmsg.txt:
  New error messages
sql/share/norwegian/errmsg.txt:
  New error messages
sql/share/polish/errmsg.txt:
  New error messages
sql/share/portuguese/errmsg.txt:
  New error messages
sql/share/romanian/errmsg.txt:
  New error messages
sql/share/russian/errmsg.txt:
  New error messages
sql/share/slovak/errmsg.txt:
  New error messages
sql/share/spanish/errmsg.txt:
  New error messages
sql/share/swedish/errmsg.txt:
  New error messages
sql/share/ukrainian/errmsg.txt:
  New error messages
sql/slave.cc:
  Cleanup
sql/slave.h:
  Cleanup
sql/sql_acl.cc:
  Cleanup and removal of possible reserved words
sql/sql_base.cc:
  More DBUG
sql/sql_cache.cc:
  Cleanup & portability fixes
sql/sql_class.h:
  Make binary log 4G clean
sql/sql_delete.cc:
  More DBUG
sql/sql_handler.cc:
  Cleanup & portability fixes
sql/sql_parse.cc:
  Cleanup of queries-per-hours code
sql/sql_rename.cc:
  Add missing DBUG_RETURN
sql/sql_repl.cc:
  Cleanup & portability fixes
sql/sql_select.cc:
  Cleanup & portability fixes
sql/sql_show.cc:
  Cleanup & portability fixes
sql/sql_update.cc:
  Small cleanup of multi-update-code (need second pass)
sql/sql_yacc.yy:
  Changed syntax for GRANT ... QUERIES PER HOUR
strings/str2int.c:
  Cleanup & portability fixes
2002-01-29 18:32:16 +02:00
monty@hundin.mysql.fi
be46289855 New error messages
Test of unsigned BIGINT values
Fixes for queries-per-hour
Cleanup of replication code (comments and portability fixes)
Make most of the binary log code 4G clean
Changed syntax for GRANT ... QUERIES PER HOUR
2002-01-29 18:32:16 +02:00
unknown
5df61c3cdc Here comes a nasty patch, although I am not ready to push it yet. I will
first pull, merge,test, and get it to work.

The main change is the new replication code - now we have two slave threads
SQL thread and I/O thread. I have also re-written a lot of the code to 
prepare for multi-master implementation. 

I also documented IO_CACHE quite extensively and to some extend, THD class.


Makefile.am:
  moved tags target script into a separate file
include/my_sys.h:
  fixes in IO_CACHE for SEQ_READ_APPEND + some documentation
libmysqld/lib_sql.cc:
  updated replication locks, but now I see I did it wrong and it won't compile. Will fix
  before the push.
mysql-test/r/rpl000014.result:
  test result update
mysql-test/r/rpl000015.result:
  test result update
mysql-test/r/rpl000016.result:
  test result update
mysql-test/r/rpl_log.result:
  test result update
mysql-test/t/rpl000016-slave.sh:
  remove relay logs
mysql-test/t/rpl000017-slave.sh:
  remove relay logs
mysql-test/t/rpl_log.test:
  updated test
mysys/mf_iocache.c:
  IO_CACHE updates to make replication work
mysys/mf_iocache2.c:
  IO_CACHE update to make replication work
mysys/thr_mutex.c:
  cosmetic change
sql/item_func.cc:
  new replication code
sql/lex.h:
  new replication
sql/log.cc:
  new replication
sql/log_event.cc:
  new replication
sql/log_event.h:
  new replication
sql/mini_client.cc:
  new replication
sql/mini_client.h:
  new replication
sql/mysql_priv.h:
  new replication
sql/mysqld.cc:
  new replication
sql/repl_failsafe.cc:
  new replication
sql/slave.cc:
  new replication
sql/slave.h:
  new replication
sql/sql_class.cc:
  new replication
sql/sql_class.h:
  new replication
sql/sql_lex.h:
  new replication
sql/sql_parse.cc:
  new replication
sql/sql_repl.cc:
  new replication
sql/sql_repl.h:
  new replication
sql/sql_show.cc:
  new replication
sql/sql_yacc.yy:
  new replication
sql/stacktrace.c:
  more robust stack tracing
sql/structs.h:
  new replication code
BitKeeper/etc/ignore:
  Added mysql-test/r/rpl000002.eval mysql-test/r/rpl000014.eval mysql-test/r/rpl000015.eval mysql-test/r/rpl000016.eval mysql-test/r/slave-running.eval mysql-test/r/slave-stopped.eval to the ignore list
2002-01-19 19:16:52 -07:00
sasha@mysql.sashanet.com
56129ce634 Here comes a nasty patch, although I am not ready to push it yet. I will
first pull, merge,test, and get it to work.

The main change is the new replication code - now we have two slave threads
SQL thread and I/O thread. I have also re-written a lot of the code to 
prepare for multi-master implementation. 

I also documented IO_CACHE quite extensively and to some extend, THD class.
2002-01-19 19:16:52 -07:00
unknown
06e1e27557 New improved IO_CACHE
include/my_global.h:
  Remove dbug_assert()  (One should use DBUG_ASSERT() instead)
mysql-test/mysql-test-run.sh:
  Fixed that xterm works on Solaris 2.8.
  Fixed printing of errors
mysql-test/r/isam.result:
  Removed MyISAM test from ISAM test
mysql-test/t/isam.test:
  Removed MyISAM test from ISAM test
mysys/my_alloc.c:
  Removed warnings
mysys/my_bitmap.c:
  Use DBUG_ASSERT
mysys/my_pthread.c:
  Use DBUG_ASSERT
mysys/my_seek.c:
  More DBUG
sql/ha_berkeley.cc:
  Use DBUG_ASSERT
sql/ha_innobase.cc:
  Use DBUG_ASSERT
sql/log.cc:
  Use DBUG_ASSERT
sql/opt_range.cc:
  Use DBUG_ASSERT
sql/sql_base.cc:
  Use DBUG_ASSERT
sql/sql_handler.cc:
  Use DBUG_ASSERT
sql/sql_load.cc:
  Cleanup
sql/sql_parse.cc:
  Use DBUG_ASSERT
sql/sql_repl.cc:
  Cleanup
sql/sql_select.cc:
  Use DBUG_ASSERT
tools/mysqlmanager.c:
  Cleanup
2001-11-28 02:55:52 +02:00
monty@bitch.mysql.fi
d0ccff5090 New improved IO_CACHE 2001-11-28 02:55:52 +02:00
unknown
7135efc1b5 replication updates in the manual
fixed typo on sql_repl.cc
added build-tags script for the benefit of the poor, sick, and afflicted, 
as Matt likes to say :-)


Docs/manual.texi:
  replication updates
sql/sql_repl.cc:
  fixed typo in comment
2001-11-24 22:48:57 -07:00
sasha@mysql.sashanet.com
6865885f21 replication updates in the manual
fixed typo on sql_repl.cc
added build-tags script for the benefit of the poor, sick, and afflicted, 
as Matt likes to say :-)
2001-11-24 22:48:57 -07:00
unknown
640fadf2f8 work to enable reading 3.23 logs - not yet finished
moved fail-safe replication routines from sql_repl.cc to repl_failsafe.cc
write start event only in the first log


client/mysqlbinlog.cc:
  work to enable reading 3.23 logs
libmysql/Makefile.shared:
  added mf_iocache2 to libmysqlclient - needed for mysqlbinlog
mysql-test/mysql-test-run.sh:
  added --start-and-exit
mysql-test/r/rpl000002.result:
  result clean-up
mysql-test/r/rpl000016.result:
  result update
mysql-test/r/rpl_log.result:
  result update
mysql-test/t/rpl000016.test:
  test cleanup
mysys/mf_iocache.c:
  fixed new bug
sql/log.cc:
  write start event only on server start or after reset master
sql/log_event.cc:
  work to enable reading 3.23 log format
sql/log_event.h:
  work to enable reading 3.23 format
sql/repl_failsafe.cc:
  code restructuring
sql/repl_failsafe.h:
  re-organized code
sql/slave.cc:
  check master version
sql/slave.h:
  old_format member
sql/sql_class.h:
  allow user to specify io cache type
  need_start_event member to allow writing start event only in the first log
sql/sql_parse.cc:
  code re-organization
sql/sql_repl.cc:
  code reorganization
sql/sql_repl.h:
  reorganized code
2001-11-10 22:24:12 -07:00
sasha@mysql.sashanet.com
beaf95b09d work to enable reading 3.23 logs - not yet finished
moved fail-safe replication routines from sql_repl.cc to repl_failsafe.cc
write start event only in the first log
2001-11-10 22:24:12 -07:00
unknown
cd825a1993 more work on IO_CACHE
portability fixes for systems with broken syscalls that do not interrupt on 
a signal
temporary commit - will not be pushed, need to sync up


include/my_sys.h:
  work on READ_APPEND cache
mysys/Makefile.am:
  change to test IO_CACHE
mysys/mf_iocache.c:
  work on READ_APPEND cache
BitKeeper/etc/ignore:
  Added mysys/#mf_iocache.c# mysys/test_io_cache to the ignore list
sql/mysqld.cc:
  make shutdown work on broken systems
sql/sql_repl.cc:
  make sure slave can be stopped on broken systems in all cases, clean-up
2001-11-03 16:54:00 -07:00
sasha@mysql.sashanet.com
b00eee622e more work on IO_CACHE
portability fixes for systems with broken syscalls that do not interrupt on 
a signal
temporary commit - will not be pushed, need to sync up
2001-11-03 16:54:00 -07:00
unknown
8fc78e08b0 cleanup
removal of duplicate code in mf_iocache.cc 
work on failsafe replication
work on SEQ_READ_APPEND io cache


include/my_sys.h:
  updates for SEQ_READ_APPEND
libmysql/Makefile.am:
  fix for mysys/mf_iocache.c
libmysql/libmysql.c:
  updates for new format of SHOW SLAVE HOSTS
mysql-test/r/rpl000001.result:
  test replication of LOAD DATA LOCAL INFILE
mysql-test/r/rpl000002.result:
  updated test result
mysql-test/t/rpl000001.test:
  test LOAD DATA LOCAL INFILE
mysys/mf_iocache.c:
  cleanup to remove duplicate functionality
  some work on SEQ_READ_APPEND
sql/mf_iocache.cc:
  cleanup to remove duplicate functionality
sql/repl_failsafe.cc:
  more work on failsafe replication
sql/repl_failsafe.h:
  more work on failsafe replication
sql/slave.cc:
  cleanup
  more work on failsafe replication
sql/sql_load.cc:
  fixed bug on replicating empty file loads
  got LOAD DATA LOCAL INFILE to work again, and to be replicated
sql/sql_repl.cc:
  cleanup
  more work on failsafe replication
sql/sql_repl.h:
  more work on failsafe replication
2001-10-23 13:28:03 -06:00
sasha@mysql.sashanet.com
be4dfd21dd cleanup
removal of duplicate code in mf_iocache.cc 
work on failsafe replication
work on SEQ_READ_APPEND io cache
2001-10-23 13:28:03 -06:00
unknown
a6c5867683 changed manager to use my_net_*
fixed bug in master - unregister slaves when they disconnect


client/mysqlmanagerc.c:
  changed default port
include/mysql.h:
  use my_net_*
libmysql/manager.c:
  use my_net_*
mysql-test/mysql-test-run.sh:
  added support for client strace
sql/sql_parse.cc:
  unregister slaves on disconnect
sql/sql_repl.cc:
  unregister slaves on disconnect
sql/sql_repl.h:
  unregister slaves on disconnect
tools/mysqlmanager.c:
  changed to use my_net_*
2001-10-12 09:37:25 -06:00
sasha@mysql.sashanet.com
2d3f96b483 changed manager to use my_net_*
fixed bug in master - unregister slaves when they disconnect
2001-10-12 09:37:25 -06:00
unknown
5a18acf35f fixed slave to clean up load data infile temp files
instrumented the server with DBUG_SYNC_POINT() macro


mysql-test/t/rpl_log.test:
  no change
sql/item_func.cc:
  debug_sync_point()
sql/log_event.cc:
  clead load data file tmpdir on slave on start/stop events
sql/mysql_priv.h:
  DBUG_SYNC_POINT
sql/sql_repl.cc:
  DBUG_SYNC_POINT in Create_file_event
2001-10-03 13:55:31 -06:00
sasha@mysql.sashanet.com
20ece90471 fixed slave to clean up load data infile temp files
instrumented the server with DBUG_SYNC_POINT() macro
2001-10-03 13:55:31 -06:00
unknown
7dc2f1a69e Portability fixes
libmysql/libmysql.c:
  Cleanup & portability fixes
2001-09-15 16:22:34 +03:00