Commit graph

15161 commits

Author SHA1 Message Date
unknown
6da9623b17 Merge mysql.com:/home/bk/mysql-4.1
into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
2004-10-01 18:28:44 +02:00
unknown
527604641d client_test.test:
Temporarely disabled client_test test
  Use MASTER_MYSOCK to get socket path


mysql-test/t/client_test.test:
  Temporarely disabled client_test test
2004-10-01 18:27:24 +02:00
unknown
8a8d4163bc Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1


sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
2004-10-01 16:17:04 +00:00
unknown
4f42bc6f32 Fix for bug #5730 (Query cache crashes mysql)
here i deleted the recursion from the querycache's memory allocation


sql/sql_cache.cc:
  Query_cache::allocate_data_chain rewritten with no recursion
2004-10-01 20:49:36 +05:00
unknown
ed80a84f44 Fix for bug#5782: Don't choose the plan that accesses table with index_prev if the handler doesn't support it (see also ChangeSet@1.2039) 2004-10-01 15:47:56 +00:00
unknown
29a62c1129 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-ryan


sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2004-10-01 18:55:17 +04:00
unknown
7b51154461 Support for TIMESTAMP columns holding NULL values. Unlike all other
column types TIMESTAMP is NOT NULL by default, so in order to have 
TIMESTAMP column holding NULL valaues you have to specify NULL as
one of its attributes (this needed for backward compatibility).

Main changes:
Replaced TABLE::timestamp_default_now/on_update_now members with
TABLE::timestamp_auto_set_type flag which is used everywhere
for determining if we should auto-set value of TIMESTAMP field 
during this operation or not. We are also use Field_timestamp::set_time()
instead of handler::update_timestamp() in handlers.


mysql-test/r/type_timestamp.result:
  Added test for TIMESTAMP columns which are able to store NULL values.
mysql-test/t/type_timestamp.test:
  Added test for TIMESTAMP columns which are able to store NULL values.
sql/field.cc:
  Added support for TIMESTAMP fields holding NULL values.
  We don't need Field_timestamp::set_timestamp_offsets() anymore.
  Instead we need Field_timestamp::get_auto_set_type() function
  which will convert TIMESTAMP auto-set type stored in Field in 
  unireg_check to value from timestamp_auto_set_type_enum.
  (We can't replace this function with additional Field_timestamp member
  and some code in constructor because then we will have troubles
  with Field::new_field() method).
  We should also set field to not null in Field_timestamp::set_time() now.
sql/field.h:
  Added support for TIMESTAMP fields holding NULL values.
  We don't need Field_timestamp::set_timestamp_offsets() anymore.
  Instead we need Field_timestamp::get_auto_set_type() function,
  which will convert TIMESTAMP auto-set type stored in Field in 
  unireg_check to value from timestamp_auto_set_type_enum.
  We also have to support NULL values in Field_timestamp::get_timestamp()
  function.
sql/field_conv.cc:
  Added comment clarifying behavior in case of TIMESTAMP fields which are
  able to store NULL values.
sql/ha_berkeley.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_heap.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_innodb.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_isam.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_isammrg.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_myisam.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_myisammrg.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/ha_ndbcluster.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now for determining 
  if we should auto-set value of TIMESTAMP field during this operation.
  We are also use Field_timestamp::set_time() instead of 
  handler::update_timestamp().
sql/handler.cc:
  handler::update_timestamp() is no longer needed since now we use
  Field_timestamp::set_time() instead.
  (we can't use handler::update_timestamp() anyway since field position
  only is not enough for TIMESTAMP fields which are able to store NULLs)
sql/handler.h:
  handler::update_timestamp() is no longer needed since now we use
  Field_timestamp::set_time() instead.
sql/item_timefunc.cc:
  Since now TIMESTAMP fields can hold NULL values we should take this into
  account.
sql/sql_base.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now. 
  (Here we use Field_timestamp::get_auto_set_type() to setup its value
   before further statement execution).
sql/sql_insert.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now.
sql/sql_load.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now.
sql/sql_parse.cc:
  Added support for TIMESTAMP fields holding NULL values.
  We should distinguish NULL default values and non-specified default
  values for such fields (because latter could mean DEFAULT NOW()
  ON UPDATE NOW() in some cases).
