Commit graph

509 commits

Author SHA1 Message Date
unknown
686d0ba155 Add support for slave_compressed_protocol, slave_load_tmpdir, and
slave_skip_errors in SHOW VARIABLES. (Bug #7800)


sql/structs.h:
  Add SHOW_SLAVE_SKIP_ERRORS
sql/set_var.cc:
  Add slave_compressed_protocol, slave_load_tmpdir, slave_skip_errors to list
  of variables.
mysql-test/t/rpl_variables.test:
  Add test for additional slave-related variables
mysql-test/r/rpl_variables.result:
  Update results
sql/sql_show.cc:
  Handle showing slave_skip_errors
2005-05-07 06:55:47 -07:00
unknown
54d57ffd2f Merge
BitKeeper/etc/logging_ok:
  auto-union
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/item.h:
  SCCS merged
2005-05-05 20:10:50 +05:00
unknown
6de14a23f7 A lot of fixes to Precision math
Mostly about precision/decimals of the results of the operations


include/decimal.h:
  decimal interface changed a little
sql/field.cc:
  a lot of precision/decimals related changes to the Field_new_decimal
sql/field.h:
  Field_new_decimal interface changed
sql/ha_ndbcluster.cc:
  f->precision should be used here
sql/item.cc:
  precision/decimals counting related changes
sql/item.h:
  precision/decimals counting related changes
sql/item_cmpfunc.cc:
  precision/decimals counting related changes
sql/item_cmpfunc.h:
  precision/decimals counting related changes
sql/item_func.cc:
  precision/decimals counting related changes
sql/item_func.h:
  precision/decimals counting related changes
sql/item_sum.cc:
  precision/decimals counting related changes
sql/item_sum.h:
  precision/decimals counting related changes
sql/my_decimal.cc:
  precision/decimals counting related changes
sql/my_decimal.h:
  precision/decimals counting related changes
sql/mysqld.cc:
  precision/decimals counting related changes
sql/set_var.cc:
  precision/decimals counting related changes
sql/sp_head.cc:
  dbug_decimal_print was replaced with dbug_decimal_as_string
sql/sql_class.h:
  div_precincrement variable added
sql/sql_parse.cc:
  precision/decimals counting related changes
sql/sql_select.cc:
  precision/decimals counting related changes
sql/sql_show.cc:
  Field::representation_length was removed
strings/decimal.c:
  decimal_actual_fraction was introduced
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-05-05 20:06:49 +05:00
unknown
af12ff6568 Approximative fixes for BUG#2610,2611,9100 i.e. WL#2146 binlogging/replication of routines (stored procs and functions).
Approximative, because it's using our binlogging way (what we call "query"-level) and this is not as good as record-level binlog (5.1) would be. It imposes several
  limitations to routines, and has caveats (which I'll document, and for which the server will try to issue errors but that is not always possible).
  Reason I don't propagate caller info to the binlog as planned is that on master and slave
  users may be different; even with that some caveats would remain.


mysql-test/mysql-test-run.sh:
  In the testsuite we know what we do, we are not creating nasty routines, and breaking binlog is ok except in rpl_sp.
mysql-test/r/blackhole.result:
  Updating results now that 4.1 has been merged
mysql-test/valgrind.supp:
      Some suppressions for Valgrind (useful on my machine Suse 9.1);
      this is just adding to the already existing suppressions of pthread and dl.
sql/item_func.cc:
      Don't binlog the substatements when executing a function. If the function
      is declared to modify data and does not complete, warning "broken binlog".
      Note that SELECT myfunc() will not be binlogged even if myfunc() updates data (will be documented);
      but INSERT INTO t VALUES(myfunc()) will be binlogged (what decides is if the caller
      gets binlogged; the function changes nothing to binlogging).
sql/log_event.cc:
      Just making functions which can be re-used when we binlog more strings
      in status_vars in Query_log_event (e.g. one day "user", "host").
sql/log_event.h:
  comment
sql/mysql_priv.h:
      --log-bin-trust-routine-creators
sql/mysqld.cc:
      --log-bin-trust-routine-creators
sql/set_var.cc:
      --log-bin-trust-routine-creators
sql/share/errmsg.txt:
  error messages to warn about problems with routines and binlog
sql/slave.cc:
      If in a routine, replication table inclusion/exclusion rules always answer "replicate!" (see comment in code).
sql/sp.cc:
      If binlog is on: errors if one wants to create a non-deterministic update routine
      (repeatability problem - note that the test is not perfect for functions) or does not have SUPER (because routines can easily
      be made to destroy slave's data with just CREATE ROUTINE and EXECUTE priv on master).
      --log-bin-trust-routine-creators removes these errors.
      Binlogging of CREATE PROCEDURE|FUNCTION.
sql/sql_acl.cc:
      No thd==0 in tables_ok().
sql/sql_parse.cc:
      Binlogging of CALL (and not of the substatements of the SP).
      If SP returns error, we don't binlog it (see comment); we push warning in this case.
      Binlogging of ALTER|DROP PROCEDURE|FUNCTION with safety messages.
2005-05-05 14:20:53 +02:00
unknown
194298265f Merge heikki@bk-internal.mysql.com:/home/bk/mysql-5.0
into hundin.mysql.fi:/home/heikki/mysql-5.0


sql/ha_innodb.cc:
  Auto merged
sql/handler.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-04-26 17:57:15 +03:00
unknown
f5c3843c37 Fixes for BUG#10039 "MEMORY engine is reported as HEAP",
BUG#9738 "SHOW VARIABLES still displays the deprecated 'log_update' in 5.0",
BUG#9542 "MySQL dies with signal 11 when it is using non-existent location of binary logs"



mysql-test/r/create.result:
  MEMORY, not HEAP
mysql-test/r/ps_1general.result:
  order changed in SHOW STORAGE ENGINES
mysql-test/r/variables.result:
  MEMORY, not HEAP
sql/handler.cc:
  the array of storage engine names is searched in index order, so we must put the preferred name
  before the alias so that the preferred name is printed by MySQL instead of the alias.
sql/log.cc:
  TC_LOG::open(): don't try to open if the index (relevant only for binlog TC log)
  could not be opened.
sql/set_var.cc:
  --log-update is deprecated and replaced by --log-bin so don't show log_update in SHOW VARIABLES.
2005-04-23 00:05:05 +02:00
unknown
273d78e115 Many files:
Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3


sql/ha_innodb.cc:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/handler.cc:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/mysqld.cc:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/set_var.cc:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/sql_repl.cc:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/ha_innodb.h:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
sql/handler.h:
  Semi-synchronous replication for InnoDB type tables; before telling the client that a commit has been processed, wait that the replication thread has returned from my_net_send() where it sends the binlog to the slave; note that TCP/IP, even with the TCP_NODELAY option does not guarantee that the slave has RECEIVED the data - this is just heuristic at the moment; this is useful in failover: in almost all cases, every transaction that has returned from the commit has been sent and processed in the slave, which makes failover to the slave simpler if the master crashes; the code does not work yet as is, because MySQL should call innobase_report_binlog_offset_and_commit() in a commit; we will most probably return that call to 5.0.x, to make InnoDB Hot Backup and group commit to work again; XA code broke them temporarily in 5.0.3
2005-04-20 19:27:46 +03:00
unknown
2be63528bc Merge with 4.1
scripts/mysql_create_system_tables.sh:
  Auto merged
scripts/mysql_fix_privilege_tables.sql:
  Auto merged
sql/set_var.cc:
  Auto merged
support-files/mysql.server.sh:
  Auto merged
sql/ha_ndbcluster.cc:
  Merge
sql/handler.cc:
  Merge
sql/handler.h:
  Merge
sql/mysqld.cc:
  Merge
2005-04-16 04:35:54 +03:00
unknown
0327d05c69 Fixed core dump with long timezone names
Don't abort on bootstrap if a wrong --default-storage-engine is specified


sql/handler.cc:
  Combined code
sql/mysqld.cc:
  Fixed core dump with long timezone names
  Don't abort on bootstrap if a wrong --default-storage-engine is specified
  Don't print strange messages if one sends 'kill' to a mysqld --bootstrap
sql/set_var.cc:
  Indentaion change
2005-04-16 03:40:33 +03:00
unknown
43b1125cb9 Adding --innodb_fast_shutdown=2 which shuts down InnoDB faster than the default "1":
most InnoDB threads are not terminated properly and the buffer pool is not flushed
to disk. Still no committed transaction is lost as we flush the logs to disk.
InnoDB does crash recovery at startup after this shutdown.
Using this shutdown in testsuite (mysql-test-run --mysqld=--innodb_fast_shutdown=2) saved 3 minutes (13% of total time).


innobase/include/srv0srv.h:
  srv_fast_shutdown now int to allow 3 values, replacing the srv_fast_shutdown/srv_very_fast_shutdown combo
innobase/log/log0log.c:
  srv_very_fast_shutdown -> (srv_fast_shutdown == 2)
innobase/srv/srv0srv.c:
  srv_very_fast_shutdown -> (srv_fast_shutdown == 2)
innobase/srv/srv0start.c:
  moving message to the InnoDB internal code (like "InnoDB: Starting shutdown" is)
  instead of ha_innodb.cc. That's to have ut_print_timestamp().
sql/ha_innodb.cc:
  As innodb_fast_shutdown is now settable, srv_fast_shutdown must be
  set at shutdown, not at startup.
sql/ha_innodb.h:
  innobase_fast_shutdown now ulong to accept 3 values
sql/mysqld.cc:
  Making the "very fast" InnoDB shutdown accessible to users, by passing
  --innodb-fast-shutdown=2 (disabled on Netware)
sql/set_var.cc:
  innodb_fast_shutdown now settable on the fly (global variable).
  So that user can decide to do a normal/fast/fastest shutdown
  just before doing it.
2005-04-15 18:00:38 +02:00
unknown
cd0a50bf34 remove the rest of isam/merge references
fix a race condition in TC_LOG_BINLOG::unlog


include/Makefile.am:
  remove the rest of isam/merge references
include/config-win.h:
  unused and abused macro removed
include/my_pthread.h:
  unused and abused macro removed
include/my_sys.h:
  MY_IGNORE_BADFD flag
include/mysql_embed.h:
  remove the rest of isam/merge references
mysql-test/r/replace.result:
  remove the rest of isam/merge references
mysql-test/t/replace.test:
  remove the rest of isam/merge references
mysql-test/t/xa.test:
  comment
mysys/my_sync.c:
  MY_IGNORE_BADFD flag
sql/handler.cc:
  remove the rest of isam/merge references
sql/log.cc:
  fix a race condition in TC_LOG_BINLOG::unlog
  preparation for binlog group commit
sql/mysql_priv.h:
  remove duplicates
sql/mysqld.cc:
  remove the rest of isam/merge references
sql/opt_range.cc:
  remove the rest of isam/merge references
sql/set_var.cc:
  hide unused variables. simplify sync_binlog code
sql/sql_base.cc:
  remove the rest of isam/merge references
sql/sql_class.h:
  cleanup
2005-04-05 13:17:49 +02:00
unknown
6b46566532 Merging support for blackhole up to 5.0.
configure.in:
  Auto merged
BitKeeper/deleted/.del-acinclude.m4~f4ab416bac5003:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/Makefile.am:
  Edited for adding blackhole.
sql/handler.cc:
  Edited for adding blackhole.
sql/handler.h:
  Edited for blackhole.
2005-03-25 10:36:58 -08:00
unknown
fe3beec4a4 Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1
into zim.(none):/home/brian/mysql/mysql-4.1


configure.in:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-03-24 16:08:48 -08:00
unknown
8a99997d60 Additional storage engine called "blackhole". Customer request, and for that matter a Zawodny request. With this you can alter table to a type of table that would never store data. Its a /dev/null for a database.
acinclude.m4:
  New macro rule for ha_blackhole.
configure.in:
  Rule enabling blackhole engine
sql/Makefile.am:
  Additions to Makefile for blackhole engine
sql/handler.cc:
  Ifdef enable code for blackhole (and message for "what does this thing do").
sql/handler.h:
  Flag for storage engine type.
sql/mysql_priv.h:
  Added blackhole type.
sql/mysqld.cc:
  Updates for building backhole.
sql/set_var.cc:
  Show variable for blackhole engine
2005-03-22 16:10:39 -08:00
unknown
a2bf9d52ee Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-5.0
into production.mysql.com:/nfstmp1/guilhem/mysql-5.0-prod


BitKeeper/etc/logging_ok:
  auto-union
sql/log.cc:
  Auto merged
sql/log_event.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-03-22 00:28:33 +01:00
unknown
ac46bf77ae Last part of WL#1062: better replication of timezones: no more use
of SET ONE_SHOT; storing tz info directly in event (if this info is needed),
it's now allowed to have different global tz on master and slave.


client/mysqlbinlog.cc:
  we need MAX_TIME_ZONE_NAME_LENGTH when processing log_event.h, and it's declared in mysql_priv.h
mysql-test/r/rpl_timezone.result:
  result update
mysql-test/t/rpl_timezone-slave.opt:
  Now that we can have different global value of timezone on master and slave, let's test it.
mysql-test/t/rpl_timezone.test:
  Tests of the new replication of timezones: checking the output of mysqlbinlog,
  replication of CONVERT_TZ().
sql/ha_innodb.cc:
  No very fast shutdown on Netware (anyway it's disabled on all platforms,
  but this is so that we don't forget to keep it disabled on Netware in the future).
sql/log.cc:
  No more need to write SET ONE_SHOT to binlog for character set and timezone
  (as we store this info  directly nin the Query_log_event now).
sql/log_event.cc:
  Exclude ::write() methods if MYSQL_CLIENT.
  Storing timezone info in the Query_log_event in master. Re-reading it in slave.
  Small code cleanups. I plan to not store the end 0 of catalog in binlog
  events soon.
sql/log_event.h:
  replication of time zones: a place for tz info in Query_log_event,
  in LAST_EVENT_INFO. Plus if we are compiling a client, we don't need
  the ::write() methods, so keeping them out (of mysqlbinlog.cc;
  keeping them in, resulted in problem that mysqlbinlog does not know Timezone
  structure).
sql/mysql_priv.h:
  moving this define from tztime.h (tztime.h has things which are
  too much for a client like mysqlbinlog).
sql/set_var.cc:
  It's now allowed to change global value of charset or timezone even if using binlogging
  or if being a slave.
  Making CONVERT_TZ(,,@@session.time_zone) replicate.
sql/set_var.h:
  these ::check()s are not needed anymore (changing global charset
  or timezone is now allowed even if binlogging or slave)
sql/slave.cc:
  No more need to check for same global timezone if master is 5.x
  (ok, strictly speaking if it is > 5.0.3 but this is alpha).
sql/slave.h:
  a function to wrap settings of charset to default.
sql/tztime.cc:
  Adaptation of my_tz_find() to the case where it's not called from inside
  a query (i.e. cannot join its tz tables to the query's ones): this variant
  opens the tz tables itself, reads from them, and closes them. This is presently
  only used by the slave SQL thread (when it sets the tz before executing a query).
sql/tztime.h:
  declaration of new function, plus moving symbol to mysql_priv.h
  for easier usage in mysqlbinlog (Dmitri, pardon me).
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2005-03-22 00:26:12 +01:00
unknown
892a6138ff Eliminate warnings noticed by VC7. This includes fixing my_mmap() on
Windows to call CreateFileMapping() with correct arguments, and
propogating the introduction of query_id_t to everywhere query ids are
passed around. (Bug #8826)


libmysql/libmysql.c:
  Make implicit cast explicit
myisam/mi_open.c:
  Make cast of value to smaller data size explicit
myisam/mi_packrec.c:
  Cast file size (my_off_t) to size_t for mmap
mysys/my_mmap.c:
  Fix Windows version of my_mmap() to use the right parameters
  for call to CreateFileMapping()
sql/field.cc:
  Use temporary value of correct type
sql/field.h:
  Use query_id_t for query_id value
sql/ha_berkeley.cc:
  Fix flag check
sql/ha_innodb.h:
  Use query_id_t for query_id value
sql/handler.cc:
  Explain opt_using_transactions calculation, and add cast
sql/handler.h:
  Fix forward declaration of COND
sql/item.cc:
  Fix val_bool() tests of val_int() to avoid implicit cast
sql/item_cmpfunc.cc:
  Fix typo in switch label
sql/item_func.cc:
  Make implicit cast explicit
sql/item_strfunc.cc:
  Now that query_id is a query_id_t, need to cast it to a ulong here
sql/item_subselect.cc:
  Fix test of value
sql/log.cc:
  Cast my_off_t used for file size to size_t for memory allocation
  Also cast my_off_t when using it to calculate the number of pages for TC log
  Cast total_ha_2pc to uchar when saving it
sql/mysql_priv.h:
  Move up query_id definition so it can be used more widely
sql/opt_range.cc:
  Add unused delete operator to prevent compiler warning
sql/set_var.cc:
  Cast value for max_user_connections
sql/sql_cache.cc:
  Remove unused label
sql/sql_class.h:
  Fix query id values to be of type query_id_t
sql/sql_db.cc:
  Move variable only used inside #ifdef within the #ifdef
sql/sql_help.cc:
  Remove unused label
sql/sql_insert.cc:
  Use query_id_t for query id values
sql/sql_lex.h:
  Add unused delete operator to prevent compiler warning
sql/sql_select.cc:
  Remove unused variable
  Make cast of value explicit
sql/sql_select.h:
  Use query_id_t for query id values
sql/sql_table.cc:
  Make comparison to function pointer explicit
sql/sql_update.cc:
  Use query_id_t for query id values
sql/table.h:
  Use query_id_t for query id values
strings/ctype-simple.c:
  Add cast of long value to (char) in expression
strings/ctype-ucs2.c:
  Add cast of long value to (char) in expression
strings/ctype-utf8.c:
  Make cast to smaller size explicit
2005-03-18 16:12:25 -08:00
unknown
17791f9500 Merge 4.1 -> 5.0
heap/hp_create.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/olap.result:
  Auto merged
mysql-test/t/func_str.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/key.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_select.h:
  Auto merged
sql/sql_string.h:
  Auto merged
client/mysqldump.c:
  Manual merge
mysql-test/r/func_gconcat.result:
  Manual merge
mysql-test/r/func_str.result:
  Manual merge
mysql-test/t/func_gconcat.test:
  Manual merge
sql/ha_heap.cc:
  Manual merge
sql/sql_select.cc:
  Manual merge
2005-03-17 16:51:07 +03:00
unknown
9245168429 Fix for bug #7100: relay_log_space_max missing from SHOW VARIABLES 2005-03-16 15:57:57 +03:00
unknown
ef2ca9781c Merged WL#2269 to mysql-5.0
sql/ha_ndbcluster.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/ha_ndbcluster.cc:
  Manual merge
2005-03-15 15:22:40 +01:00
unknown
aa5dba42ef WL#2269 Enable query cache for NDB part 2
-This is mostly fixes for correct behaviour when using query cache + transactions + the thread that
fetches commit count from NDB at regular intervals. The major fix is to add a
list in thd_ndb, that keeps a list of NDB_SHARE's that were modified by
transaction and then "clearing" them in ndbcluster_commit.


mysql-test/r/ndb_cache2.result:
  Updated test cases for the ndb_util thread, more simultaneous tables and more tesst
mysql-test/t/ndb_cache2.test:
  Updated test cases for the ndb_util thread, more simultaneous tables and more advanced tesst
sql/ha_ndbcluster.cc:
  Add table changed during transaction to list of changed tables in Thd_ndb, this list is then used in ndbcluster_commit to invalidate the cached commit_count in share
  Fix so that ndb_util_thread uses milliseconds "sleeps"
  Changed so that ndb_commit_count uses the commit_count from share if available
sql/ha_ndbcluster.h:
  Add commit_count_lock to NBD_SHARE, use for detecting simultaneous attempts to update commit_count
  Add list of tables changed by transaction to Thd_ndb
  Change check_ndb_connection to take thd as argument, use current_thd as default
  Added m_rows_changed variable to keep track of if this handler has modified any records within the transaction
sql/set_var.cc:
  Change format of code
  Sort sys__ variables in aplha order
2005-03-15 15:03:25 +01:00
unknown
54baac55b6 Merge mysql.com:/home/psergey/mysql-4.1-bug8510
into mysql.com:/home/psergey/mysql-5.0-bug8510


mysql-test/r/ansi.result:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-03-15 09:29:54 +03:00
unknown
155cfb3942 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/psergey/mysql-4.1-bug8510


sql/set_var.cc:
  Auto merged
2005-03-15 04:09:41 +03:00
unknown
d9910c5ee7 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-5.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-MERGE/mysql-5.0


sql/set_var.cc:
  Auto merged
2005-03-14 17:27:10 +03:00
unknown
a569b08375 set_var.cc, mysqld.cc, ha_innodb.cc, sql_class.h:
Add a settable session variable innodb_support_xa; setting it to 0 can save up to 10 % of CPU time and 150 bytes of space in each undo log
trx0trx.h, trx0undo.c, trx0trx.c, trx0roll.c:
  Enable XA if innodb_support_xa is not set to 0; make prepare to do log fsync's according to innodb_flush_log_at_trx_commit


innobase/trx/trx0roll.c:
  Enable XA if innodb_support_xa is not set to 0; make prepare to do log fsync's according to innodb_flush_log_at_trx_commit
innobase/trx/trx0trx.c:
  Enable XA if innodb_support_xa is not set to 0; make prepare to do log fsync's according to innodb_flush_log_at_trx_commit
innobase/trx/trx0undo.c:
  Enable XA if innodb_support_xa is not set to 0; make prepare to do log fsync's according to innodb_flush_log_at_trx_commit
innobase/include/trx0trx.h:
  Enable XA if innodb_support_xa is not set to 0; make prepare to do log fsync's according to innodb_flush_log_at_trx_commit
sql/sql_class.h:
  Add a settable session variable innodb_support_xa; setting it to 0 can save up to 10 % of CPU time and 150 bytes of space in each undo log
sql/ha_innodb.cc:
  Add a settable session variable innodb_support_xa; setting it to 0 can save up to 10 % of CPU time and 150 bytes of space in each undo log
sql/mysqld.cc:
  Add a settable session variable innodb_support_xa; setting it to 0 can save up to 10 % of CPU time and 150 bytes of space in each undo log
sql/set_var.cc:
  Add a settable session variable innodb_support_xa; setting it to 0 can save up to 10 % of CPU time and 150 bytes of space in each undo log
2005-03-13 12:49:39 +02:00
unknown
15b2175095 Fix for bug #8701: Server crash on 'set @@transaction_alloc_block_size=...' 2005-03-04 14:29:05 +03:00
unknown
8fdc684b0b Merge
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/slave.cc:
  SCCS merged
sql/slave.h:
  SCCS merged
2005-03-02 14:46:19 +01:00
unknown
d7e0784c65 Fix for BUG#8325 "Deadlock in replication thread stops replication":
in slave SQL thread: if a transaction fails because of InnoDB deadlock or innodb_lock_wait_timeout exceeded,
optionally retry the transaction a certain number of times (new variable --slave_transaction_retries).


sql/mysql_priv.h:
  new var slave_transaction_retries
sql/mysqld.cc:
  new variable slave_transaction_retries. Plus fixing a typo.
sql/set_var.cc:
  new global variable slave_transaction_retries (will be one per subslave, when we have multimaster).
sql/slave.cc:
  Slave SQL thread: if a transaction fails because of InnoDB deadlock or innodb_lock_wait_timeout exceeded,
  optionally retry the transaction a certain number of times (--slave_transaction_retries).
sql/slave.h:
  new RELAY_LOG_INFO::trans_retries.
2005-03-02 11:29:48 +01:00
unknown
dcdbfa6527 merge
BitKeeper/etc/logging_ok:
  auto-union
include/mysql_com.h:
  Auto merged
ndb/src/mgmsrv/MgmtSrvr.cpp:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-24 06:24:46 +01:00
unknown
196ee96ed2 Fix badly spelled symbol. 2005-02-23 13:15:03 -06:00
unknown
5a442d6af6 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/ha_ndbcluster.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-23 15:54:22 +01:00
unknown
2c1e12c2c2 Merge 4.1->5.0
client/mysqldump.c:
  Auto merged
mysql-test/r/mysqldump.result:
  Auto merged
mysql-test/r/rpl_charset.result:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
mysql-test/t/rpl_charset.test:
  Manual merge
sql/log_event.cc:
  Manual merge
2005-02-22 22:40:34 +01:00
unknown
6f6bf32afa Merge mysql.com:/home/bkroot/mysql-4.1 into mysql.com:/home/bk/b6662-4.1
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-02-22 13:22:34 +01:00
unknown
7d766fdbeb BUG#6662: Changes after Guilhems and Sergs review 2005-02-22 12:40:31 +01:00
unknown
edaf33a14e BUG#6662: Importing mysqldumps should not show any warnings of level "notes". 2005-02-21 18:40:28 +01:00
unknown
39840baadd Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/item_func.h:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-02-18 13:16:25 +01:00
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
c082848897 A "fix" for problem discovered in BUG#8510: remove ONLY_FULL_GROUP_BY mode from ANSI mode, as currently
ONLY_FULL_GROUP_BY mode is overly restrictive.


mysql-test/r/ansi.result:
  A "fix" for problem discovered in BUG#8510: remove ONLY_FULL_GROUP_BY mode from ANSI mode.
mysql-test/t/ansi.test:
  A "fix" for problem discovered in BUG#8510: remove ONLY_FULL_GROUP_BY mode from ANSI mode.
sql/set_var.cc:
  A "fix" for problem discovered in BUG#8510: remove ONLY_FULL_GROUP_BY mode from ANSI mode.
2005-02-17 07:12:31 +03:00
unknown
810d558f97 Merge
sql/filesort.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_func.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-11 22:30:37 +01:00
unknown
7185c070d0 Condition pushdown v.2 2005-02-11 22:05:24 +01: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
af97b55308 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/filesort.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-02-01 10:05:22 +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
c085930fa2 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/ha_ndbcluster.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-01-26 11:34:18 +01: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
78edb8a569 Merge
sql/filesort.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-17 09:44:34 +01: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
6cacf67b90 Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2005-01-13 10:49:01 +01: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
88e845067b Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


sql/set_var.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-01-10 09:31:17 +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
15d7da2b3d Merge mskold@bk-internal.mysql.com:/home/bk/mysql-5.0-ndb
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-5.0-ndb


ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
sql/filesort.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-01-07 15:34:25 +01: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
3d0875cb3e Merge
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2005-01-03 15:20:06 +01: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
unknown
2634a7f850 Merge
ndb/src/ndbapi/NdbDictionaryImpl.hpp:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
sql/handler.h:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/ha_ndbcluster.cc:
  SCCS merged
2004-12-29 10:02:03 +01:00
unknown
af22d870fa Many files:
tabs replaced
ha_innodb.cc:
  Comments removed


innobase/include/que0que.h:
  tabs replaced
innobase/include/sync0rw.h:
  tabs replaced
innobase/include/sync0sync.h:
  tabs replaced
innobase/include/sync0sync.ic:
  tabs replaced
innobase/row/row0sel.c:
  tabs replaced
innobase/srv/srv0srv.c:
  tabs replaced
innobase/sync/sync0rw.c:
  tabs replaced
innobase/sync/sync0sync.c:
  tabs replaced
sql/ha_innodb.cc:
  Comments removed
sql/lex.h:
  tabs replaced
sql/set_var.cc:
  tabs replaced
sql/sql_parse.cc:
  tabs replaced
sql/sql_yacc.yy:
  tabs replaced
2004-12-24 13:31:21 +01:00
unknown
40d7e74efd logging_ok:
Logging to logging@openlogging.org accepted
sql_yacc.yy, sql_parse.cc, sql_lex.h, lex.h:
  Implements the SHOW MUTEX STATUS command
set_var.cc, mysqld.cc, mysql_priv.h:
  Added new GLOBAL variable timed_mutexes
ha_innodb.h:
  New function innodb_mutex_show_status
ha_innodb.cc:
  Added new innodb variables in SHOW STATUS
  Implements the SHOW MUTEX STATUS command
innodb.test, innodb.result:
  Added new row_lock_waits status variables tests.
variables.test, variables.result:
  test new variable timed_mutexes
ut0ut.c:
  New function ut_usectime.
sync0sync.c:
  Mutex counting.
sync0rw.c:
  New mutex parameters initialization.
srv0srv.c:
  Counting row lock waits
row0sel.c, row0mysql.c:
  Setting row_lock or table_lock state to thd.
que0que.c:
  Added default no_lock_state to thd.
univ.i:
  Added UNIV_SRV_PRINT_LATCH_WAITS debug define
sync0sync.ic:
  Count mutex using.
sync0sync.h:
  Added new parameters to mutex structure for counting.
sync0rw.h:
  Added new parameters to rw_create_func.
srv0srv.h:
  Added new innodb varuables to SHOW STATUS.
que0que.h:
  Added thread lock states.


innobase/include/que0que.h:
  Added thread lock states.
innobase/include/srv0srv.h:
  Added new innodb varuables to SHOW STATUS.
innobase/include/sync0rw.h:
  Added new parameters to rw_create_func.
innobase/include/sync0sync.h:
  Added new parameters to mutex structure for counting.
innobase/include/sync0sync.ic:
  Count mutex using.
innobase/include/univ.i:
  Added UNIV_SRV_PRINT_LATCH_WAITS debug define
innobase/que/que0que.c:
  Added default no_lock_state to thd.
innobase/row/row0mysql.c:
  Setting row_lock or table_lock state to thd.
innobase/row/row0sel.c:
  Setting row_lock or table_lock state to thd.
innobase/srv/srv0srv.c:
  Counting row lock waits
innobase/sync/sync0rw.c:
  New mutex parameters initialization.
innobase/sync/sync0sync.c:
  Mutex counting.
innobase/ut/ut0ut.c:
  New function ut_usectime.
mysql-test/r/variables.result:
  test new variable timed_mutexes
mysql-test/r/innodb.result:
  Added new row_lock_waits status variables tests.
mysql-test/t/variables.test:
  test new variable timed_mutexes
mysql-test/t/innodb.test:
  Added new row_lock_waits status variables tests.
sql/ha_innodb.cc:
  Added new innodb variables in SHOW STATUS
  Implements the SHOW MUTEX STATUS command
sql/ha_innodb.h:
  New function innodb_mutex_show_status
sql/lex.h:
  Implements the SHOW MUTEX STATUS command
sql/mysql_priv.h:
  Added new GLOBAL variable timed_mutexes
sql/mysqld.cc:
  Added new GLOBAL variable timed_mutexes
sql/set_var.cc:
  Added new GLOBAL variable timed_mutexes
sql/sql_lex.h:
  Implements the SHOW MUTEX STATUS command
sql/sql_parse.cc:
  Implements the SHOW MUTEX STATUS command
sql/sql_yacc.yy:
  Implements the SHOW MUTEX STATUS command
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-12-24 12:13:32 +01:00
unknown
8d11c01c59 WL#2126 - Multi_read_range.
Added the required structures and functions for
handing over multiple key ranges to the table handler.


include/my_base.h:
  WL#2126 - Multi_read_range.
  Moved key range flags from sql/opt_range.h to here.
  Added the multi-range structure.
sql/handler.cc:
  WL#2126 - Multi_read_range.
  Added the new table handler methods.
sql/handler.h:
  WL#2126 - Multi_read_range.
  Added a new table flag.
  Added a declaration for the handler buffer.
  Added new elements to class handler.
  Added new function declarations.
sql/mysqld.cc:
  WL#2126 - Multi_read_range.
  Added an option to set new system variable 'multi_range_count'.
sql/opt_range.cc:
  WL#2126 - Multi_read_range.
  Added initialization for the new class members.
  Added initialization for the extended get_next().
  Added de-initialization for the allocated buffers.
  Added a buffer allocation method.
  Added an inner loop to collect multiple ranges.
  Adapted range collection loops to the new initialization.
sql/opt_range.h:
  WL#2126 - Multi_read_range.
  Moved key range flags from here to include/my_base.h.
  Added new elements to class QUICK_RANGE_SELECT.
  Added a copy constructor.
sql/records.cc:
  WL#2126 - Multi_read_range.
  Added a call of the allocation method.
sql/set_var.cc:
  WL#2126 - Multi_read_range.
  Added the new system variable 'multi_range_count'.
sql/sql_class.h:
  WL#2126 - Multi_read_range.
  Added the new system variable 'multi_range_count'.
2004-12-23 21:45:10 +01:00