1
0
mirror of https://github.com/MariaDB/server.git synced 2025-05-28 13:01:41 +03:00

630 Commits

Author SHA1 Message Date
unknown
b703338d76 Merge
sql/set_var.cc:
  Auto merged
sql/mysqld.cc:
  SCCS merged
2003-12-30 13:16:49 +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
76a36815df typos fixed 2003-12-22 13:03:23 +01:00
unknown
a7d8af9b08 Fixed that lower_case_table_names is set to 1 for case insensitive file systems. 2003-12-18 16:50:01 +02:00
unknown
f562d0c2c3 Removed compiler warning
Fixed not updated test from last changeset


mysql-test/r/auto_increment.result:
  Updated results
sql/mysqld.cc:
  Cleaned up pid file handling (to remove compiler warning)
2003-12-18 15:24:21 +02:00
unknown
3357bc7ea3 Portability fixes (mostly test suite)
Make ENGINE= an alias for TYPE= (Compabiltiy with 4.1)
Fix when using symlinked data files and realpath() is not working


client/mysqltest.c:
  Copied mysqltest from 4.1 and modified this to compile in 4.0
  This was needed to get replace_columns to work.
include/my_sys.h:
  Stop compiler warnings about alloca on freebsd
myisam/mi_check.c:
  Fix when using symlinked data files and realpath() is not working
mysql-test/r/handler.result:
  test engine=
mysql-test/r/rpl_max_relay_size.result:
  Use replace_columns to replace some 'not constant' columns
mysql-test/r/rpl_rotate_logs.result:
  Use replace_columns to replace some 'not constant' columns
mysql-test/r/rpl_trunc_binlog.result:
  Use replace_columns to replace some 'not constant' columns
mysql-test/t/handler.test:
  test engine=
mysql-test/t/rpl_log_pos.test:
  Use replace_columns to replace some 'not constant' columns
mysql-test/t/rpl_max_relay_size.test:
  Use replace_columns to replace some 'not constant' columns
mysql-test/t/rpl_rotate_logs.test:
  Use replace_columns to replace some 'not constant' columns
mysql-test/t/rpl_trunc_binlog.test:
  Use replace_columns to replace some 'not constant' columns
mysys/my_symlink.c:
  More debugging
sql/lex.h:
  Make ENGINE= an alias for TYPE=
sql/mysqld.cc:
  Code cleanup
strings/strto.c:
  Fix for True64
strings/strtoll.c:
  Fix for True64
strings/strtoull.c:
  Remove not needed include file