sql/sql_show.cc:
  Added support for TIMESTAMP fields holding NULL values.
  Unlike all other fields these are NOT NULL by default
  so we have to specify NULL attribute explicitly for them.
sql/sql_table.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now.
sql/sql_update.cc:
  Now we use TABLE::timestamp_field_type instead of 
  TABLE::timestamp_default_now/on_update_now.
sql/sql_yacc.yy:
  Added support for TIMESTAMP fields holding NULL values.
  Unlike all other fields these are NOT NULL by default
  (so we have to set NOT_NULL_FLAG properly for them).
sql/table.h:
  Added timestamp_auto_set_type enum which values are used for indicating
  during which operations we should automatically set TIMESTAPM field
  value to current timestamp.
  TABLE: Replaced timestamp_default_now/on_update_now members with
  timestamp_auto_set_type flag (Now when TIMESTAMP field are able to 
  store NULL values, single position of field in record is not enough 
  for updating this field anyway).
2004-10-01 18:54:06 +04:00
unknown
e5f2eba586 Merge dellis@bk-internal.mysql.com:/home/bk/mysql-4.1
into goetia.(none):/home/dellis/mysqlab/bk/mysql-4.1
2004-10-01 08:22:12 -05:00
unknown
0db72d6e33 Merge mskold@build.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1
2004-10-01 14:57:56 +02:00
unknown
33dcc14d68 Added index cardinality check 2004-10-01 14:57:17 +02:00
unknown
44d855e7a8 logging_ok:
Logging to logging@openlogging.org accepted
sql_acl.cc, grant.test, grant.result:
  BUG 5831 Changed mysql_revoke_all() to successfully delete all privileges for a user in one pass.


mysql-test/r/grant.result:
  BUG 5831 Changed mysql_revoke_all() to successfully delete all privileges for a user in one pass.
mysql-test/t/grant.test:
  BUG 5831 Changed mysql_revoke_all() to successfully delete all privileges for a user in one pass.
sql/sql_acl.cc:
  BUG 5831 Changed mysql_revoke_all() to successfully delete all privileges for a user in one pass.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-10-01 07:50:26 -05:00
