Commit graph

410 commits

Author SHA1 Message Date
unknown
90cc9c6bb6 Merge
BitKeeper/triggers/post-commit:
  Auto merged
mysql-test/r/lowercase_table2.result:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/set_var.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
tests/mysql_client_test.c:
  Auto merged
mysql-test/r/system_mysql_db.result:
  Update results
scripts/mysql_create_system_tables.sh:
  Merge fix for Bug #7617, making enum fields in grant tables
  case-insensitive.
scripts/mysql_fix_privilege_tables.sql:
  Merge fix for Bug #7617, and fix additional enum/set columns.
sql/sql_acl.cc:
  Hand-merge due to whitespace change
sql/sql_lex.cc:
  Hand-merge bug fix.
2005-02-17 16:16:58 -08:00
unknown
23f786b0ad bug#6958
Fixed that negative arguments to certain integer options wrap around.


mysql-test/r/variables.result:
  Added a test case for bug#6958.
mysql-test/t/variables.test:
  Added a test case for bug#6958.
sql/set_var.cc:
  sys_var_long_ptr::check function was added.
sql/set_var.h:
  Use sys_var_long_ptr::check function for sys_var_long_ptr class.
2005-02-17 15:04:04 +04:00
unknown
91db48e35a Precision Math implementation
BitKeeper/etc/ignore:
  Added client/decimal.c client/my_decimal.cc client/my_decimal.h to the ignore list
2005-02-09 02:50:45 +04:00
unknown
c1d06b3cfa Merge neptunus.homeip.net:/home/msvensson/mysql/mysql-5.0
into neptunus.homeip.net:/home/msvensson/mysql/mysql-5.0-cluster-extra


BitKeeper/etc/logging_ok:
  auto-union
sql/ha_innodb.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
2005-02-04 15:13:45 +01:00
unknown
1497328caf Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/mysql_src/mysql-5.0-clean


sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-02-03 18:55:29 +01:00
unknown
868331406b Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/mysql_src/mysql-5.0-clean


mysql-test/mysql-test-run.sh:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/set_var.h:
  Auto merged
2005-02-03 16:25:57 +01:00
unknown
7636b12f6c WL#1062 "log charset info into all Query_log_event":
we store 7 bytes (1 + 2*3) in every Query_log_event.
In the future if users want binlog optimized for small size and less safe,
we could add --binlog-no-charset (and binlog-no-sql-mode etc): charset info
is something by design optional (even if for now we don't offer possibility to disable it):
it's not a binlog format change.
We try to reduce the number of get_charset() calls in the slave SQL thread to a minimum
by caching the charset read from the previous event (which will often be equal to the one of the current event).
We don't use SET ONE_SHOT for charset-aware repl (we still do for timezones, will be fixed later).
No more errors if one changes the global value of charset vars on master or slave
(as we log charset info in all Query_log_event).
Not fixing Load_log_event as it will be rewritten soon by Dmitri.
Testing how mysqlbinlog behaves in rpl_charset.test.
mysqlbinlog needs to know where charset file is (to be able to convert a charset number found
in binlog (e.g. in User_var_log_event) to a charset name); mysql-test-run needs to pass
the correct value for this option to mysqlbinlog.
Many result udpates (adding charset info into every event shifts log_pos in SHOW BINLOG EVENTS).
Roughly the same job is to be done for timezones :)