2003-12-16 13:20:17 +02:00
unknown
afb0756618 Extend max_allowed_packet to 2G in mysql and mysqldump (Bug #2105)
Don't dump data for MRG_ISAM or MRG_MYISAM tables. (Bug #1846)
Ensure that 'lower_case_table_names' is always set on case insensitive file systems. (Bug #1812)
One can now configure MySQL as windows service as a normal user. (Bug #1802)
Database names is now compared with lower case in ON clause when lower_case_table_names is set. (Bug #1736)
IGNORE ... LINES option didn't work when used with fixed length rows. (Bug #1704)
Change INSERT DELAYED ... SELECT... to INSERT .... SELECT (Bug #1983)
Safety fix for service 'mysql start' (Bug #1815)


client/mysql.cc:
  Extend max_allowed_packet to 2G (Bug #2105)
client/mysqldump.c:
  Extend max_allowed_packet to 2G (Bug #2105)
  Don't dump data for MRG_ISAM or MRG_MYISAM tables. (Bug #1846)
configure.in:
  Test for file linux/config.h
include/my_global.h:
  Portability fix (Bug #1924)
mysql-test/r/insert.result:
  Update test results
mysql-test/r/loaddata.result:
  Update test results
mysql-test/r/lowercase_table.result:
  Update test results
mysql-test/t/insert.test:
  Test INSERT ... DELAYED ... SELECT
mysql-test/t/loaddata.test:
  Added test of LOAD DATA INFILE ... IGNORE # LINES for fixed size tables
mysql-test/t/lowercase_table.test:
  Test mixed lower/uppercase database names
sql/item.cc:
  Made function not inline (to make it easier to modify it without recompilation of all files)
sql/item.h:
  Moved function to item.cc
sql/mysqld.cc:
  Merge pidfile create code
  Ensure that 'lower_case_table_names' is always set on case insensitive file systems. (Bug #1812)
sql/nt_servc.cc:
  One can now configure MySQL as windows service as a normal user. (Bug #1802)
sql/sql_base.cc:
  Database names is now compared with lower case in ON clause when lower_case_table_names is set. (Bug #1736)
sql/sql_class.h:
  Fixed type
sql/sql_load.cc:
  IGNORE ... LINES option didn't work when used with fixed length rows. (Bug #1704)
sql/sql_parse.cc:
  Change INSERT DELAYED ... SELECT... to INSERT .... SELECT
strings/ctype-tis620.c:
  Ensure that memory is freed properly (Partly becasue of bug #1770)
  Bar should check the proposed patch in #1770 if we can use it
support-files/mysql.server.sh:
  Safety fix (Bug #1815)
2003-12-14 06:39:52 +02: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
6f1d63bfe0 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0


sql/mysqld.cc:
  Auto merged
2003-12-09 20:50:11 +01:00
unknown
7cfbf9e8f6 code cleanup after some reasoning
sql/mysqld.cc:
  code cleanup
2003-12-09 20:49:48 +01:00
unknown
4e85bf326e Add newline after pid in pidfile 2003-12-09 20:17:28 +02:00
unknown
610fe7ae77 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
2003-12-09 16:21:43 +02:00
unknown
589657539c Don't limit number of tables in table cache 2003-12-09 16:21:23 +02:00
unknown
9a1cb59cd7 Create PID file with O_TRUNC, so that it is emptied before it is written to.
Otherwise, if the previous run ended with a crash, and the PID was 1234,
and you have rebooted the machine and the new PID is 99 then in the PID
file you will have 9934.
Note: users of mysqld_safe did not have the problem because this script
deletes the PID file before starting mysqld.
2003-12-08 20:53:46 +01:00
unknown
da3e63e126 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.0
into gluh.mysql.r18.ru:/home/gluh/mysql-4.0.defweek


sql/mysqld.cc:
  Auto merged
2003-12-07 15:11:08 +04:00
unknown
468dcb6092 WL#1175: more default_week_formats for iso compatibility
New formats added for 'week()' function and 'default_week_format' option(4 - 7).
Next formats is supported now:
*Value* *Meaning*
  `0'     Week starts on Sunday; First Sunday of the year starts week 1.
  	  Week() returns 0-53.
  `1'     Week starts on Monday; Weeks numbered according to ISO 8601:1988.
	  Week() returns 0-53.
  `2'     Week starts on Sunday; First Sunday of the year starts week 1.
  	  Week() returns 1-53.
  `3'     Week starts on Monday; Weeks numbered according to ISO 8601:1988.
	  Week() returns 1-53.
  `4'     Week starts on Sunday; Weeks numbered according to ISO 8601:1988.
	  Week() returns 0-53.
  `5'     Week starts on Monday;  First Monday of the year starts week 1.
  	  Week() returns 0-53.
  `6'     Week starts on Sunday; Weeks numbered according to ISO 8601:1988.
	  Week() returns 1-53.
  `7'     Week starts on Monday;  First Monday of the year starts week 1.
  	  Week() returns 1-53.


mysql-test/r/func_time.result:
  Test for 'default_week_format' option and 'week' function
mysql-test/t/func_time.test:
  Test for 'default_week_format' option and 'week' function
sql/item_timefunc.cc:
  WL#1175 more default_week_formats for iso compatibility
sql/mysql_priv.h:
  WL#1175 more default_week_formats for iso compatibility
sql/mysqld.cc:
  WL#1175 more default_week_formats for iso compatibility
sql/time.cc:
  WL#1175 more default_week_formats for iso compatibility
2003-12-07 15:10:21 +04:00
unknown
ee52d2925d Allow space in service names
move bdb/innodb tests to right places


mysql-test/r/bdb.result:
  Update results after test changes
mysql-test/r/innodb.result:
  Update results after test changes
mysql-test/r/multi_update.result:
  Update results after test changes
mysql-test/t/bdb.test:
  Move bdb tests here
mysql-test/t/innodb.test:
  Move innodb test here
mysql-test/t/multi_update.test:
  move bdb/innodb tests to repective test
sql/mysqld.cc:
  Allow space in service names
2003-12-04 19:48:10 +02:00
unknown
fa9047e280 Added compilation comment to 'show variables'
This makes it possible to check origin of binary from the output of 'show variables'


include/mysql_version.h.in:
  Added MYSQL_COMPILATION_COMMENT
sql/mysqld.cc:
  Added compilation comment to mysqld --version
sql/set_var.cc:
  Added compilation comment to 'show variables'
2003-11-26 03:30:00 +02:00
unknown
cee3ddb401 Safety fix for adding service name to search config groups 2003-10-30 01:20:38 +02:00
unknown
7da08881a3 Change back service name to MySQL
Don't add service name to read config file segments if it's "MySQL"
Fixed possible memory leak when CHANGE USER failed.


include/mysql_com.h:
  Change back service name to MySQL (With new, better spelling)
myisam/myisamchk.c:
  Improved --help
sql/mysqld.cc:
  Don't add service name to read config file segments if it's "MySQL"
sql/sql_parse.cc:
  Fixed possible memory leak when CHANGE USER failed.
2003-10-30 01:01:53 +02:00
unknown
b11f9c1053 Fix for problem of installing MySQL as a service with
mysql --install mysql --defualts-file=path-to-file
(Bug #1643)


include/mysql_com.h:
  MySQL should install as default service "mysqld"
sql/mysqld.cc:
  Fix for problem of installing MySQL as a service with
  mysql --install mysql --defualts-file=path-to-file
2003-10-28 18:36:41 +02:00
unknown
60fb31ddec Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2003-10-15 16:23:01 +03:00
unknown
74ea459412 Add new user variables for tuning memory usage:
query_alloc_block_size, query_prealloc_size, range_alloc_block_size,transaction_alloc_block_size and transaction_prealloc_size
Add more checks for "out of memory" detection in range optimization


configure.in:
  Added detection of mallinfo
mysql-test/r/variables.result:
  Test of new variables
mysql-test/t/variables.test:
  Test of new variables
sql/ha_berkeley.cc:
  Use init_sql_alloc instead of init_alloc_root for better OOM detection
sql/log_event.cc:
  Add new user variables for tuning memory usage
sql/mysql_priv.h:
  Add new user variables for tuning memory usage
sql/mysqld.cc:
  Add new user variables for tuning memory usage
sql/opt_ft.cc:
  Add new user variables for tuning memory usage
sql/opt_ft.h:
  Add new user variables for tuning memory usage
sql/opt_range.cc:
  Add new user variables for tuning memory usage
  Add more checks for out of memory conditions
sql/opt_range.h:
  Add new user variables for tuning memory usage
sql/set_var.cc:
  Add new user variables for tuning memory usage
sql/sql_acl.cc:
  Add new user variables for tuning memory usage
sql/sql_class.h:
  Add new user variables for tuning memory usage
sql/sql_delete.cc:
  Add new user variables for tuning memory usage
sql/sql_parse.cc:
  Add new user variables for tuning memory usage
sql/sql_select.cc:
  Add new user variables for tuning memory usage
sql/sql_test.cc:
  Add information about memory useage if system supports mallinfo()
sql/sql_udf.cc:
  Add new user variables for tuning memory usage
sql/sql_update.cc:
  Add new user variables for tuning memory usage
sql/table.cc:
  Add new user variables for tuning memory usage
2003-10-11 22:00:24 +03:00
unknown
08504cfe27 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0


scripts/mysql_config.sh:
  Auto merged
sql/mysqld.cc:
  Auto merged
2003-10-06 09:24:12 +02:00
unknown
2985e91acd Optimized code for setting user variables with := and fixed some bugs in old code (Bug #1194)
Use forced close of socket to make mysqld shutdown faster when used under valgrind


mysql-test/mysql-test-run.sh:
  Added --skip-bdb for valgrind
mysql-test/r/user_var.result:
  Extended test for user variables
mysql-test/t/user_var.test:
  Extended test for user variables
sql/item_func.cc:
  Optimized code for setting user variables with := and fixed some bugs in old code
sql/item_func.h:
  Optimized code for setting user variables
sql/log.cc:
  Fixed comments
sql/mysqld.cc:
  Use forced close of socket to make mysqld shutdown faster when used under valgrind
sql/sql_class.h:
  Optimized code for setting user variables
2003-10-03 00:40:27 +03:00
unknown
907e055583 enum options renamed to avoid possible name conflicts 2003-09-29 11:21:17 +02:00
unknown
a65f5081ba Add QUICK as mysql-recover option in mysqld --help
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2003-09-05 14:44:21 +02:00
unknown
59806e1004 vio ssl structure renames (to get rid of ending _)
Added TCP/IP read/write timeout for windows
Check on windows if second server is started with same TCP/IP port


BitKeeper/deleted/.del-have_openssl_2.inc~8c9f1a45676b698f:
  Delete: mysql-test/include/have_openssl_2.inc
BitKeeper/deleted/.del-have_openssl_2.require~53bbdfc136fb514:
  Delete: mysql-test/r/have_openssl_2.require
BitKeeper/deleted/.del-openssl_2.test~f2dfa927f19d14f8:
  Delete: mysql-test/t/openssl_2.test
BitKeeper/etc/ignore:
  added libmysql/vio_priv.h libmysql_r/vio_priv.h
client/mysql.cc:
  vio ssl structure renames
include/violite.h:
  Cleanup violite.h interface (move things to vio_priv.h)
libmysql/Makefile.am:
  Use vio_priv.h
libmysql/Makefile.shared:
  Use vio_priv.h
libmysqld/lib_vio.c:
  Added timeout for windows
mysys/my_getopt.c:
  Indentaion cleanup
sql/item_cmpfunc.cc:
  Remove compiler warnings
sql/item_func.cc:
  Remove compiler warnings
sql/mini_client.cc:
  vio ssl structure renames
sql/mysqld.cc:
  Check on windows if second server is started with same TCP/IP port
sql/net_serv.cc:
  Add read/write timeouts for windows
sql/sql_acl.cc:
  vio ssl structure renames
sql/sql_show.cc:
  vio ssl structure renames
vio/vio.c:
  Added timeouts for windows
vio/viosocket.c:
  Added timeouts for windows
vio/viossl.c:
  Added timeouts for windows
  Cleaned up structure element names
vio/viosslfactories.c:
  Added timeouts for windows
  Cleaned up structure element names
2003-08-27 02:51:39 +03:00
unknown
af9b771a32 show symlinked directories in SHOW CREATE TABLE 2003-08-23 12:25:39 +03:00
unknown
64393d7e24 Move test that uses many tables (in query_cache.test) to separate test so that we can get it 'skipped' instead of 'failed' on system where we can't open many files.
client/mysqltest.c:
  Fix that LET can be used with queries that return multiple columns
libmysql/errmsg.c:
  Extend socket name to 100 characters in error messages
libmysql/libmysql.c:
  Reset some variables to make ensure that we can call mysql_server_init()/mysql_server_end() many times
mysql-test/mysql-test-run.sh:
  Set open-files-limit to 1024
mysql-test/r/loaddata.result:
  Add test case for LOAD DATA bug report (was not a bug)
mysql-test/r/query_cache.result:
  Move test with many tables to separate test
mysql-test/r/select_safe.result:
  Make test repeatable
mysql-test/t/loaddata.test:
  Add test case for LOAD DATA bug report (was not a bug)
mysql-test/t/query_cache.test:
  Move test with many tables to separate test
mysql-test/t/select_safe.test:
  Make test repeatable
sql/field.cc:
  Portability fix for gcc 3.3
sql/mysqld.cc:
  Store in open_files_limit the true number of files we can open (if system supports it)
sql/sql_load.cc:
  Safety fix
2003-08-22 04:07:40 +03:00
unknown
de5d47c35d Fixed some varnings from valgrind
Set min value of max_allowed_packet to 1024
Fixed problem with UNION's without braces and SQL_CALC_FOUND_ROWS, LIMIT #,#
and ORDER BY...LIMIT


include/m_string.h:
  Added memcpy_overlap() to avoid warnings when using valgrind on memcpy(A,A,...)
myisam/mi_create.c:
  Fixed comment
myisam/mi_search.c:
  Fix warning from valgrind
myisam/mi_write.c:
  Indentation fix
mysql-test/mysql-test-run.sh:
  Add options handled by general skip- option
mysql-test/r/packet.result:
  Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/r/union.result:
  Added testing of UNION with SQL_CALC_FOUND_ROWS
mysql-test/t/packet.test:
  Update results after change to mysqld (min max_allowed_packet length is now 1024)
mysql-test/t/union.test:
  Added testing of UNION with SQL_CALC_FOUND_ROWS
sql/field.cc:
  Fix to remove waarning from valgrind
sql/ha_innodb.cc:
  Remove wrong include file
sql/item_cmpfunc.cc:
  Safety fix to handle EOM conditions in IN
sql/item_sum.cc:
  Fixed prototype for update_field() (argument was alwys 0)
sql/item_sum.h:
  Fixed prototype for update_field() (argument was alwys 0)
sql/item_uniq.h:
  Fixed prototype for update_field() (argument was alwys 0)
sql/log.cc:
  Indentation fix
sql/mysqld.cc:
  Set min value of max_allowed_packet to 1024 (to avoid it getting set to 0)
sql/net_serv.cc:
  Indentation changes + trivial optimization
sql/sql_select.cc:
  Fixed prototype for update_field() (argument was alwys 0)
sql/sql_union.cc:
  Fixed problem with UNION's without braces and
  - SQL_CALC_FOUND_ROWS
  - LIMIT #,#
  - ORDER BY ... LIMIT
2003-08-20 16:25:44 +03:00
unknown
fa1613be0a Review of changesets since last pull.
(Mostly code cleanups)


include/my_sys.h:
  Removed not used define
myisam/mi_check.c:
  Indentation change
mysql-test/t/rpl_insert_id.test:
  Add test if server supports innodb
mysys/mf_format.c:
  Remove QUOTE handling from fn_format()
  (fn_format() should not have anything to do with quoting things)
sql/log_event.cc:
  Removed some unnecessary casts (by changing functions to use const char *)
  Cleaned up some error messages to make them shorter and (hopefully) more readable.
  Fixed wrong format strings
  Restored 'thd->options' on error.
sql/mini_client.cc:
  Changed order of include files to remove compilation warning
sql/mysqld.cc:
  Add proper quoting of service arguments (don't use fn_format)
sql/slave.cc:
  Simple optimization and cleanup.
  Changed rewrite_db() and print_slave_db_safe() to use const char* to avoid casting of arguments when calling functions.
  Cleanup of some error messages.
sql/slave.h:
  Changed protypes to use const char *
sql/sql_acl.cc:
  Simple optimization
vio/viosslfactories.c:
  Changed order of include files to remove compilation warning
2003-08-07 20:16:37 +03:00
unknown
17a6d749d4 mysqld.cc:
innodb_fast_shutdown CAN take an argument though it was not specified so in mysqld.cc


sql/mysqld.cc:
  innodb_fast_shutdown CAN take an argument though it was not specified so in mysqld.cc
2003-07-29 00:04:56 +03:00
unknown
c67f50f37e Fix for service issue with paths having spaces (bug #687) 2003-07-23 21:57:44 -04:00
unknown
128feded87 Better fix for bug #791: At binlog rotation, INSERTs may not find their way into the binlog
mysql-test/t/rpl_flush_log_loop.test:
  Add timer to avoid problem when 'flush logs' is executed before we have read all data from master
sql/log.cc:
  Better fix for bug #791:
  Mark log as LOG_TO_BE_OPENED instead of LOG_CLOSED when it's closed and opened.
sql/mysqld.cc:
  Better startup message
sql/slave.cc:
  Fix argument to close()
sql/sql_class.h:
  Better handling of log.close()
2003-07-14 14:59:26 +03:00
unknown
543208de96 removed 2 small useless if().
sql/log.cc:
  a comment for the future.
sql/mysqld.cc:
  if (p) is not needed: fn_ext() always returns a valid pointed; the way
  to test if an extension was found is if (*p), not if (p).
  But here even if there's no extension, we still want to truncate opt_name
  to FN_REFLEN, so we always execute the code.
  By design, the test was always 'false' (because we strip the extension before
  testing if there's an extension) so log->set_no_rotate never executed.
sql/sql_class.h:
  remove set_no_rotate as we don't need it.
2003-07-12 15:06:40 +02:00
unknown
d974959b4f Fix for BUG#791:
a safer way of initing the mutexes in MYSQL_LOG.
is_open() is now always thread-safe.
See each file for details.


sql/handler.cc:
  is_open() with locks
sql/item_func.cc:
  is_open() with locks
sql/log.cc:
  No more 'inited'.
  We now always use is_open() in a thread-safe manner.
  This simplifies some functions (no more need to test is_open() twice).
sql/log_event.cc:
  is_open() with locks
sql/mysqld.cc:
  Init mutexes for the global MYSQL_LOG objects.
  We care about no_rotate, because we can't do it in open() anymore (because
  we don't have 'inited' anymore).
sql/repl_failsafe.cc:
  is_open() with locks
sql/slave.cc:
  init pthread objects (mutexes, conds) in the constructor of st_relay_log_info.
  Some better locking in rotate_relay_log().
sql/sql_base.cc:
  is_open() with locks
sql/sql_class.h:
  Before, we inited LOCK_log in MYSQL_LOG::open(), so in other places of the code
  when we were never 100% sure that it had been inited. For example, if the server
  was running without --log-bin, ::open() was not called so the mutex was not
  inited. We could detect it with !inited, but not safely as 'inited' was not
  protected by any mutex.
  So now:
  we *always* init the LOCK_log mutex, even if the log is not used. We can't init
  the mutex in MYSQL_LOG's constructor, because for global objects like
  mysql_bin_log, mysql_log etc, the constructor is called before MY_INIT(), but
  safe_mutex depends on MY_INIT(). So we have a new function MYSQL_LOG::init_pthread_objects
  which we call in main(), after MY_INIT().
  For the relay log, we call this function in the constructor of
  st_relay_log_info, which is called before any function tries to
  use the relay log (the relay log is always invoked as rli.relay_log).
  So now we should be safe in all cases and we don't need 'inited'.
sql/sql_db.cc:
  is_open() with locks
sql/sql_delete.cc:
  is_open() with locks
sql/sql_insert.cc:
  is_open() with locks
sql/sql_load.cc:
  is_open() with locks
sql/sql_parse.cc:
  is_open() with locks
sql/sql_rename.cc:
  is_open() with locks
sql/sql_repl.cc:
  is_open() with locks
sql/sql_table.cc:
  is_open() with locks
sql/sql_update.cc:
  is_open() with locks
2003-07-11 14:26:44 +02:00
unknown
5e817c5313 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mashka.mysql.fi:/home/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
2003-07-09 00:00:16 +03:00
unknown
e13e857cae Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
Removed double my_thread_end() which caused fatal error on windows if mysqld died on startup


myisam/mi_extra.c:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
mysql-test/r/alter_table.result:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
mysql-test/t/alter_table.test:
  Test DISABLE/ENABLE KEY
sql/ha_myisam.cc:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/mysqld.cc:
  Removed double my_thread_end() which caused fatal error on windows if mysqld died on startup
sql/sql_table.cc:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/table.cc:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
sql/table.h:
  Fixed bug in ALTER TABLE ... DISABLE/ENABLE KEYS
2003-07-08 23:58:04 +03:00
unknown
d0486f8abc typos fixed 2003-07-07 19:35:11 +02:00
unknown
27601fc5ee WL#912 (more user control on relay logs):
FLUSH LOGS now rotates relay logs,
and a new variable max_relay_log_size.
Plus a very small bit of code cleaning.


libmysqld/lib_sql.cc:
  open_log has no default arguments anymore.
mysql-test/r/rpl_flush_log_loop.result:
  result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_log.result:
  result update now that FLUSH LOGS rotates relay logs.
mysql-test/r/rpl_rotate_logs.result:
  result update now that max_binlog_size is 4096.
mysql-test/t/rpl_rotate_logs-master.opt:
  now max_binlog_size must be a multiple of 4096 (see change in mysqld.cc)
sql/log.cc:
  Got rid of default arguments of various MYSQL_LOG methods (the default arguments
  made code reading uneasy).
  Set max_size in ::init().
  New function set_max_size() to set max_size of a MYSQL_LOG on-the-fly.
  More DBUG info.
sql/mysql_priv.h:
  no defaults in open_log().
  New variables max_relay_log_size.
sql/mysqld.cc:
  New variable and option max_relay_log_size.
  max_binlog_size and max_relay_log_size are multiples of IO_SIZE.
  No more default arguments for log functions.
sql/set_var.cc:
  New variable max_relay_log_size.
  If it is 0, then max_binlog_size will apply to relay logs.
  When one of these variables is changed, fix_max_%log_size is called
  to update max_size of the binary and/or relay logs.
sql/slave.cc:
  New function rotate_relay_log().
sql/slave.h:
  New function rotate_relay_log().
sql/sql_class.h:
  New member max_size of MYSQL_LOG (for automatic rotation).
  New method set_max_size() for setting on-the-fly.
sql/sql_parse.cc:
  Flush the relay log in FLUSH LOGS.
2003-07-06 17:59:54 +02:00
unknown
e22a31f173 I committed the same changeset in my tree yesterday, but broke the tree since,
so I commit again in a fresh tree.
Fix for bug#763 (Relay_log_space too big by 4 bytes),
plus comments and DBUG_PRINT, and we don't start replication
if --bootstrap.


mysql-test/r/rpl_log.result:
  Result update
mysql-test/r/rpl_log_pos.result:
  Result update
sql/mysqld.cc:
  Don't start replication if in bootstrap mode (bootstrap isn't supposed to have
  several threads).
sql/slave.cc:
  Fix for bug 763 (Relay_log_space too big by 4 bytes).
  A DBUG_PRINT.
sql/sql_acl.cc:
  Replaced a return by DBUG_RETURN (happened to find this reading a debug log).
sql/sql_repl.cc:
  A comment.
2003-07-03 01:08:36 +02:00
unknown
c2cb9b97be Added thread variable max_seeks_for_key
Change optimizer to prefer key lookups before table scan
Change table scans to be done after tables with constrains on scanned table 


mysql-test/r/distinct.result:
  Update results
mysql-test/r/group_by.result:
  Update results
mysql-test/r/heap.result:
  Update results
mysql-test/r/join.result:
  Update results
mysql-test/r/key_diff.result:
  Update results
mysql-test/r/myisam.result:
  Update results
mysql-test/r/order_by.result:
  Update results
mysql-test/r/select_safe.result:
  Update results
mysql-test/t/distinct.test:
  Change test to be repeatable
mysql-test/t/join.test:
  Change test to be repeatable
mysql-test/t/select_safe.test:
  Add tests for MAX_SEEKS_FOR_KEY
sql/handler.h:
  Optimize structure for 64 bit machines (and to avoid problems with gdb)
sql/item_cmpfunc.cc:
  Initialize not_null_tables_cache properly
sql/mysqld.cc:
  Added max_seeks_for_key
sql/set_var.cc:
  Added max_seeks_for_key
sql/sql_class.h:
  Added max_seeks_for_key
sql/sql_select.cc:
  Added max_seeks_for_key
  Change optimizer to prefer key lookups before table scan.
  Change table scans to be done after tables with constrains on scanned table
2003-06-27 03:04:54 +03:00
unknown
ba49cc62b0 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.0
into gluh.mysql.r18.ru:/home/gluh/mysql-4.0.defweek


sql/mysqld.cc:
  Auto merged
2003-06-23 12:03:50 +05:00
unknown
a7425f5ade Warn that --log-slave-updates is used without --log-bin and disabled (WL#998)
sql/mysqld.cc:
  Warn that --log-slave-updates is used without --log-bin and disabled.
2003-06-20 13:54:22 +02:00
unknown
85d2282e25 SCRUM
Task ID 894:
Backport default_week_format variable to 4.0


mysql-test/r/func_time.result:
  Backport default_week_format variable to 4.0
mysql-test/t/func_time.test:
  Backport default_week_format variable to 4.0
sql/mysqld.cc:
  Backport default_week_format variable to 4.0
sql/set_var.cc:
  Backport default_week_format variable to 4.0
sql/sql_class.h:
  Backport default_week_format variable to 4.0
sql/sql_yacc.yy:
  Backport default_week_format variable to 4.0
2003-06-19 14:02:19 +05:00
unknown
dd2836c4c1 Changed safemalloc structure to not have to be 8 byte aligned. (Portability problem)
include/my_sys.h:
  Changed safe_malloc variables to start with sf_
mysys/default.c:
  Use safemalloc (as we use dynamic_arrays() that uses it inderectly anyway)
mysys/my_static.c:
  Changed safe_malloc variables to start with sf_
mysys/my_static.h:
  Changed safe_malloc variables to start with sf_
  Changed safemalloc structure to not have to be 8 byte aligned
mysys/safemalloc.c:
  Changed safemalloc structure to not have to be 8 byte aligned. (portability fix)
  BIG code cleanup
sql/mysqld.cc:
  Changed safe_malloc variables to start with sf_
sql/sql_parse.cc:
  Changed safe_malloc variables to start with sf_
2003-06-12 22:39:45 +03:00
unknown
a1a58d6c5a Don't install signal handler for SIGINT by default
Added option --gdb
Free memory used by replicate_xxx and binglog_xxx options


mysql-test/mysql-test-run.sh:
  Added --gdb when using gdb
mysys/thr_alarm.c:
  Safety check
sql/mysql_priv.h:
  Don't install signal handler for SIGINT by default
sql/mysqld.cc:
  Don't install signal handler for SIGINT by default
  Added option --gdb
  Free memory used by replicate_xxx and binglog_xxx options.
  Add statistics variable for killed threads
sql/repl_failsafe.cc:
  Incremented aborted_connects on failure
sql/sql_list.cc:
  Added free_list() to free memory on shutdown.
2003-06-10 21:42:29 +03:00
unknown
1e7dfec5c7 sql_yacc.yy, sql_parse.cc, sql_lex.h, mysqld.cc, lex.h:
Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.


sql/lex.h:
  Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.
sql/mysqld.cc:
  Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.
sql/sql_lex.h:
  Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.
sql/sql_parse.cc:
  Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.
sql/sql_yacc.yy:
  Add syntax SAVEPOINT id and ROLLBACK TO SAVEPOINT id. This is compatible with DB2 and Oracle but not with SQL Server. Savepoints do not do anything yet, this is just parsing.
2003-06-06 04:18:58 +03:00
unknown
35cd3cbac7 mysqld won't give a warning any more, if --user=user_name is used,
if 'user_name' is the current user and it is not root.
2003-06-05 16:56:38 +03:00