unknown
4103f23150 Changed test to be independent on scan order 2004-10-01 14:23:31 +02:00
unknown
dc3f3ce694 delete.result, delete.test:
A fix (bug #5733: Table handler error with self-join multi-table DELETE).
records.cc:
  A fix (bug #5733: Table handler error with self-join multi-table DELETE).


sql/records.cc:
  ]A fix (bug #5733: Table handler error with self-join multi-table DELETE).
mysql-test/t/delete.test:
  A fix (bug #5733: Table handler error with self-join multi-table DELETE).
mysql-test/r/delete.result:
  A fix (bug #5733: Table handler error with self-join multi-table DELETE).
2004-10-01 16:23:54 +05:00
unknown
9e6d10146c Merge marko@build.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/j/mysql-4.1


innobase/btr/btr0btr.c:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/row/row0ins.c:
  Auto merged
innobase/row/row0row.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/row/row0upd.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/ha_innodb.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2004-10-01 14:17:05 +03:00
unknown
fb1b8476bd bug#5349 ALTER TABLE corrupts TEXT (and blob?) 2004-10-01 11:16:49 +00:00
unknown
bff40d61ae Added more comments on the code and made some code polishing.
sql/ha_innodb.cc:
  Added more comments and some polishing.
2004-10-01 13:32:44 +03:00
unknown
2c049a83aa Merge mskold@build.mysql.com:/home/bk/mysql-4.1
into mysql.com:/usr/local/home/marty/MySQL/test/mysql-4.1


sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
2004-10-01 12:08:04 +02:00
unknown
a418a35ceb InnoDB: quote identifiers according to MySQL settings (Bug #5292)
innobase/btr/btr0btr.c:
  Add parameter to ut_print_name() and dict_index_name_print() calls
innobase/btr/btr0cur.c:
  Add parameter to dict_index_name_print() calls
innobase/buf/buf0buf.c:
  Add parameter to dict_index_name_print() calls
innobase/dict/dict0crea.c:
  Add parameter to ut_print_name() calls
innobase/dict/dict0dict.c:
  Add parameter to ut_print_name() calls
  Update documentation links to http://dev.mysql.com
innobase/dict/dict0load.c:
  Add parameter to ut_print_name() calls
innobase/fil/fil0fil.c:
  Use ut_print_filename()
  Update links to documentation to http://dev.mysql.com
innobase/ibuf/ibuf0ibuf.c:
  Replaced printf(...) with fprintf(stderr,...)
innobase/include/dict0dict.h:
  Added trx parameters
innobase/include/row0row.h:
  Added trx parameter
innobase/include/row0sel.h:
  Added trx parameter
innobase/include/row0upd.h:
  Added trx parameters
innobase/include/row0upd.ic:
  Added trx parameter for dict_index_name_print()
innobase/include/trx0rec.h:
  Added trx parameter
innobase/include/ut0ut.h:
  Added ut_print_filename()
  Added trx parameter to ut_print_name() and ut_print_namel()
innobase/lock/lock0lock.c:
  Added parameter to dict_index_name_print() and ut_print_name() calls
innobase/page/page0page.c:
  Added parameter to dict_index_name_print() calls
innobase/pars/pars0opt.c:
  Added parameter to dict_index_name_print() call
innobase/pars/pars0pars.c:
  Added parameter to upd_field_set_field_no() call
innobase/row/row0ins.c:
  Added trx parameters
innobase/row/row0mysql.c:
  Added trx parameters
innobase/row/row0purge.c:
  Added trx parameter
innobase/row/row0row.c:
  Added trx parameter
innobase/row/row0sel.c:
  Added trx parameters
innobase/row/row0umod.c:
  Added trx parameters
innobase/row/row0upd.c:
  Added trx parameters
innobase/trx/trx0rec.c:
  Added trx parameters
innobase/trx/trx0roll.c:
  Added parameter to ut_print_name() calls
innobase/ut/ut0ut.c:
  Added ut_print_filename()
  Added trx parameter to ut_print_namel() and ut_print_name() calls
sql/ha_innodb.cc:
  Added trx parameters
  Rewrote mysql_get_identifier_quote_char()
sql/mysql_priv.h:
  Added get_quote_char_for_identifier()
sql/sql_show.cc:
  Added get_quote_char_for_identifier()
  Removed append_quoted_simple_identifier()
  Make append_identifier() use get_quote_char_for_identifier()
2004-10-01 11:51:59 +03:00
unknown
d70df1b2ed Merge jlindstrom@build.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/jan/mysql-4.1
2004-10-01 08:39:34 +03:00
unknown
a72c25b297 restore of auto increment bug#5786 2004-10-01 02:38:03 +00:00
unknown
3f31ebd59b client_test.test:
Use TESTS_BINDIR to point out bin dir for "client_test"
mysql-test-run.sh:
  Export TESTS_BINDIR to be used from --exec


mysql-test/mysql-test-run.sh:
  Export TESTS_BINDIR to be used from --exec
mysql-test/t/client_test.test:
  Use TESTS_BINDIR to point out bin dir for "client_test"
2004-10-01 00:32:42 +02:00
unknown
f5f55979f4 bug#5782 2004-09-30 21:36:25 +00:00
unknown
8a63a0b587 bug#5824 2004-09-30 21:12:46 +00:00
unknown
bfcbca22ef Merge mysql.com:/home/bk/mysql-4.1
into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
2004-09-30 19:41:39 +02:00
unknown
064f4bf4b1 mysql_protocols.test:
--exec now checks return code, make all command lines succeed


mysql-test/t/mysql_protocols.test:
  --exec now checks return code, make all command lines succeed
2004-09-30 19:40:33 +02:00
unknown
6882e87f15 Solve compile problem for 4.0.22 on hpita2. (Backport of a 4.1 change)
sql/mysqld.cc:
  Replace 'sete_id(_)' calls by 'setre_id(-1,_)' calls, as the former
  have no prototypes on some platforms. (Backport of a 4.1 change)
2004-09-30 19:05:33 +02:00
unknown
341d8aaee3 Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1-ndb
into neptunus.(none):/home/magnus/mysql/mysql-4.1-ndb


BitKeeper/etc/logging_ok:
  auto-union
sql/ha_ndbcluster.cc:
  Auto merged
sql/ha_ndbcluster.h:
  Auto merged
2004-09-30 17:15:28 +02:00
unknown
4caff3fedd Merge msvensson@bk-internal.mysql.com:/home/bk/mysql-4.1-ndb
into neptunus.(none):/home/magnus/mysql/mysql-4.1-ndb


sql/ha_ndbcluster.cc:
  Auto merged
2004-09-30 17:08:49 +02:00
unknown
f6f7af7a70 Merge fixes
mysql-test/mysql-test-run.sh:
  Auto merged
ndb/src/ndbapi/ndb_cluster_connection.cpp:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/ha_ndbcluster.cc:
  Merge: ndb_discover_tables should no longer be called when server is starting
2004-09-30 16:12:28 +02:00
unknown
8bb1d2ae9b added configuration warnings for arbitration and node groups 2004-09-30 14:12:27 +00:00
unknown
927179ecd4 InnoDB: implement innodb_max_purge_lag
innobase/include/srv0srv.h:
  Added srv_max_purge_lag and srv_dml_needed_delay
innobase/include/trx0sys.h:
  Added trx_sys->rseg_history_len
innobase/row/row0mysql.c:
  Added row_mysql_delay_if_needed()
innobase/srv/srv0srv.c:
  Added srv_max_purge_lag and srv_dml_needed_delay
innobase/trx/trx0purge.c:
  Update trx_sys->rseg_history_len.
  Calculate srv_dml_needed_delay from srv_max_purge_lag
  and trx_sys->rseg_history_len.
innobase/trx/trx0rseg.c:
  Initialize trx_sys->rseg_history_len
sql/ha_innodb.h:
  Add srv_max_purge_lag
sql/mysqld.cc:
  Add parameter innodb_max_purge_lag
sql/set_var.cc:
  Add global variable innodb_max_purge_lag
2004-09-30 15:54:19 +03:00
unknown
92e7d03eaa Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/dlenev/src/mysql-4.1-bg4302


sql/item.cc:
  Auto merged
2004-09-30 16:30:34 +04:00
unknown
53edc92cd0 Final solution for bug# 4302 "Ambiguos order by when renamed column is
identical to another in result"
According to SQL standard queries like 
"select t1.a as col from t1, t2 order by a" should return an error if
both tables contain field a.


mysql-test/r/order_by.result:
  Updated test to conform SQL-standard.
mysql-test/t/order_by.test:
  Updated test to conform SQL-standard.
sql/item.cc:
  find_item_in_list() has now one more out parameter which is not used
  in item.cc functions.
sql/mysql_priv.h:
  find_item_in_list(): Added boolean out parameter "unaliased" which
  indicates that we have found field by its original name and not by
  its alias in item (select) list.
sql/sql_base.cc:
  find_item_in_list(): Added boolean out parameter "unaliased" which
  indicates that we have found field by its original name and not by
  its alias in item (select) list. This means that additional check is
  required to ensure there will be no ambiguity if we would search for this
  field in all tables.
sql/sql_select.cc:
  find_order_in_list(): If we have found field in select list by its
  original name and not by its alias then we should perform additional
  check to ensure that there will be no ambiguity if we will search for
  this field in all tables. Also small cleanup.
2004-09-30 16:28:17 +04:00
unknown
b7c3591b32 WL#1424 Added more advanced test cases for autodiscovery
mysql-test/mysql-test-run.sh:
  Create and export an NDB_CONNECSTRING that can be used for NDB_TOOLS to connect to NDB
mysql-test/r/ndb_autodiscover.result:
  Added more advanced test cases for ndb_autodiscover
mysql-test/t/ndb_autodiscover.test:
  Added more advanced test cases for ndb_autodiscover
2004-09-30 14:20:14 +02:00
unknown
1dbc71afaa Made innodb_autoextend_increment accessible as a global variable.
sql/ha_innodb.cc:
  Removed variable innobase_auto_extend_increment
  (access srv_auto_extend_increment directly)
sql/ha_innodb.h:
  Removed variable innobase_auto_extend_increment
  (access srv_auto_extend_increment directly)
sql/mysqld.cc:
  Moved innodb_autoextend_increment to alphabetically correct position.
  Replaced innobase_auto_extend_increment with srv_auto_extend_increment.
sql/set_var.cc:
  Added innodb_autoextend_increment
2004-09-30 12:31:41 +03:00
unknown
d0477d870a Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb-merge


mysql-test/mysql-test-run.sh:
  Auto merged
2004-09-30 08:44:11 +00:00
unknown
cb8a461e2c Merge jlindstrom@build.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/jan/mysql-4.1
2004-09-29 08:22:37 +03:00
unknown
f1521dec91 cosmetic 2004-09-28 23:42:34 +00:00
unknown
edc0bbc56e multiple servers for cluster 2004-09-28 23:40:20 +00:00
unknown
1dd9333fb1 Merge
sql/ha_ndbcluster.cc:
  Auto merged
mysql-test/mysql-test-run.sh:
  SCCS merged
2004-09-28 19:22:04 +00:00
unknown
bc6207eef1 mysql-test-run.sh:
test


mysql-test/mysql-test-run.sh:
  test
2004-09-28 19:12:44 +00:00
unknown
0a98e3903d ha_ndbcluster.cc:
testing foce send


sql/ha_ndbcluster.cc:
  testing foce send
2004-09-28 19:11:50 +00:00
unknown
22cca35841 Some of the recently pushed prepared statements
tests were disabled due to failures caused by floating point conversion
issues on optimized builds).


mysql-test/include/ps_conv.inc:
  Disable some of the tests for the test suite to pass on an optimized 
  build (floating point issues...).
mysql-test/include/ps_query.inc:
  Disable some of the tests for the test suite to pass on an optimized 
  build (floating point issues...).
mysql-test/r/ps_2myisam.result:
  Fix test results.
mysql-test/r/ps_3innodb.result:
  Fix test results.
mysql-test/r/ps_4heap.result:
  Fix test results.
mysql-test/r/ps_5merge.result:
  Fix test results.
mysql-test/r/ps_6bdb.result:
  Fix test results.
mysql-test/r/ps_7ndb.result:
  Fix test results.
2004-09-28 21:44:42 +04:00
unknown
18fe537cf1 Merge mysql.com:/home/bk/mysql-4.1
into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax
2004-09-28 19:44:41 +02:00
unknown
1ddc28a471 Merge tulin@bk-internal.mysql.com:/home/bk/mysql-4.1
into poseidon.ndb.mysql.com:/home/tomas/mysql-4.1-ndb
2004-09-28 17:44:40 +00:00
unknown
e44be2922e ha_ndbcluster.cc:
typo


sql/ha_ndbcluster.cc:
  typo
2004-09-28 17:41:58 +00:00
unknown
e8c4af1293 set correct lockmode in all reads...
move lockmode from scan operation to operation
    added read tuple with lock mode


ndb/include/ndbapi/NdbIndexOperation.hpp:
  added read tuple with lock mode
ndb/include/ndbapi/NdbOperation.hpp:
  move lockmode from scan operation to operation
ndb/include/ndbapi/NdbScanOperation.hpp:
  move lockmode from scan operation to operation
ndb/src/ndbapi/NdbIndexOperation.cpp:
  added read tuple with lock mode
ndb/src/ndbapi/NdbOperationDefine.cpp:
  added read tuple with lock mode
sql/ha_ndbcluster.cc:
  set correct lockmode in all reads...
  moved lockmode from scan operatoin to operation
2004-09-28 17:35:07 +00:00
unknown
a393792452 added 2 masters for ndb tests 2004-09-28 17:04:30 +00:00
unknown
131c3f705a mysql-test-run.sh:
Make timer an option


mysql-test/mysql-test-run.sh:
  Make timer an option
2004-09-28 18:25:57 +02:00
unknown
fa450407b1 Merge mysql.com:/home/bk/mysql-4.1
into mysql.com:/users/kboortz/daily/work/mysql-4.1-vax


client/mysqltest.c:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
2004-09-28 16:43:05 +02:00