client/mysqlbinlog.cc:
  mysqlbinlog needs charsets knowledge, to be able to convert a charset
  number found in binlog to a charset name (to be able to print things
  like this:
  SET @`a`:=_cp850 0x4DFC6C6C6572 COLLATE `cp850_general_ci`;
mysql-test/mysql-test-run.sh:
  tell mysqlbinlog about charsets dir
mysql-test/r/ctype_ucs.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/drop_temp_table.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/insert_select.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/mix_innodb_myisam_binlog.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/mysqlbinlog.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/mysqlbinlog2.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
  The log_pos shift is why the SET INSERT_ID=4 event changes position in the result.
mysql-test/r/rpl_charset.result:
  Running mysqlbinlog to check how it behaves on charset stuff.
  SET ONE_SHOT is now gone.
  Repl of LOAD DATA INFILE is not yet charset-aware (will soon be, when WL#874 is pushed)
  and, anyway result has a dependency on the temp filename (SQL-LOAD-*-[0-9] which is not constant).
  No more errors if one changes global character sets.
mysql-test/r/rpl_error_ignored_table.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_flush_log_loop.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_flush_tables.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_loaddata.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_loaddata_rule_m.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_log.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_max_relay_size.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_relayrotate.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_replicate_do.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_rotate_logs.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_temporary.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_timezone.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/rpl_user_variables.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/r/user_var.result:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
mysql-test/t/rpl_charset.test:
  Running mysqlbinlog to check how it behaves on charset stuff (so, need fixed timestamp).
  SET ONE_SHOT is not printed to binlog anymore, so no need to test if ::exec_event() works ok.
  Repl of LOAD DATA INFILE is not yet charset-aware (will soon be, when WL#874 is pushed)
  and, anyway result has a dependency on the temp filename (SQL-LOAD-*-[0-9] which is not constant).
  No more errors if one changes global character sets.
mysql-test/t/rpl_user_variables.test:
  different binlogging of charsets results in shifted log_pos and
  one added SET @@CHARACTER_SET... per mysqlbinlog run.
sql/log.cc:
  No more SET ONE_SHOT for charsets (remains for TZ until solved with Dmitri).
sql/log_event.cc:
  We now log charset info in each Query_log_event in binlog. It's 2*3 = 6 bytes:
  session character_set_client, session collation_connection, session collation_server.
  Now we would need only one byte per variable, but Bar said 2 is safer for the future.
  When slave or mysqlbinlog reads that info, it needs to get_charset() on these numbers (so, 3 get_charset() calls),
  as most of the time the 6-byte charset info will be equal to the previous event's,
  we cache the previous event's charset and if equal, no need to get_charset().
  As "flags2", SQL_MODE, catalog, autoinc variables, charset info is not a permanent addition:
  in the future we can add options to the master to not log any of these, old 5.0 should be able
  to parse these.
  A little bit of cleanup on autoinc stuff in replication.
  Fixing a bug in Start_log_event_v3::exec_event() where we used rli->relay_log.description_event_for_exec->binlog_version
  while we should use binlog_version (if it's a 3.23 master, that's all that counts; not the fact that the relay log is
  in 5.0 format).
sql/log_event.h:
  binlogging of charset info in each Query_log_event.
sql/mysql_priv.h:
  comment
sql/set_var.cc:
  checks to refuse change of global charset variables are removed: they were needed for 4.1->4.1
  but not for 5.0.3->5.0.3.
  Yes this opens a breach if one does 4.1->5.0.3, where the checks would still be needed. But these checks would need
  reading relay_log.description_event_for_queue, which is currently an object used in many places by the I/O
  thread and only it. So, currently we don't take mutexes for this object, and if we read the object in set_var.cc
  (client thread) we need to add mutexes everywhere, but the replication code is already too broken with mutexes
  now (no consistent use of mutexes); mutex usage in replication should be fixed but preferrably during/after
  multimaster coding as it's going to shuffle mutexes already.
sql/set_var.h:
  Since we don't forbid global change of charset vars for replication/binlogging,
  don't need specific ::check() methods anymore
sql/slave.cc:
  Some little debug info which has nothing to do with charsets.
  Disabling master's charset check when slave I/O thread connects.
  Functions for charset caching/invalidating in the slave SQL thread.
sql/slave.h:
  Cached charset in the slave SQL thread.
2005-02-03 16:22:16 +01:00
unknown
4f1cbb6031 4.1 -> 5.0 merge
BitKeeper/etc/logging_ok:
  auto-union
Build-tools/Do-compile:
  Auto merged
client/mysqladmin.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
configure.in:
  Auto merged
extra/perror.c:
  Auto merged
innobase/buf/buf0rea.c:
  Auto merged
innobase/fil/fil0fil.c:
  Auto merged
innobase/include/rem0rec.ic:
  Auto merged
innobase/include/univ.i:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/ut/ut0ut.c:
  Auto merged
mysql-test/r/derived.result:
  Auto merged
mysql-test/r/func_str.result:
  Simple merge
mysql-test/r/subselect.result:
  Automatic merge
mysql-test/t/derived.test:
  Automatic merge
mysql-test/t/func_str.test:
  Simple merge
mysql-test/t/subselect.test:
  Automatic merge
mysys/my_handler.c:
  Automatic merge
ndb/src/kernel/blocks/backup/Backup.cpp:
  Automatic merge
scripts/make_binary_distribution.sh:
  Automatic merge
scripts/mysql_install_db.sh:
  Automatic merge
sql/examples/ha_archive.cc:
  Simple merge
sql/ha_innodb.cc:
  Automatic merge
sql/item.cc:
  Merge
sql/item_cmpfunc.h:
  Automatic merge
sql/item_func.cc:
  Simple merge
sql/item_func.h:
  Automatic merge
sql/item_strfunc.cc:
  Automatic merge
sql/item_strfunc.h:
  Automatic merge
sql/item_subselect.cc:
  Automatic merge
sql/mysqld.cc:
  Automatic merge
sql/set_var.cc:
  Automatic merge
sql/sql_base.cc:
  Automatic merge
sql/sql_class.cc:
  Automatic merge
sql/sql_class.h:
  Automatic merge
sql/sql_lex.cc:
  Automatic merge
sql/sql_lex.h:
  Automatic merge
sql/sql_parse.cc:
  Automatic merge
sql/sql_select.cc:
  Automatic merge
sql/sql_table.cc:
  Automatic merge
sql/sql_update.cc:
  Simple merge
strings/ctype-big5.c:
  Automatic merge
strings/ctype-bin.c:
  Automatic merge
strings/ctype-gbk.c:
  Automatic merge
strings/ctype-latin1.c:
  Automatic merge
strings/ctype-mb.c:
  Automatic merge
strings/ctype-simple.c:
  Automatic merge
strings/ctype-sjis.c:
  Automatic merge
strings/ctype-tis620.c:
  Automatic merge
strings/ctype-ucs2.c:
  Automatic merge
strings/ctype-utf8.c:
  Automatic merge
vio/viosocket.c:
  Automatic merge
vio/viossl.c:
  Automatic merge
2005-02-03 13:18:30 +02:00
unknown
2b0a3dbe9e Merged "query cache for ndb" to 5.0
BitKeeper/etc/logging_ok:
  auto-union
sql/ha_innodb.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/ha_innodb.h:
  Hand merged
sql/ha_ndbcluster.cc:
  Merge with gathering of stats
sql/sql_cache.cc:
  Use new table def cache
sql/table.h:
  table.h had been cleaned up
2005-02-03 09:33:48 +01:00
unknown
0e50e32480 WL#1967
Support for COMMIT/ROLLBACK optional arguments


innobase/include/trx0roll.h:
  WL#1967
    trx_release_savepoint_for_mysql()
innobase/trx/trx0roll.c:
  WL#1967
    trx_release_savepoint_for_mysql()
mysql-test/r/innodb.result:
  WL#1967
    Test for savepoint release
mysql-test/t/innodb.test:
  WL#1967
    Test for savepoint release
sql/ha_innodb.cc:
  WL#1967
    innobase_release_savepoint_name()
sql/ha_innodb.h:
  WL#1967
    innobase_release_savepoint_name()
sql/handler.cc:
  WL#1967
    ha_release_savepoint_name()
sql/handler.h:
  WL#1967
    ha_release_savepoint_name()
sql/lex.h:
  WL#1967
    New tokens: CHAIN, RELEASE
sql/mysqld.cc:
  WL#1967
    new option: completion-type
sql/set_var.cc:
  WL#1967
    new option: completion-type
sql/sql_class.h:
  WL#1967
    new option: completion-type
sql/sql_lex.h:
  WL#1967
    Support RELEASE SAVEPOINT
    additional flags to support COMMIT/ROLLBACK options
sql/sql_parse.cc:
  WL#1967
    Transaction operations in mysql_endtrans(), begin_trans()
sql/sql_yacc.yy:
  WL#1967
    Support COMMIT/ROLLBACK optional args
2005-02-01 19:48:05 +00:00
unknown
38e395aa32 WL#2269 Enable query cache for NDB
- Added a thread that fetches commit_count for open tables. This
will mean that NDB will not have to be contacted for every use of a cached query. 


sql/ha_ndbcluster.cc:
  Added a thread that periodically will fetch commit_count 
  for open tables and store that value in share. 
  The commit count value is then used when query cache 
  asks if a cached query can be used. 
  The thread activation interval is regulated by the 
  config variable ndb_cache_check_time, it's default value is 0
  which means that NDB is contacted every time a cached query is reused.
sql/ha_ndbcluster.h:
  Added commit_count to share
  Added ndb_cache_check_time
sql/mysqld.cc:
  Added config variable ndb_cache_check_time
sql/set_var.cc:
  Added config variable ndb_cache_check_time
2005-02-01 15:43:08 +01:00
unknown
5df7e7bd71 Merge heikki@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/heikki/mysql-4.1


sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-31 22:30:40 +02:00
unknown
8cac2c0562 Manual merge of fixes for bugs #7899 "CREATE TABLE .. SELECT .. and
CONVERT_TZ() function does not work well together" and bug #7705 
"CONVERT_TZ() crashes with subquery/WHERE on index column" in 5.0
tree.


mysql-test/r/timezone2.result:
  Auto merged
mysql-test/t/timezone2.test:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/set_var.h:
  Auto merged
sql/set_var.cc:
  Manual merge.
sql/sql_lex.cc:
  Ignoring changes in st_lex::unlink_first_table()/link_first_table_back()
  made in 4.1 since they are not applicable to 5.0.
sql/tztime.cc:
  Manual merge.
2005-01-28 10:22:50 +03:00
unknown
bf89dc063a Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-tzbug


sql/item_timefunc.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/tztime.cc:
  Auto merged
2005-01-28 09:32:43 +03:00
unknown
1ea2bc38cf Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-5000


sql/set_var.cc:
  Auto merged
2005-01-27 08:32:46 +01:00
unknown
bf6b46bba9 Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-5000


sql/set_var.cc:
  Auto merged
2005-01-26 21:09:16 +01:00
unknown
6154d76c43 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into patrick-galbraiths-computer.local:/Users/patg/mysql-5.0


sql/field.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-26 11:53:33 -08:00
unknown
20bd0bd6fd Fix for bug #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ() function
does not work well together". Now using simplier and more correct
implementation of st_lex::unlink_first_table()/link_first_table_back() 
(It also nicely handles case when global table list is created because
of implictly used time zone tables). (2nd attempt)

Fix for bug #7705 "CONVERT_TZ() crashes with subquery/WHERE on index
column". Implemented new approach for caching objects for constant
time zone arguments. Now instead of determining whenever these arguments
are constants and performing time zone lookup at fix_fields() stage, we
do it on first get_date() invocation.

Cleanup of global @@time_zone variable handling.


mysql-test/r/timezone2.result:
  Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
  index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
  function does not work well together".
mysql-test/t/timezone2.test:
  Added test for bugs #7705 "CONVERT_TZ() crashes with subquery/WHERE on
  index column" and #7899 "CREATE TABLE .. SELECT .. and CONVERT_TZ()
  function does not work well together".
sql/item_timefunc.cc:
  Item_func_convert_tz():
    New approach for caching objects for constant time zone arguments.
    Now instead of determining whenever these arguments are constants
    and performing time zone lookup at fix_fields() stage, we do it
    on first get_date() invocation. This works better in cases when 
    const_item() for these arguments returns true only on get_date()
    stage but not on fix_fields() stage (e.g. this happens in quries
    with joins or derived tables).
sql/item_timefunc.h:
  Item_func_convert_tz():
    Added from_tz_cached/to_tz_cached members indicating whenever we
    already have Time_zone object representing one of constant time zone
    arguments.
sql/set_var.cc:
  Cleaned up global @@time_zone variable handling. Now we use proper
  locking when we are setting or reading its value.
sql/set_var.h:
  Removed declaration of sys_var_thd_time_zone::get_tz_ptr() method, which
  no longer used.
sql/sql_lex.cc:
  st_lex::unlink_first_table(), st_lex::link_first_table_back():
   Simplify implementation according to Monty's suggestion.
   Instead doing something special if global and local table lists
   are the same, we simply save/restore pointers to first elements
   of both global and local lists (which works even when this lists
   are the same!). This handles nicely the case when we have separate
   global table list becuase time zone tables are implicitly used.
sql/tztime.cc:
  Backport of Monty's fixes from 5.0, which give us nicer error messages
  if we haven't found time zone with such name or its description.
2005-01-26 22:25:02 +03:00
unknown
168f04bdde Merge bk-internal.mysql.com:/home/bk/mysql-5.0
into mysql.com:/home/dlenev/src/mysql-5.0-bg7637


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-26 11:23:14 +03:00
unknown
d61e212f9e Merge heikki@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/heikki/mysql-4.1


sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-25 22:12:22 +02:00
unknown
7ff1db2d62 sql_class.h, set_var.cc, mysqld.cc:
Add settable variables for semi-sync replication


sql/mysqld.cc:
  Add settable variables for semi-sync replication
sql/set_var.cc:
  Add settable variables for semi-sync replication
sql/sql_class.h:
  Add settable variables for semi-sync replication
2005-01-25 22:11:21 +02:00
unknown
2622ed76f3 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into patrick-galbraiths-computer.local:/Users/patg/mysql-5.0


sql/set_var.cc:
  Auto merged
sql/sql_analyse.cc:
  Auto merged
2005-01-25 09:35:57 -08:00
unknown
d31a16d9b2 Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-5000


sql/set_var.cc:
  Auto merged
2005-01-25 09:47:01 +01:00
unknown
409ddae4b8 Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-5.0
into patrick-galbraiths-computer.local:/Users/patg/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/ha_federated.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-24 11:31:21 -08:00
unknown
a82fd1eaec merged
BitKeeper/deleted/.del-sort.c~e2e56b5a37ce86f4:
  Auto merged
client/mysql.cc:
  Auto merged
client/mysqlbinlog.cc:
  Auto merged
client/mysqldump.c:
  Auto merged
client/mysqltest.c:
  Auto merged
myisam/ft_boolean_search.c:
  Auto merged
myisam/mi_packrec.c:
  Auto merged
myisam/sort.c:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
sql/item_create.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_timefunc.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_acl.h:
  Auto merged
sql/sql_analyse.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_db.cc:
  Auto merged
sql/tztime.cc:
  Auto merged
tests/client_test.c:
  Auto merged
2005-01-24 19:41:42 +01:00
unknown
ba3b78d968 Merge serg@bk-internal.mysql.com:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1


mysys/mf_keycache.c:
  Auto merged
sql/item.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/table.cc:
  Auto merged
2005-01-24 15:50:13 +01:00
unknown
8bdb500105 fixes/cleanups according to Coverity report 2005-01-24 15:48:25 +01:00
unknown
0312a01721 Merge mysql.com:/home/mydev/mysql-5.0
into mysql.com:/home/mydev/mysql-5.0-5000


sql/set_var.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-01-24 10:48:52 +01:00
unknown
8d8e0cb539 WL#2126 - Multi_read_range.
Addendum for correct multi_range_count system variable handling.
Fixed a typo.
Added to sys_variables.
Added to init_vars.
2005-01-21 17:38:46 +01:00
unknown
888ee151b5 Merge of fix for BUG#4258 from 4.1.
Needs additional manual merge.


mysys/mf_keycache.c:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_parse.cc:
  Properly resetting all key cache counters.
sql/sql_show.cc:
  Needs manual merge.
2005-01-21 17:38:36 +02:00
unknown
1f6070a4b9 Fix for bug #7637: "Test failure: 'user_limits' on QNX and 64-bit systems"
Made user_limits.test scheduling independant (this solves failure on QNX).

Made sys_var_max_user_conn variable int sized. Changed 
max_user_connections from ulong to uint to be able to use it in 
sys_var_max_user_conn::value_ptr() (solves failures on 64-bit platforms).


mysql-test/r/user_limits.result:
  Made test scheduling independant.
mysql-test/t/user_limits.test:
  Made test scheduling independant.
sql/mysql_priv.h:
  Made max_user_connections to be the same size as
  USER_RESOURCES::user_conn (to be able to use them in
  sys_var_max_user_conn::value_ptr()).
sql/mysqld.cc:
  Made max_user_connections to be the same size as
  USER_RESOURCES::user_conn (to be able to use them in
  sys_var_max_user_conn::value_ptr()).
sql/set_var.cc:
  sys_var::item():
    Added support for int system variables.
sql/set_var.h:
  Made sys_var_max_user_conn to be int sized variable.
2005-01-20 00:54:01 +03:00
unknown
8e1e1e73d8 Final patch for BUG#4285.
This patch collects all previous patches into one.

The main problem was due to that there is are two variables -
dflt_key_cache and sql_key_cache with have more or less duplicate
function. The reson for the bug was that the default value in the key
cache hash was set to dflt_key_cache, then sql_key_cache was set to a
new key cache object, and then dflt_key_cache was set to sql_key_cache
which was different from the dflt_key_cache_var. After sending SIGHUP,
the server was using the original default value for the key cache hash,
which was different from the actual key cache object used for the
default key cache.


include/keycache.h:
  Import patch 4285.diff
mysys/mf_keycache.c:
  Import patch 4285.diff
sql/mysql_priv.h:
  Import patch 4285.diff
sql/mysqld.cc:
  Import patch 4285.diff
sql/set_var.cc:
  Import patch 4285.diff
sql/sql_parse.cc:
  Import patch 4285.diff
sql/sql_show.cc:
  Import patch 4285.diff
2005-01-19 12:55:54 +02:00
unknown
296e12233c change to have_<> variable for federated engine
sql/set_var.cc:
  changed 'have_federated_db' to 'have_federated_engine' for consitency, per Paul Dubois
2005-01-13 13:03:05 -08:00
unknown
c73762dbdf user_limits.result:
Fix test result affected by error message rewording.
errmsg.txt:
  Reword error messages.
set_var.cc:
  Reorder variables.
mysqld.cc:
  Reorder options.


sql/mysqld.cc:
  Reorder options.
sql/set_var.cc:
  Reorder variables.
sql/share/errmsg.txt:
  Reword error messages.
mysql-test/r/user_limits.result:
  Fix test result affected by error message rewording.
2005-01-12 20:38:05 -06:00
unknown
c846af9ba2 Merge
sql/ha_innodb.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  resolve conflicts
2005-01-12 21:03:06 +01:00
unknown
8f61caea0a logging_ok:
Logging to logging@openlogging.org accepted
innodb.result, innodb.test, set_var.cc, mysqld.cc:
  change variable innodb_free_tickets_to_enter to innodb_concurrency_tickets


sql/mysqld.cc:
  change variable innodb_free_tickets_to_enter to innodb_concurrency_tickets
sql/set_var.cc:
  change variable innodb_free_tickets_to_enter to innodb_concurrency_tickets
mysql-test/t/innodb.test:
  change variable innodb_free_tickets_to_enter to innodb_concurrency_tickets
mysql-test/r/innodb.result:
  change variable innodb_free_tickets_to_enter to innodb_concurrency_tickets
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-01-12 20:55:06 +01:00
unknown
e7b9581f36 Merge kite-hub.kitebird.com:/src/extern/MySQL/bk/mysql-4.1
into kite-hub.kitebird.com:/src/extern/MySQL/bk/merge-5.0


sql/set_var.cc:
  Auto merged
2005-01-08 19:46:52 -06:00
unknown
f8f7888b5c set_var.cc:
Whack duplicate variable line. (Affects SHOW VARIABLES.)


sql/set_var.cc:
  Whack duplicate variable line. (Affects SHOW VARIABLES.)
2005-01-08 19:43:15 -06:00
unknown
8a8823d27f Many files:
- Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable


innobase/include/srv0srv.h:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
innobase/srv/srv0srv.c:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
mysql-test/r/innodb.result:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
mysql-test/t/innodb.test:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
sql/ha_innodb.cc:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
sql/ha_innodb.h:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
sql/mysqld.cc:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
sql/set_var.cc:
  - Create innodb_thread_concurrency as dynamic variable
  - Add innodb_thread_sleep_delay variable
  - Add innodb_free_tickets_to_enter variable
2005-01-08 15:01:37 +01:00
unknown
b58eba6373 Merge kite-hub.kitebird.com:/src/extern/MySQL/bk/mysql-4.1
into kite-hub.kitebird.com:/src/extern/MySQL/bk/merge-5.0


sql/set_var.cc:
  Auto merged
2005-01-07 14:18:38 -06:00
unknown
e167837a63 set_var.cc:
Reorder variables to properly alphabetize SHOW VARIABLES output.


sql/set_var.cc:
  Reorder variables to properly alphabetize SHOW VARIABLES output.
2005-01-07 14:17:08 -06:00
unknown
2f05ec8f05 set_var.cc, mysqld.cc, ha_innodb.h, innodb.test, innodb.result:
Create new innodb_sync_spin_loops variable


mysql-test/r/innodb.result:
  Create new innodb_sync_spin_loops variable
mysql-test/t/innodb.test:
  Create new innodb_sync_spin_loops variable
sql/ha_innodb.h:
  Create new innodb_sync_spin_loops variable
sql/mysqld.cc:
  Create new innodb_sync_spin_loops variable
sql/set_var.cc:
  Create new innodb_sync_spin_loops variable
2005-01-05 12:43:48 +01:00
unknown
73c9909750 Merge with 4.1 tree to get fix for INSERT IGNORE ... ON DUPLICATE KEY
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
Makefile.am:
  Auto merged
client/mysqltest.c:
  Auto merged
configure.in:
  Auto merged
innobase/log/log0recv.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
mysql-test/r/cast.result:
  Auto merged
mysql-test/r/drop.result:
  Auto merged
mysql-test/r/func_time.result:
  Auto merged
mysql-test/r/ps_2myisam.result:
  Auto merged
mysql-test/r/ps_3innodb.result:
  Auto merged
mysql-test/r/ps_4heap.result:
  Auto merged
mysql-test/r/ps_5merge.result:
  Auto merged
mysql-test/r/ps_6bdb.result:
  Auto merged
mysql-test/r/ps_7ndb.result:
  Auto merged
mysql-test/r/type_datetime.result:
  Auto merged
mysql-test/t/drop.test:
  Auto merged
mysql-test/t/func_time.test:
  Auto merged
ndb/include/ndb_global.h.in:
  Auto merged
ndb/src/kernel/blocks/suma/Suma.cpp:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/item_timefunc.h:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/log_event.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_repl.cc:
  Auto merged
sql/sql_repl.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql-common/my_time.c:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/time.cc:
  Auto merged
innobase/row/row0upd.c:
  Trivial merge
mysql-test/t/func_concat.test:
  Keep local code
mysql-test/t/multi_update.test:
  auto merge
sql/ha_ndbcluster.cc:
  manual merge
sql/item_timefunc.cc:
  manual merge
sql/mysql_priv.h:
  manual merge
sql/sql_class.h:
  manual merge
sql/sql_delete.cc:
  manual merge
sql/sql_insert.cc:
  manual merge
sql/sql_lex.cc:
  manual merge
sql/sql_lex.h:
  manual merge
sql/sql_load.cc:
  manual merge
sql/sql_parse.cc:
  manual merge
sql/sql_table.cc:
  manual merge
sql/sql_update.cc:
  manual merge
2005-01-03 23:04:52 +02:00
unknown
f92ec09043 set_var.cc:
Silence compiler warning.


sql/set_var.cc:
  Silence compiler warning.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-01-02 15:10:08 -06:00
unknown
b99bea6704 manually merged
configure.in:
  Auto merged
client/mysqldump.c:
  Auto merged
innobase/buf/buf0rea.c:
  Auto merged
innobase/dict/dict0load.c:
  Auto merged
innobase/fil/fil0fil.c:
  Auto merged
innobase/include/fil0fil.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/include/trx0trx.h:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/row/row0ins.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
libmysqld/lib_sql.cc:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/ctype_ucs.result:
  Auto merged
mysql-test/r/func_str.result:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/r/grant_cache.result:
  Auto merged
mysql-test/r/merge.result:
  Auto merged
mysql-test/r/ndb_blob.result:
  Auto merged
mysql-test/r/ps_1general.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/r/timezone2.result:
  Auto merged
mysql-test/t/ctype_ucs.test:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
mysql-test/t/merge.test:
  Auto merged
mysql-test/t/multi_update.test:
  Auto merged
mysql-test/t/mysqldump.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
ndb/src/ndbapi/NdbBlob.cpp:
  Auto merged
ndb/src/ndbapi/NdbConnection.cpp:
  Auto merged
ndb/src/ndbapi/NdbDictionaryImpl.cpp:
  Auto merged
ndb/src/ndbapi/NdbOperationDefine.cpp:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_myisammrg.cc:
  Auto merged
sql/ha_myisammrg.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql-common/client.c:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/strfunc.cc:
  Auto merged
sql/unireg.cc:
  Auto merged
vio/vio.c:
  Auto merged
vio/viosocket.c:
  Auto merged
2004-12-31 15:26:24 +01:00
unknown
efe5d60e89 Manual merge.
client/mysqltest.c:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/r/information_schema.result:
  Auto merged
sql/lex.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-12-31 12:48:27 +03:00
unknown
c4c2c7bceb Merge bk-internal:/home/bk/mysql-5.0
into intelp4d.mysql.com:/users/vtkachenko/bk/mysql-5.0


BitKeeper/etc/logging_ok:
  auto-union
innobase/srv/srv0srv.c:
  Auto merged
mysql-test/r/variables.result:
  Auto merged
mysql-test/t/variables.test:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/lex.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-12-31 09:00:34 +01:00
unknown
12a215b083 Merge with global tree
BitKeeper/etc/logging_ok:
  auto-union
client/mysqltest.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/include/dict0dict.h:
  Auto merged
libmysql/errmsg.c:
  Auto merged
myisam/mi_open.c:
  Auto merged
myisam/mi_write.c:
  Auto merged
mysql-test/r/grant.result:
  Auto merged
mysql-test/r/merge.result:
  Auto merged
mysql-test/r/show_check.result:
  Auto merged
mysql-test/t/derived.test:
  Auto merged
mysql-test/t/merge.test:
  Auto merged
mysql-test/t/show_check.test:
  Auto merged
mysql-test/t/system_mysql_db_fix.test:
  Auto merged
scripts/mysql_install_db.sh:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sp.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.cc:
  Auto merged
sql/table.h:
  Auto merged
sql/tztime.h:
  Auto merged
2004-12-31 00:50:30 +02:00
unknown
f174d5a241 Manual merge of patch implementing WL#1339 with main tree.
client/mysqltest.c:
  Auto merged
mysql-test/r/system_mysql_db.result:
  Auto merged
sql/lex.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/structs.h:
  Auto merged
mysql-test/r/grant.result:
  Manual merge
scripts/mysql_create_system_tables.sh:
  Manual merge
scripts/mysql_fix_privilege_tables.sql:
  Manual merge
sql/mysql_priv.h:
  Manual merge
sql/mysqld.cc:
  Manual merge
sql/sql_parse.cc:
  Manual merge
2004-12-29 22:35:16 +03:00
unknown
05b709fc77 WL#1339 "Add per account max_user_connections limit (maximum number
of concurrent connections for the same account)"

Added support of account specific max_user_connections limit. Made all
user limits to be counted per account instead of the old behavior,
which was per user/host accounting. Added option which enables the old
behavior. Added testing of these to the test suite.

(After review version).


client/mysqltest.c:
  Extended mysqltest to be able to handle connect() statements for which
  error is expected.
  
  - Added replace_dynstr_append() utility function.
  - added connect_n_handle_errors() function which connects with server
    without retries and handles errors as if "connect" was usual
    statement.
  - do_connect(): added ability to handle connects which are expected
    to return an error.
  - run_query_normal(): Moved all expected-error-handling code to separate
    normal_handle_error()/normal_handle_no_error() functions to be able
    to reuse them in connect_n_handle_errors().
mysql-test/r/grant.result:
  Fixed test results since one more column to mysql.user was added.
mysql-test/r/system_mysql_db.result:
  Fixed test results since one more column to mysql.user was added.
scripts/mysql_create_system_tables.sh:
  Added max_user_connections column to mysql.user table for storing
  new maximal concurrent connections per account limit.
scripts/mysql_fix_privilege_tables.sql:
  Added max_user_connections column to mysql.user table for storing
  new maximal concurrent connections per account limit.
sql/lex.h:
  Added MAX_USER_CONNECTIONS symbol used for specifying
  maximum number of concurrent connections per account.
sql/mysql_priv.h:
  Added declaration of opt_old_style_user_limits variable which is defined
  in sql/mysqld.cc used in sql/sql_parse.cc.
sql/mysqld.cc:
  Added "old-style-user-limits" option which forces user limits to behave
  in old way i.e. to be counted per user/host pair instead of per account.
  Added comment describing mqh_used variable.
sql/set_var.cc:
  Added sys_var_max_user_conn class which implements support for the new 
  behavior of max_user_connections variable. Now the global instance of
  this variable holds default maximum number of concurrent connections per
  account (as it was before) and the session instance gives read-only
  access to account-specific version of this limit.
sql/set_var.h:
  Added sys_var_max_user_conn class which implements support for the new 
  behavior of max_user_connections variable. Now the global instance of
  this variable holds default maximum number of concurrent connections per
  account (as it was before) and the session instance gives read-only
  access to account-specific version of this limit.
sql/sql_acl.cc:
  Added support for account-specific MAX_USER_CONNECTIONS limit.
  Tweaked USER_RESOURCES and their handling for better clarity.
sql/sql_parse.cc:
  Added support for account-specific MAX_USER_CONNECTIONS (maximum number
  of concurrent connections per account) limit. Changed default behavior
  of all user limits to be per account instead of per user+host.
  '--old-style-user-limits' option was added to enable the old behavior.
  Made maximum number of connections per hour to be independant on the
  value of global max_user_connections variable.
sql/sql_yacc.yy:
  Added support of new MAX_USER_CONNECTIONS limit to grammar.
  Renamed USER_RESOURCES::connections member to conn_per_hour and bits
  member to specified_limits. Also enum is used instead of naked numbers
  when we are working with specified_limits.
sql/structs.h:
  USER_RESOURCES struct:
   - Added user_conn member to store the maximum number of concurrent 
     connections for an account. Renamed connections member to 
     conn_per_hour for less ambiguity.
   - Renamed member 'bits' to 'specified_limits' for the sake of clarity.
     The member was used as a flag indicating which limits were mentioned
     in GRANT clause.
   - Added comments.
  USER_CONN struct:
   - Removed unused user_len member.
   - Added comments.
2004-12-29 20:30:37 +03:00