Commit graph

617 commits

Author SHA1 Message Date
unknown
f203bebafc assert.h needed for my_dbug.h now is included in my_dbug.h, where it for
some reason wasn't included before.
A lot of files cleaned up from #include <assert.h>


client/mysqlbinlog.cc:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
client/mysqldump.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
heap/hp_hash.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
include/m_string.h:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
include/my_dbug.h:
  include assert.h needed for DBUG_ASSERT
libmysql/libmysql.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/ftdefs.h:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_delete.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_dynrec.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_key.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_open.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_search.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
myisam/mi_write.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/mf_iocache.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/mf_iocache2.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/mf_keycache.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/my_bitmap.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/my_gethostbyname.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/my_getopt.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/my_pthread.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/my_seek.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/rijndael.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
mysys/thr_alarm.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
sql-common/client.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
sql/mysql_priv.h:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
sql/sql_string.cc:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
strings/ctype-simple.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
strings/ctype-ucs2.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
strings/my_vsnprintf.c:
  assert.h needed for my_dbug.h now is included in
  my_dbug.h, where it for some reason wasn't included before.
2004-06-10 23:58:39 +04:00
unknown
bfe7ebee3c Merge gbichot@213.136.52.20:/home/bk/mysql-4.1
into mysql.com:/home/mysql_src/mysql-4.1-874


sql/ha_innodb.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2004-06-10 16:42:07 +02:00
unknown
7849222652 WL#1689 "Map OPTIMIZE TABLE to ALTER TABLE for InnoDB"
exactly it's mapped to "ALTER TABLE t; ANALYZE TABLE t;"


sql/ha_innodb.cc:
  ::optimize() now returns "try ALTER and then analyze" instead of only analyze.
sql/handler.h:
  new code to say "try alter and analyze".
sql/mysql_priv.h:
  as we may now use mysql_alter_table() internally to ::optimize we must prevent it from talking to the client.
  New function mysql_recreate_table() which is the same as ALTER TABLE t;
sql/sql_parse.cc:
  the big block removed here is moved into mysql_recreate_table().
sql/sql_table.cc:
  In mysql_admin_table(): if the handler returns HA_ADMIN_TRY_ALTER,
  we close the table, recreate it, then open it and analyze it.
  This is currently used only for OPTIMIZE TABLE of an InnoDB table.
2004-06-10 16:41:24 +02:00
unknown
7ece3c7491 WL#1595 "Optionally fsync() the binlog after every statement":
New option --sync-binlog=x (and global settable variable) which will fsync the binlog
after every x-th disk write to it. That is, if in autocommit mode, after every x-th statement
written to the binlog; if using transactions, after every x-th transaction written to the binlog.
x==0 means no fsync. x==1 is the slowest.
There is no test added for this, I have just checked that it works as --sync-binlog=1 dramatically
slows down mysqld.
Made sync-frm a global settable variable.


sql/log.cc:
  every sync_binlog_period-th disk binlog write, we fsync the binlog
sql/mysql_priv.h:
  new option sync_binlog
sql/mysqld.cc:
  new option sync_binlog
sql/set_var.cc:
  Making sync-frm a settable global option.
  New settable global option sync-binlog.
sql/set_var.h:
  new global settable variable sync_binlog needs a specific ::update because it needs to take LOCK_log
2004-06-10 15:56:13 +02:00
unknown
ec1c9ef7b6 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2004-06-07 23:50:59 +04:00
unknown
1d4ee7f81c Post review fixes for "SQL Syntax for Prepared Statements".
mysql-test/r/ps.result:
  Better error message
mysys/my_error.c:
  Comments added
sql/item.cc:
  Moved a chunk of code from sql_prepare.cc to Item_param::set_from_user_var
sql/item.h:
  Moved a chunk of code from sql_prepare.cc to Item_param::set_from_user_var
sql/item_func.cc:
  Code cleanup
sql/mysql_priv.h:
  Code cleanup
sql/sql_class.cc:
  Code cleanup
sql/sql_parse.cc:
  use user_var_entry::val_str in PREPARE stmt FROM @var.
sql/sql_prepare.cc:
  Post-review fixes and code cleanup.
sql/sql_yacc.yy:
  Coding style fixes
2004-06-07 12:09:10 +04:00
unknown
895efc07ac Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1
into brian-akers-computer.local:/Users/brian/mysql/mysql-4.1


BitKeeper/etc/logging_ok:
  auto-union
acconfig.h:
  Auto merged
acinclude.m4:
  Auto merged
configure.in:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2004-06-05 10:43:22 -07:00
unknown
f0beff16f3 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/share/romanian/errmsg.txt:
  Auto merged
2004-06-03 20:54:46 +04:00
unknown
9626b4d073 * New, binlog-aware character sets support in SQL Syntax for Prepared statements.
* The prepared statement query is put into binary log on execution only if it is an update query.


sql/item_func.cc:
  New, binlog-aware character sets support in SQL Syntax for Prepared statements.
sql/mysql_priv.h:
  New, binlog-aware character sets support in SQL Syntax for Prepared statements.
2004-06-01 17:27:40 +04:00
unknown
7ec57e23fd WL#1163 (Make spatial code separable for other parts)
--with-geometry and
--with-embedded-privilege-control
configure switches added


acconfig.h:
  necessary lines added
myisam/mi_open.c:
  #include added
mysql-test/t/gis-rtree.test:
  test modified to take HAVE_GEOMETRY in account
mysql-test/t/gis.test:
  test modified to take HAVE_GEOMETRY in account
sql/mysql_priv.h:
  option's variables added
sql/mysqld.cc:
  option's handling added
sql/set_var.cc:
  option's descriptions added
2004-05-27 20:31:30 +05:00
unknown
1ceef15c40 Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1
into brian-akers-computer.local:/Users/brian/mysql/mysql-4.1


BitKeeper/etc/logging_ok:
  auto-union
configure.in:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/handler.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
2004-05-25 14:53:55 -07:00
unknown
4cca7db746 Manually merged, requirees more merging
sql/mysql_priv.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-05-25 08:15:50 +04:00
unknown
093d62922b Support for character set conversion in binary protocol: another go
after Monty's review.
- Item_param was rewritten.
- it turns out that we can't convert string data to character set of
  connection on the fly, because they first should be written to the binary
  log.
  To support efficient conversion we need to rewrite prepared statements
  binlogging code first.


include/my_global.h:
  Macro swap(a, b, c) was renamed to resolve name conflict with
  String::swap() method.
include/my_sys.h:
  Added declaration of escape_string_for_mysql()
include/mysql_com.h:
  Removed and moved back: a macro which is visible to libmysql user but
  has sence only in prepared statement protocol implementation.
isam/_search.c:
  swap -> swap_variables
isam/test2.c:
  swap -> swap_variables
libmysql/libmysql.c:
  - sub_escape_string moved to mysys/charset.c to be visible in sql/
  - few cleanups
myisam/mi_test2.c:
  swap -> swap_variables
mysys/charset.c:
  sub_escape_string was moved from libmysql.c to be able to use it in sql/
  code.
mysys/my_chsize.c:
  rename: swap -> swap_variables
mysys/my_compress.c:
  swap -> swap_variables
mysys/my_handler.c:
  swap -> swap_variables
sql/field.cc:
  Field::store_time refactored to use TIME_to_string function from time.cc
sql/item.cc:
  New implementation of Item_param class:
  added support for character sets conversion.
sql/item.h:
  Item_param:
  - 'state' member introduced instead of many boolean variables.
  - put ltime, int_value and real_value into union to save space.
  - remove unimplemented members
  - set_value renamed to set_str
sql/item_timefunc.cc:
  Refactored to use functions from time.cc
sql/lock.cc:
  rename: swap -> swap_variables
sql/mysql_priv.h:
  - added declarations for TIME_to_ulonglong_*, TIME_to_string functions
  - const specifiers for make_date, make_time, make_datetime arguments
sql/opt_range.cc:
  rename: swap -> swap_variables
sql/protocol.cc:
  - added character set conversion support to binary protocol.
  - Protocol::convert changed to point at shared buffer in THD.
    This lets us use one convert buffer for binary and simple protocol.
    The same buffer is used for client->server conversions in prepared
    statements code.
  - string conversion code refactored to Protocol::store_string_aux function.
  - few more comments
sql/protocol.h:
  - Protocol::convert now points at THD::convert_buffer: we want to share one
    buffer between all protocol implementations.
sql/sql_class.cc:
  - implementation of THD::convert_string using THD::convert_buffer
    (conversion of strings allocated in the system heap).
sql/sql_class.h:
  - THD::convert_buffer is shared between THD and network Protocols and
    used for character set conversion of strings.
  - new function to convert String object from one charset to another using
    THD::convert_buffer
sql/sql_insert.cc:
  A little fix in a comment.
sql/sql_parse.cc:
  Shrink convert buffer in the end of each statement.
sql/sql_prepare.cc:
    Many changes:
  - static specifier for set_param_* family of functions.
  - FIELD_TYPE -> MYSQL_TYPE
  - added set_param_binary as handler for BLOB types.
  - added character set support
  - added support for param typecode in mysql_stmt_get_longdata
    (mysql_stmt_send_long_data handler)
  - changes in Item_param deployed
  - few cleanups
sql/sql_select.cc:
  rename: swap -> swap_variables
sql/sql_string.cc:
  - String::append rewritten to support character set conversion for
  single-byte encodings.
  - added String::swap method to efficiently exchange two string objects.
sql/sql_string.h:
  Declraration for String::swap().
sql/time.cc:
  - function TIME_to_string to convert TIME to String in default MySQL format
  - family of functions TIME_to_ulonglong_*
tests/client_test.c:
  Test for support for character set conversions in prepared statements
  (binary and text data).
2004-05-25 02:03:49 +04:00
unknown
c54f3ba680 Merge
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/sql_lex.h:
  SCCS merged
2004-05-24 21:13:38 +04:00
unknown
88da3ae5f9 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/TASK_ALTER_INFO/mysql-4.1


sql/mysql_priv.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-05-24 21:01:35 +05:00
unknown
64285a73ff Merge
configure.in:
  SCCS merged
sql/Makefile.am:
  SCCS merged
sql/handler.cc:
  SCCS merged
sql/mysql_priv.h:
  SCCS merged
2004-05-22 12:18:06 -07:00
unknown
ea63df7f54 Introduced parameter object "ALTER_INFO" for mysql_alter_table
to make list of parameters in mysql_alter_table shorted
to avoid warning in MSVC (windows) building 


sql/mysql_priv.h:
  Introduced parameter object "ALTER_INFO" for mysql_alter_table
  - changed declaration of mysql_alter_table
  - changed declaration of mysql_drop_index 
    (replaced List<Alter_drop> by ALTER_INFO)
sql/sql_lex.h:
  Introduced parameter object "ALTER_INFO" for mysql_alter_table
  - declared struct ALTER_INFO
  - added ALTER_INFO alter_info; into LEX
  - removed fields which were added into ALTER_INFO from LEX
sql/sql_parse.cc:
  Introduced parameter object "ALTER_INFO" for mysql_alter_table
  - changed invotaions of mysql_alter_table
  - replaced cleaning fields in SQLCOM_OPTIMIZE by ALTER_INFO::reset
  - changed invocation of mysql_drop_index (replaced lex->drop_list by &lex->alter_info)
  - changed definition of mysql_create_index and mysql_drop_index to use ALTER_INFO
sql/sql_table.cc:
  Introduced parameter object "ALTER_INFO" for mysql_alter_table
  - changed definition of mysql_alter_table
sql/sql_yacc.yy:
  Introduced parameter object "ALTER_INFO" for mysql_alter_table
  - replaced using of removed from LEX fields my fields of LEX::alter_info
2004-05-21 19:57:03 +05:00
unknown
31c1f849b1 First commit of archive example. Archive is a simple storage engine that handles inserts and selects.
acconfig.h:
  Adding undef piece for HAVE_ARCHIVE_DB	
acinclude.m4:
  Code needed for --with-archive-storage-engine flag for compile.
configure.in:
  Adding tag for Archive
sql/Makefile.am:
  Source updates to compile ha_archive
sql/examples/ha_archive.cc:
  Class file for archive storage engine. First version.
sql/handler.cc:
  Updates needed for adding archive storage engine.
sql/handler.h:
  ENUM for archive storage engine.
sql/mysql_priv.h:
  Archive show options
sql/mysqld.cc:
  Ifdef foor HAVE_ARCHIVE_DB
sql/examples/ha_archive.h:
  Include file for archive storage engine addition.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-05-20 18:13:11 -07:00
unknown
fc68be78eb Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/item.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-05-21 04:31:07 +04:00
unknown
1d9fbbe3ce Merge with 4.0, mainly to get changes to windows project files
VC++Files/client/mysqladmin.dsp:
  Auto merged
VC++Files/client/mysqldump.dsp:
  Auto merged
VC++Files/client/mysqlimport.dsp:
  Auto merged
VC++Files/client/mysqlshow.dsp:
  Auto merged
VC++Files/dbug/dbug.dsp:
  Auto merged
VC++Files/heap/heap.dsp:
  Auto merged
VC++Files/innobase/innobase.dsp:
  Auto merged
VC++Files/isam/isam.dsp:
  Auto merged
VC++Files/isamchk/isamchk.dsp:
  Auto merged
VC++Files/libmysql/libmysql.dsp:
  Auto merged
VC++Files/mysql.dsw:
  Auto merged
BitKeeper/deleted/.del-sync0ipm.ic~2024167f6418de39:
  Auto merged
VC++Files/libmysqltest/myTest.dsp:
  Auto merged
VC++Files/merge/merge.dsp:
  Auto merged
VC++Files/my_print_defaults/my_print_defaults.dsp:
  Auto merged
VC++Files/myisam/myisam.dsp:
  Auto merged
VC++Files/myisam_ftdump/myisam_ftdump.dsp:
  Auto merged
VC++Files/myisammrg/myisammrg.dsp:
  Auto merged
VC++Files/mysqlbinlog/mysqlbinlog.dsp:
  Auto merged
VC++Files/mysqlcheck/mysqlcheck.dsp:
  Auto merged
VC++Files/mysqlshutdown/mysqlshutdown.dsp:
  Auto merged
VC++Files/mysqlwatch/mysqlwatch.dsp:
  Auto merged
VC++Files/mysys/mysys.dsp:
  Auto merged
VC++Files/pack_isam/pack_isam.dsp:
  Auto merged
VC++Files/perror/perror.dsp:
  Auto merged
VC++Files/regex/regex.dsp:
  Auto merged
VC++Files/replace/replace.dsp:
  Auto merged
VC++Files/test1/test1.dsp:
  Auto merged
VC++Files/thr_test/thr_test.dsp:
  Auto merged
VC++Files/vio/vio.dsp:
  Auto merged
VC++Files/zlib/zlib.dsp:
  Auto merged
extra/my_print_defaults.c:
  Auto merged
include/m_string.h:
  Auto merged
include/mysql_embed.h:
  Auto merged
include/mysql_version.h.in:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/mem/mem0pool.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/trx/trx0sys.c:
  Auto merged
myisam/myisam_ftdump.c:
  Auto merged
VC++Files/bdb/bdb.dsp:
  Merge with 4.0
VC++Files/client/mysql.dsp:
  Merge with 4.0
VC++Files/client/mysqlclient.dsp:
  Merge with 4.0
VC++Files/comp_err/comp_err.dsp:
  Merge with 4.0
VC++Files/libmysqld/examples/test_libmysqld.dsp:
  Merge with 4.0
VC++Files/libmysqld/libmysqld.dsp:
  Merge with 4.0
VC++Files/myisamchk/myisamchk.dsp:
  Merge with 4.0
VC++Files/myisamlog/myisamlog.dsp:
  Merge with 4.0
VC++Files/myisampack/myisampack.dsp:
  Merge with 4.0
VC++Files/mysqldemb/mysqldemb.dsp:
  Merge with 4.0
VC++Files/mysqlserver/mysqlserver.dsp:
  Merge with 4.0
VC++Files/sql/mysqld.dsp:
  Merge with 4.0
VC++Files/strings/strings.dsp:
  Merge with 4.0
libmysqld/lib_sql.cc:
  Merge with 4.0
libmysqld/libmysqld.def:
  Merge with 4.0
mysql-test/r/func_str.result:
  Merge with 4.0
mysql-test/r/handler.result:
  auto
mysql-test/r/variables.result:
  Merge with 4.0
mysql-test/t/func_str.test:
  auto
mysql-test/t/handler.test:
  auto
mysql-test/t/variables.test:
  Merge with 4.0
scripts/make_win_src_distribution.sh:
  auto
scripts/mysql_install_db.sh:
  Use original file
sql/Makefile.am:
  Merge with 4.0
sql/ha_innodb.cc:
  auto
sql/item_strfunc.cc:
  Merge with 4.0
sql/mysql_priv.h:
  auto
sql/mysqld.cc:
  Merge with 4.0
sql/set_var.cc:
  Merge with 4.0
sql/slave.cc:
  auto
sql/sql_class.h:
  auto
sql/sql_handler.cc:
  Merge with 4.0
strings/ctype-tis620.c:
  Merge with 4.0
2004-05-20 00:54:52 +03:00
unknown
66c96f2c57 Fix for BUG#3829 "Setting server_id on fly doesn't allow replication to start"
(fix by our Harrison Fisk): when one does SET GLOBAL SERVER_ID=x, we must set
server_id_supplied to 1.


sql/mysql_priv.h:
  server_id_supplied must be here to be visible in set_var.cc
sql/mysqld.cc:
  rephrasing warnings when server id is not set explicitely.
sql/set_var.cc:
  when one does SET GLOBAL SERVER_ID=x; it should be considered as explicitely setting
  the server id, so do server_id_supplied=1.
sql/slave.cc:
  Correcting wrong comment
2004-05-19 15:03:32 +02:00
unknown
70f79563d9 key_cmp -> key_cmp_if_same
New records_in_range() interface (similar to read_range())
Macros for faster bitmap handling
Simplify read_range() code (#WL1786)
New general key_cmp() function to compare keys




heap/hp_hash.c:
  New records_in_range() interface
include/heap.h:
  New records_in_range() interface
include/my_base.h:
  Moved 'key_range' here so that all table handlers can use it
include/my_bitmap.h:
  Make some bitmap functions inline for faster usage in one thread
include/myisam.h:
  New records_in_range() interface
include/myisammrg.h:
  New records_in_range() interface
myisam/mi_range.c:
  New records_in_range() interface
myisam/mi_test2.c:
  New records_in_range() interface
myisam/rt_test.c:
  New records_in_range() interface
  Indentation fixes
myisam/sp_test.c:
  New records_in_range() interface
  Indentation fixes
myisammrg/myrg_range.c:
  New records_in_range() interface
mysys/my_bitmap.c:
  Make some bitmap functions inline for faster usage in one thread
sql/examples/ha_example.cc:
  New records_in_range() interface
sql/field.cc:
  Fixed indentation
sql/ha_berkeley.cc:
  New records_in_range() interface
sql/ha_berkeley.h:
  New records_in_range() interface
sql/ha_heap.cc:
  New records_in_range() interface
sql/ha_heap.h:
  New records_in_range() interface
sql/ha_innodb.cc:
  New records_in_range() interface
sql/ha_innodb.h:
  New records_in_range() interface
sql/ha_isam.cc:
  New records_in_range() interface
sql/ha_isam.h:
  New records_in_range() interface
sql/ha_myisam.cc:
  New records_in_range() interface
sql/ha_myisam.h:
  New records_in_range() interface
sql/ha_myisammrg.cc:
  New records_in_range() interface
sql/ha_myisammrg.h:
  New records_in_range() interface
sql/ha_ndbcluster.cc:
  New records_in_range() interface
sql/ha_ndbcluster.h:
  New records_in_range() interface
sql/handler.cc:
  Simplify read_range() interface:
  - Add 'eq_range' to read_range_first
  - Remove 'eq_range' parameer from read_range_next()
  - Trust values from index_next_same()
  - Simplfy compare_key() by moving key_comparision to key.cc (as this code can be reused from other places)
sql/handler.h:
  Move key_range to my_base.h to be used by external table handlers
  Simplify read_range() interface
  New records_in_range() interface
sql/key.cc:
  Rename key_cmp() to key_cmp_if_same() to make it more descriptive
  Add new key_cmp() function usable from range and handler code.
sql/mysql_priv.h:
  Prototypes for new functions
sql/opt_range.cc:
  New records_in_range() interface
  Simplify cmp_prev()
  (We can in 5.0 simplify cmp_next() the same way)
sql/opt_range.h:
  Added key_part_info to QUICK_SELECT to be able to use key_cmp() in get_next()
sql/opt_sum.cc:
  key_cmp -> key_cmp_if_same
sql/sql_acl.cc:
  key_cmp -> key_cmp_if_same
sql/sql_select.cc:
  key_cmp -> key_cmp_if_same
2004-05-16 14:48:32 +03:00
unknown
6810ca1b71 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-05-06 23:02:32 +04:00
unknown
cd21f7ce40 Merge with 4.0.19
BitKeeper/etc/logging_ok:
  auto-union
VC++Files/client/mysqlclient.dsp:
  Auto merged
VC++Files/mysql.dsw:
  Auto merged
extra/perror.c:
  Auto merged
extra/replace.c:
  Auto merged
innobase/configure.in:
  Auto merged
innobase/include/lock0lock.h:
  Auto merged
innobase/include/row0mysql.h:
  Auto merged
innobase/include/sync0sync.h:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
ltmain.sh:
  Auto merged
BitKeeper/deleted/.del-libmysqld.def~8edf7b8780ce943c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/pars/lexyy.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/sync/sync0arr.c:
  Auto merged
innobase/sync/sync0sync.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
mysql-test/r/alias.result:
  Auto merged
mysql-test/t/system_mysql_db_fix-master.opt:
  Auto merged
mysql-test/r/func_time.result:
  Automatic merge
mysql-test/r/innodb.result:
  Automatic merge
mysql-test/t/alias.test:
  Automatic merge
mysql-test/t/create.test:
  Automatic merge
mysql-test/t/func_time.test:
  Automatic merge
sql/ha_innodb.cc:
  Automatic merge
sql/mysql_priv.h:
  Automatic merge
mysql-test/r/rpl_multi_update.result:
  Automatic merge
mysql-test/t/rpl_error_ignored_table.test:
  Automatic merge
mysql-test/t/rpl_multi_update.test:
  Automatic merge
sql/slave.h:
  Automatic merge
sql/sql_base.cc:
  Automatic merge
sql/sql_db.cc:
  Automatic merge
sql/sql_insert.cc:
  Automatic merge
sql/structs.h:
  Automatic merge
sql/table.cc:
  Automatic merge
strings/longlong2str-x86.s:
  Automatic merge
strings/strings-x86.s:
  Automatic merge
support-files/my-medium.cnf.sh:
  Automatic merge
2004-05-05 17:05:24 +03:00
unknown
2902f9e8a5 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/lex.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-04-28 19:27:56 +04:00
unknown
8b9ecce08c Fixed http address in some scripts (Bug #3460)
Output TIMESTAMP in 4.1 format for 4.1 tables (or for TIMESTAMP(19)) (portability fix)
Fixed that INTERVAL can handle big integers. (Bug #3498)
Fixed that hostname="" works identical as hostname="%" for table/column grants (Bug #3473)


mysql-test/mysql-test-run.sh:
  Fixed wrong http address (Bug #3460)
mysql-test/r/func_time.result:
  Results for new test cases
mysql-test/t/func_time.test:
  Added test of INTERVAL with big integers
scripts/mysqld_safe.sh:
  Added html address to manual in case of error
sql/field.cc:
  Output TIMESTAMP in 4.1 format for 4.1 tables (or for TIMESTAMP(19))
sql/item_timefunc.cc:
  Fixed that INTERVAL can handle big integers. (Bug #3498)
sql/mysql_priv.h:
  Removed not needed prototype
sql/sql_acl.cc:
  Fixed that hostname="" works identical as hostname="%" for table/column grants (Bug #3473)
  Moved GRANT_TABLE::GRANT_TABLE functions ou from class definition to make it possible to debug them
sql/structs.h:
  Fix for long values to INTERVAL
2004-04-28 17:45:08 +03:00
unknown
90cf174529 Merge conflicts with EXAMPLE handler
include/my_base.h:
  Auto merged
sql/Makefile.am:
  Auto merged
sql/mysql_priv.h:
  Auto merged
2004-04-15 09:22:29 +02:00
unknown
b43af929f8 Added NDB storage engine
include/my_base.h:
  Added three new errorcodes to be returned by the handler
sql/Makefile.am:
  Add new files discover.cc, ha_ndbcluster.cc and ha_ndbcluster.h
  Add include path of NDB files
sql/handler.cc:
  Added variable for keeping track of number of "discovers"
  Added NDB to list of storage engines
  Added calls to NDB for commit, rollback etc.
  Added function ha_discover for discovering a table from handler
sql/handler.h:
  Added NDB to list of storage engines
  Added vbariable in transaction for keeping a ndb transaction handle
sql/lex.h:
  Changed AND to AND_SYM and OR to OR_SYM to avoid nameclash
sql/mysql_priv.h:
  Added prototypes for new functions readfrm, writefrm and create_table_from_handler
sql/mysqld.cc:
  Added NDB support
  Disable NDB with --skip-ndbcluster
sql/set_var.cc:
  Add posibilty to show if NDB handler is supported
sql/ha_ndbcluster.cc:
  Add ifdef for whole file for not compiling anything if NDB sholdn't be included
  Updated timestamp handling to use new vars timestamp_default_now and timestamp_on_update_now
sql/sql_base.cc:
  If frm file is not found on disk, ask handler if it knows about the table. Then retry the open.
  This new functionality is called "discover" and can be used by any handler.
sql/sql_class.h:
  Added variable for keeping a NDB connection handle
sql/sql_table.cc:
  Before trying to create a table, ask handler if a table with that name already exists.
  If user said CREATE TABLE IF NOT EXISTS, disocver the table from handler
sql/sql_yacc.yy:
  Add NDBCLUSTER_SYM
  Change AND to AND_SYM
  Change OR to OR_SYM
sql/table.cc:
  Fixe for probelm when NullS is returned from bas_ext of a handler.
2004-04-15 09:14:14 +02:00
unknown
15e207b0e7 Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2004-04-14 23:49:47 +04:00
unknown
a76b243293 Merge baker@bk-internal.mysql.com:/home/bk/mysql-4.1
into brian-akers-computer.local:/Users/brian/mysql/mysql-4.1-examples


BitKeeper/etc/logging_ok:
  auto-union
include/my_base.h:
  Auto merged
sql/handler.cc:
  Auto merged
sql/handler.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
2004-04-14 11:59:51 -04:00
unknown
01bff53c4f All changes are to allow someone to compile the example storage engine and use it.
acconfig.h:
  Default undef for example storage engine.
acinclude.m4:
  Build macro additions for example engine.
configure.in:
  Configure changes for it to be listed in --help
sql/Makefile.am:
  Added in paths to build example.
sql/examples/ha_example.cc:
  Correction in indention and a few minor other corrections. It now lets you create/open/drop example engine.
sql/handler.cc:
  Added definition for the example storage engine. Added case for it to be created.
sql/handler.h:
  Added example storage engine type.
sql/mysql_priv.h:
  Added flag for optional build of example storage engine.
sql/mysqld.cc:
  Pieces to build example storage engine.
2004-04-12 21:01:45 -07:00
unknown
7e114f3cd1 Merged
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Manual merge
sql/sql_prepare.cc:
  Manual merge
2004-04-13 02:18:09 +04:00
unknown
756223bbda WL#1622 "SQL Syntax for Prepared Statements": post-review fixes:
Moved PS name to Statement class, Statement_map now handles name-to-statement resolution.
  Both named and unnamed statements are now executed in one function (sql_prepare.cc:execute_stmt)
  Fixed a problem: Malformed sequence of commands from client could cause server to use previously deleted objects.
  Some code cleanup and small fixes


sql/mysql_priv.h:
  WL#1622 "SQL Syntax for Prepared Statements": post-review fixes.
sql/sql_class.cc:
  WL#1622 "SQL Syntax for Prepared Statements": post-review fixes.
sql/sql_class.h:
  WL#1622 "SQL Syntax for Prepared Statements": post-review fixes.
sql/sql_parse.cc:
  WL#1622 "SQL Syntax for Prepared Statements": post-review fixes.
sql/sql_prepare.cc:
  WL#1622 "SQL Syntax for Prepared Statements": post-review fixes.
2004-04-13 01:58:48 +04:00
unknown
8ab58393c5 after review PS fixes
sql/item_cmpfunc.cc:
  merged in one if
sql/mysql_priv.h:
  removed unused paremeter of check_one_table_access
  declaration of new function for SP share code
sql/set_var.cc:
  function descriotion added
  unneeded parantses removed
sql/sql_acl.cc:
  new parameter to limit number of checked tables for check_grant
sql/sql_acl.h:
  new parameter to limit number of checked tables for check_grant
sql/sql_delete.cc:
  preparation moved in separate function
sql/sql_insert.cc:
  preparation moved in separate function
sql/sql_lex.cc:
  comment style fixed
  unneeded assignment removed
sql/sql_parse.cc:
  new parameter to limit number of checked tables for check_grant
  table list manipulation removed (because of above)
  new precheck function
sql/sql_prepare.cc:
  function rewrited to shere code with sql_prepare.cc
  flow control fixed
sql/sql_show.cc:
  new parameter to limit number of checked tables for check_grant
sql/sql_update.cc:
  preparation moved in separate function
sql/table.h:
  flag renamed
2004-04-10 01:14:32 +03:00
unknown
38f6c83e7f merge
sql/mysql_priv.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-04-08 23:50:10 +03:00
unknown
119beaf79c Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge


sql/mysql_priv.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
2004-04-08 19:14:11 +04:00
unknown
10e15762b8 Don't enable HA_EXTRA_WRITE_CACHE if too few rows
Revert main parts of patch for online index builds. Should be done differently
Added support for %lx in my_snprintf()


sql/ha_myisam.cc:
  Don't enable HA_EXTRA_WRITE_CACHE if too few rows
sql/handler.h:
  Indentaion fix
sql/mysql_priv.h:
  Removed real_alter_table, mysql_add_column and mysql_drop_column
sql/sql_class.cc:
  After merge fix
sql/sql_insert.cc:
  Don't user bulk_insert if only one row (common case)
sql/sql_parse.cc:
  Added mysql_create_index() and mysql_drop_index() as these are only wrappers for mysql_alter_table()
sql/sql_table.cc:
  Revert main parts of patch for online index builds
  Changed back to use tabs to make merges possible between trees
sql/unireg.cc:
  Added comments and minor cleanup
strings/my_vsnprintf.c:
  Added support for %lx.
  Proper long support
2004-04-08 17:56:45 +03:00
unknown
718d1f0aa7 Merge
sql/item.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_yacc.yy:
  SCCS merged
2004-04-08 17:08:56 +04:00
unknown
d5135aff3a merge
sql/item_cmpfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-04-08 00:19:43 +03:00
unknown
c9d856c8b7 new error for unsupported command in PS
fixed IN subselect with basic constant left expression
SQLCOM_CREATE_TABLE, SQLCOM_UPDATE_MULTI, SQLCOM_REPLACE_SELECT, SQLCOM_INSERT_SELECT, QLCOM_DELETE_MULTI fixed to be compatible with PS (BUG#3398, BUG#3406)
fixed multiupdate privelege check (BUG#3408)
fixed multiupdate tables check (BUG#3411)
unchecked commands now is rejected by PS protocol to avoid serever crash
fixed cleunup procedure to be compatible sith DO/SET (BUG#3393)


include/mysqld_error.h:
  new error for unsupported command in PS
mysql-test/r/multi_update.result:
  test sutes (BUG#3408, BUG#3411)
mysql-test/t/multi_update.test:
  test sutes (BUG#3408, BUG#3411)
sql/item_cmpfunc.cc:
  fixed IN subselect with basic constant left expression
sql/mysql_priv.h:
  some function frop sql_parse.h become public
sql/set_var.cc:
  check for SET command via PS
sql/set_var.h:
  check for SET command via PS
sql/share/czech/errmsg.txt:
  new error for unsupported command in PS
sql/share/danish/errmsg.txt:
  new error for unsupported command in PS
sql/share/dutch/errmsg.txt:
  new error for unsupported command in PS
sql/share/english/errmsg.txt:
  new error for unsupported command in PS
sql/share/estonian/errmsg.txt:
  new error for unsupported command in PS
sql/share/french/errmsg.txt:
  new error for unsupported command in PS
sql/share/german/errmsg.txt:
  new error for unsupported command in PS
sql/share/greek/errmsg.txt:
  new error for unsupported command in PS
sql/share/hungarian/errmsg.txt:
  new error for unsupported command in PS
sql/share/italian/errmsg.txt:
  new error for unsupported command in PS
sql/share/japanese/errmsg.txt:
  new error for unsupported command in PS
sql/share/korean/errmsg.txt:
  new error for unsupported command in PS
sql/share/norwegian-ny/errmsg.txt:
  new error for unsupported command in PS
sql/share/norwegian/errmsg.txt:
  new error for unsupported command in PS
sql/share/polish/errmsg.txt:
  new error for unsupported command in PS
sql/share/portuguese/errmsg.txt:
  new error for unsupported command in PS
sql/share/romanian/errmsg.txt:
  new error for unsupported command in PS
sql/share/russian/errmsg.txt:
  new error for unsupported command in PS
sql/share/serbian/errmsg.txt:
  new error for unsupported command in PS
sql/share/slovak/errmsg.txt:
  new error for unsupported command in PS
sql/share/spanish/errmsg.txt:
  new error for unsupported command in PS
sql/share/swedish/errmsg.txt:
  new error for unsupported command in PS
sql/share/ukrainian/errmsg.txt:
  new error for unsupported command in PS
sql/sql_lex.cc:
  first table unlincking procedures for CREATE command
sql/sql_lex.h:
  first table unlincking procedures for CREATE command
sql/sql_parse.cc:
  used function to exclude first table from list
  SQLCOM_CREATE_TABLE, SQLCOM_UPDATE_MULTI, SQLCOM_REPLACE_SELECT, SQLCOM_INSERT_SELECT, QLCOM_DELETE_MULTI fixed to be compatible with PS (BUG#3398, BUG#3406)
  fixed multiupdate privelege check (BUG#3408)
  fixed multiupdate tables check (BUG#3411)
sql/sql_prepare.cc:
  fixed a lot of commands to be compatible with PS
  unchecked commands now is rejected to avoid serever crash
sql/sql_select.cc:
  allow empty result for PS preparing
sql/sql_union.cc:
  fixed cleunup procedure to be compatible sith DO/SET (BUG#3393)
sql/sql_update.cc:
  fixed update to use correct tables lists (BUG#3408)
sql/table.h:
  flag to support multi update tables check (BUG#3408)
tests/client_test.c:
  removed unsupported tables
  fixed show table test
  added new tests
2004-04-08 00:16:17 +03:00
unknown
9c810b548b correct SET GLOBAL ft_boolean_syntax=DEFAULT behaviour 2004-04-07 20:58:33 +02:00
unknown
cc168fc6fd Hand-resolved auto merge
BitKeeper/etc/ignore:
  auto-union
sql/handler.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/unireg.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_table.cc:
  Hand-merged
sql/sql_yacc.yy:
  Hand-merged
2004-04-07 14:56:24 +02:00
unknown
fbfdff7fb0 Post-merge fixes
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/lex.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2004-04-05 19:52:10 +04:00
unknown
ef8a5401f1 Many files:
SQL Syntax for Prepared Statements (WL#1622)
ps.test, ps.result:
  new file


sql/item.cc:
  SQL Syntax for Prepared Statements (WL#1622)
sql/item.h:
  SQL Syntax for Prepared Statements (WL#1622)
sql/lex.h:
  SQL Syntax for Prepared Statements (WL#1622)
sql/mysql_priv.h:
  SQL Syntax for Prepared Statements (WL#1622)
sql/mysqld.cc:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_class.cc:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_class.h:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_lex.h:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_parse.cc:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_prepare.cc:
  SQL Syntax for Prepared Statements (WL#1622)
sql/sql_yacc.yy:
  SQL Syntax for Prepared Statements (WL#1622)
2004-04-05 19:43:37 +04:00
unknown
d7c25fe28e Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-on-4.1


sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/table.h:
  Auto merged
2004-04-03 11:28:20 +03:00
unknown
8c8dffb60d fixed brocken of client_test
fixed aggregate functions in PS (BUG#3360)


mysql-test/r/union.result:
  4.1 more correct error
sql/item_cmpfunc.h:
  and_conds do not make fix fields
sql/item_sum.cc:
  storing/restoring argument of aggregate function for prepared statements
  restoring order list of group_concat for safety
sql/item_sum.h:
  storing/restoring argument of aggregate function for prepared statements
  layout fix
sql/mysql_priv.h:
  just declaration
sql/sql_base.cc:
  fix_fields() have to be called with temporary memory pool active
sql/sql_parse.cc:
  removed hack with item pointer storing
sql/sql_prepare.cc:
  debug output added
  removed hack with item pointer storing
sql/sql_select.cc:
  fix_fields now should be called separately
sql/sql_union.cc:
  removed wrong merged check from 4.0 (4.1 have its own protection)
sql/table.h:
  removed hack with item pointer storing
tests/client_test.c:
  new test fo PS
2004-04-03 11:13:51 +03:00
unknown
bf4849e8bc Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/BUG_2385/mysql-4.1


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
2004-04-03 02:46:12 +05:00
unknown
32b28f9298 WL#1266 "Separate auto-set logic from TIMESTAMP type."
Final version of patch.

Adds support for specifying of DEFAULT NOW() and/or ON UPDATE NOW()
clauses for TIMESTAMP field definition.
Current implementation allows only one such field per table and
uses several unireg types for storing info about this properties of
field. It should be replaced with better implementation when new
.frm format is introduced.


include/mysqld_error.h:
  Added error codes for case when we have more than one column with NOW()
  in DEFAULT or ON UPDATE clauses and for case when we are using ON UPDATE
  clause with wrong type.
mysql-test/r/create.result:
  Added tests for using of DEFAULT NOW() and ON UPDATE NOW() with
  non-TIMESTAMP fields.
mysql-test/r/show_check.result:
  Updated test results to reflect new default look of TIMESTAMP fields
  in SHOW CREATE TABLE.
mysql-test/r/system_mysql_db.result:
  Updated test results to reflect new default look of TIMESTAMP fields
  in SHOW CREATE TABLE.
mysql-test/r/type_ranges.result:
  Updated test results to reflect new default look of TIMESTAMP fields
  in SHOW COLUMNS.
mysql-test/r/type_timestamp.result:
  Added tests for various DEFAULT and ON UPDATE clauses for TIMESTAMP
  fields definitions.
mysql-test/t/create.test:
  Added tests for using of DEFAULT NOW() and ON UPDATE NOW() with
  non-TIMESTAMP fields.
mysql-test/t/type_timestamp.test:
  Added tests for various DEFAULT and ON UPDATE clauses for TIMESTAMP
  fields definitions.
sql/field.cc:
  Added support for various combinations of DEFAULT and ON UPDATE clauses
  for TIMESTAMP field. 
  
  Setting TABLE::timestamp* members for TIMESTAMP fields with auto-set 
  option taking into account their unireg type (which corresponds to 
  various DEFAULT/ON UPDATE values combinations). Replaced 
  TABLE::time_stamp with TABLE::timestamp_default_now/on_update_now
  couple moved their setup to separate method set_timestamp_offsets(),
  which now is called from  open_table instead of Field_timestamp cons.
sql/field.h:
  Added more unireg types for handling of DEFAULT NOW() and ON UPDATE
  NOW() for TIMESTAMP fields.
  Fixed value corresponding to DEFAULT item for TIMESTAMP field.
sql/ha_berkeley.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_heap.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_innodb.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_isam.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_isammrg.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_myisam.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/ha_myisammrg.cc:
  Now TIMESTAMP column with auto-set property could be updated during
  INSERT or/and UPDATE independently.
sql/item_func.h:
  We need to distinguish NOW() from other function for using in 
  DEFAULT and in ON UPDATE clauses.
sql/item_timefunc.h:
  We need to distinguish NOW() from other function for using in 
  DEFAULT and in ON UPDATE clauses.
sql/mysql_priv.h:
  Added parameter for ON UPDATE value to add_field_to_list() function.
sql/share/czech/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/danish/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/dutch/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/english/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/estonian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/french/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/german/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/greek/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/hungarian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/italian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/japanese/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/korean/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/norwegian-ny/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/norwegian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/polish/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/portuguese/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/romanian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/russian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/serbian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/slovak/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/spanish/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/swedish/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/share/ukrainian/errmsg.txt:
  Added error messages for case when we have more than one column with
  NOW() (CURRENT_TIMESTAMP is just more standard alias) in DEFAULT or 
  ON UPDATE clauses and for case when we are using ON UPDATE clause with
  wrong type.
sql/sql_base.cc:
  Added setup of TABLE::timestamp_default_now/on_update_now pair
  for each statement to open_table().
sql/sql_insert.cc:
  Using TABLE::timestamp_default_now/on_update_now pair instead of
  old TABLE::time_stamp. Added check for case then REPLACE could not
  be converted to UPDATE because of different DEFAULT/ON UPDATE values
  for TIMESTAMP field.
sql/sql_lex.h:
  Added member for value used in ON UPDATE clause to st_lex.
sql/sql_load.cc:
  Using TABLE::timestamp_default_now/on_update_now pair instead of
  old TABLE::time_stamp. We don't need to restore these members
  since they are set up for each statement in open_table().
sql/sql_parse.cc:
  Added handling of DEFAULT NOW() and ON UPDATE NOW() clauses for
  TIMESTAMP fields to add_field_to_list() function.
sql/sql_show.cc:
  Added support for DEFAULT CURRENT_TIMESTAMP (aka NOW() ) and 
  ON UPDATE CURRENT_TIMESTAMP to SHOW CREATE TABLE and SHOW COLUMNS.
sql/sql_table.cc:
  mysql_create_table() function - added check for number of TIMESTAMP 
    fields with auto-set values and replacing of old style TIMESTAMPs
    with their newer analogs.
  mysql_alter_table(): Using TABLE::timestamp_default_now/on_update_now 
    pair instead of old TABLE::time_stamp. We don't need to restore these
    members since they are set up for each statement in open_table().
sql/sql_update.cc:
  Left only setting of TABLE::timestamp_default_now/on_update_now
  to 0 since they should be already set up in open_table().
sql/sql_yacc.yy:
  Added support for DEFAULT NOW() and ON UPDATE NOW() in field
  definitions.
sql/table.h:
  Replaced TABLE::time_stamp withTABLE::timestamp_default_now/timestamp_on_update_now
  pair which allows to distinguish TIMESTAMP's with various DEFAULT/ON UPDATE
  clauses and optimize checks if TIMESTAMP field should be set to NOW()
  in handlers.
sql/unireg.cc:
  Now we are marking only TIMESTAMP fields with NOW() as default or
  as on update value as special field for unireg.
2004-04-02 10:12:53 +04:00
unknown
a58b351eeb WL#775 "Add status variable identifying binlog_cache_size shortage"
Added two status variables: 
  binlog_cache_use - counts number of transactions that used somehow
    transaction temporary binary log.
  binlog_cache_disk_use - counts number of transactions that required
    disk I/O for storing info in this this binary log.


include/my_sys.h:
  Added disk_writes member to the IO_CACHE structure for counting number
  of times when IO_CACHE was forced to write to disk.
mysql-test/r/rpl_relayrotate.result:
  Fixed test result since added test for binlog_cache_use and 
  binlog_cache_disk_use status variables.
mysql-test/t/rpl_relayrotate.test:
  Added test for binlog_cache_use and binlog_cache_disk_use status 
  variables.
  Now dropping t1 table on master too.
mysys/mf_iocache.c:
  Added disk_writes member to the IO_CACHE structure for counting number
  of times when IO_CACHE was forced to write to disk.
sql/handler.cc:
  Added support for binlog_cache_use and binlog_cache_disk_use status
  variable. First one is incremented if transaction used somehow 
  transaction temporary binary log (doesn't matter in memory only or 
  with writes to disk), the second one is incremented if this binary 
  log was flushed to disk at some point.
sql/mysql_priv.h:
  Added declaration of status variables binlog_cache_use and 
  binlog_cache_disk_use.
sql/mysqld.cc:
  Added status variables binlog_cache_use and binlog_cache_disk_use.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-04-02 00:47:20 +04:00
unknown
f2116615be added synchronization in mysql_create_like_table
(
fixed BUG #2385 CREATE TABLE LIKE lacks locking on source and destination table
and added tests for it
)


sql/mysql_priv.h:
  added code TEST_SYNCHRONIZATION for --exit-info option
sql/mysqld.cc:
  fixed -debug prefix
sql/sql_table.cc:
  added synchronization in mysql_create_like_table
  (fixed BUG #2385 CREATE TABLE LIKE lacks locking on source and destination table)
2004-04-01 23:13:25 +05:00
unknown
e6d7661547 Merge of fix for bug #2050 and bug #3307
BitKeeper/etc/logging_ok:
  auto-union
sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Manual merge
2004-03-31 22:17:10 +04:00
unknown
d2906f0ed0 Fix for Bug #3307 "FLUSH TABLES sometimes breaks prepared statement
table resolution".
Added members to Item_ident for storing original db, table and field
names since those that set later from Field have shorter life-time 
than required by prep. stmt. So we need to restore original names in 
Item_ident::cleanup(). Also now using special construnctor for creation
of Item_field from Field object that ensures that table and field name 
have big enough life-time.

"Fix" for bug #2050 "10 to 1 performance drop with server 4.1.1"
Clean ups in implementation of caching of field number in table.
Added caching of table in which field is found in find_field_in_tables(). 


sql/item.cc:
  Added members to Item_ident for storing original db, table and field
  names since those that set later from Field have shorter life-time 
  than required by prep. stmt. So we need to restore original names in 
  Item_ident::cleanup().
  Added Item_ident::cached_table for caching table there we found 
  our field.
  Added special constructor for creation of Item_field from Field object
  that ensures that table and field name have big enough life-time.
sql/item.h:
  Added members to Item_ident for storing original db, table and field
  names since those that set later from Field have shorter life-time 
  than required by prep. stmt. So we need to restore original names in 
  Item_ident::cleanup().
  Changed type of Item_ident::cached_field_index from int to uint
  (and so NO_CACHED_FIELD_INDEX is UINT_MAX now) because we want to
  save one comparison in find_field_in_table().
  Added Item_ident::cached_table for caching table there we found 
  our field.
  Added special constructor for creation of Item_field from Field object
  that ensures that table and field name have big enough life-time.
sql/mysql_priv.h:
  Changed type of cached_field_index_ptr from int* to uint*
  (and so NO_CACHED_FIELD_INDEX is UINT_MAX now) because we want to
  save one comparison in find_field_in_table().
sql/sql_acl.cc:
  Changed type of find_field_in_table() paremeter to make it 
  faster.
sql/sql_base.cc:
  find_field_in_table(): small optimization and soime clean ups in 
   caching of field index.
  find_field_in_tables(): added aggresive caching of table in which
   field is found in Item_ident::cached_table.
  insert_fields():
   using special construnctor for creation of Item_field from Field 
   object that ensures that table and field name have big enough life-time.
2004-03-31 21:25:55 +04:00
unknown
f5297edcae Worklog#1563 - Support of on-line CREATE/DROP INDEX.
This is to enable table handlers to implement online create/drop index.
It consists of some parts:
- New default handler methods in handler.h
- Split of mysql_alter_table. It decides if only one kind of
  alteration is to be done (e.g. only create indexes or only drop
  indexes etc.) It then calls the specialized new handler method if
  the handler implements it. Otherwise it calls real_alter_table.
- The parser sets flags for each alter operation detected in a
  command. These are used by mysql_alter_table for the decision.
- mysql_prepare_table is pulled out of mysql_create_table. This is
  also used by mysql_create_index to prepare the key structure array
  for the handler. It is also used by mysql_create_index and
  mysql_drop_index to prepare a call to mysql_create_frm.
- mysql_create_frm is pulled out of rea_create_table for use by
  mysql_create_index and mysql_drop_index after the index is
  created/dropped.
Thanks to Antony who supplied most of the changes.


sql/handler.h:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  New virtual handler methods with default implementation and return flags.
sql/mysql_priv.h:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  New function prototypes. mysql_prepare_table is pulled out of
  mysql_create_table. It prepares a table structure, which is used by 
  mysql_create_table, mysql_create_index and mysql_drop_index.
  real_alter_table is pulled out of mysql_alter_table. The latter only
  looks if the requested operation can be done by specialized functions
  or else calls real_alter_table, which does the real thing.
  mysql_add_column and mysql_drop_colunm are for future use. They simply
  call real_alter_table. mysql_create_frm is pulled out of
  rea_create_table. It is called also from mysql_create_index and
  mysql_drop_index after successful create/drop index.
  mysql_alter_table prototype is extended by the new alter_flags argument.
sql/sql_base.cc:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  mysql_create_index and mysql_drop_index moved to sql_table.cc.
sql/sql_lex.h:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  Definitions for the new alter_flags.
sql/sql_parse.cc:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  Extend the calls to mysql_alter_table by the new alter_flags argument.
sql/sql_table.cc:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  mysql_prepare_table is pulled out of mysql_create_table.
  mysql_create_index and mysql_drop_index are changed so that they use
  the new handler functions if the handler implements them.
  mysql_add_column and mysql_drop_column are for future use. They simply
  call real_alter_table. mysql_alter_table only decides which function
  to use for the requested operation. real_alter_table implements most
  of what mysql_alter_table did before.
sql/sql_yacc.yy:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  Set the alter_flags where appropriate.
sql/unireg.cc:
  Worklog#1563 - Support of on-line CREATE/DROP INDEX.
  mysql_create_frm is pulled out of rea_create_table.
2004-03-30 19:22:14 +02:00
unknown
1cff3d98b3 Disable INSERT DELAYED for embedded library
sql-bench/crash-me.sh:
  Fixed typo
sql/mysql_priv.h:
  Moved things for embedded library into one section
sql/sql_string.cc:
  Simple optimization
2004-03-29 17:57:07 +03:00
unknown
f6a8ec5f92 "Fix" for BUG #2050 "10 to 1 performance drop with server 4.1.1".
Actually it is not a bug but right behavior observed as pefomance 
degradation after we have forced Item_field::fix_fields() to 
re-execute each time when we are executing prep stmt.

This patch implements small optimization which heals this bad 
behavior. We are caching field position in TABLE::field array in
Item's member and are using this position for speeding up field
lookups in fix_fields() in case of its re-execution.


sql/item.cc:
  Added cached_field_index member to Item_ident for caching field
  position in TABLE::field array for quicker field lookup in case 
  fix_fields() is executed twice.
sql/item.h:
  Added cached_field_index member to Item_ident for caching field
  position in TABLE::field array for quicker field lookup in case 
  fix_fields() is executed twice.
sql/mysql_priv.h:
  Now find_field_in_table has one more in-out parameter which is used
  for caching field index in TABLE::field array stored for quicker
  field look up.
sql/sql_acl.cc:
  Now find_field_in_table has one more in-out parameter which is used
  for caching field index in TABLE::field array stored for quicker
  field look up.
sql/sql_base.cc:
  Optimization: Now when we are looking up Field by its name we are 
  caching its position in TABLE::field array in Item_ident::cached_field_index,
  so when we will call fix_fields() second time for this item (e.g.
  when we are re-executing prep statement) we can reuse this index
  to speed up this lookup.
sql/table.cc:
  Now we storing in TABLE::name_hash pointers to elements of 
  TABLE::field array, because this allows easily retrieve index
  of field in this array when it is looked up by its name.
sql/table.h:
  Added comment claryfying what we store in TABLE::name_hash.
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-03-28 04:11:54 +04:00
unknown
c0a9df1aae correct support for a mix of UNION/UNION ALL in the same query.
Bug#1428
2004-03-23 14:43:24 +01:00
unknown
24148f04c7 merge fixes (use old code)
client/mysqladmin.c:
  Auto merged
client/mysqltest.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/include/os0file.h:
  Auto merged
innobase/os/os0file.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-03-18 00:16:04 +02:00
unknown
a8aacf8764 merge with 4.0
BitKeeper/etc/logging_ok:
  auto-union
VC++Files/innobase/innobase.dsp:
  Auto merged
VC++Files/libmysql/libmysql.dsp:
  Auto merged
acinclude.m4:
  Auto merged
configure.in:
  Auto merged
BitKeeper/deleted/.del-com0shm.c~6a16f0c3d81de1f:
  Auto merged
BitKeeper/deleted/.del-mysql_fix_privilege_tables.sql:
  Auto merged
extra/replace.c:
  Auto merged
include/my_sys.h:
  Auto merged
innobase/btr/btr0btr.c:
  Auto merged
innobase/btr/btr0cur.c:
  Auto merged
innobase/btr/btr0pcur.c:
  Auto merged
innobase/btr/btr0sea.c:
  Auto merged
innobase/configure.in:
  Auto merged
innobase/data/data0data.c:
  Auto merged
innobase/dict/dict0boot.c:
  Auto merged
innobase/dict/dict0crea.c:
  Auto merged
innobase/dict/dict0dict.c:
  Auto merged
innobase/dict/dict0load.c:
  Auto merged
innobase/dict/dict0mem.c:
  Auto merged
innobase/ha/ha0ha.c:
  Auto merged
innobase/ha/hash0hash.c:
  Auto merged
innobase/include/btr0btr.ic:
  Auto merged
innobase/include/data0type.ic:
  Auto merged
innobase/include/dict0mem.h:
  Auto merged
innobase/include/log0log.ic:
  Auto merged
innobase/include/mach0data.ic:
  Auto merged
innobase/include/mtr0log.h:
  Auto merged
innobase/include/mtr0mtr.h:
  Auto merged
innobase/include/os0file.h:
  Auto merged
innobase/include/row0upd.ic:
  Auto merged
innobase/include/srv0srv.h:
  Auto merged
innobase/include/sync0sync.h:
  Auto merged
innobase/include/trx0rseg.ic:
  Auto merged
innobase/lock/lock0lock.c:
  Auto merged
innobase/log/log0recv.c:
  Auto merged
innobase/mem/mem0dbg.c:
  Auto merged
innobase/mtr/mtr0log.c:
  Auto merged
innobase/mtr/mtr0mtr.c:
  Auto merged
innobase/os/os0file.c:
  Auto merged
innobase/page/page0cur.c:
  Auto merged
innobase/page/page0page.c:
  Auto merged
innobase/pars/lexyy.c:
  Auto merged
innobase/read/read0read.c:
  Auto merged
innobase/rem/rem0cmp.c:
  Auto merged
innobase/rem/rem0rec.c:
  Auto merged
innobase/row/row0ins.c:
  Auto merged
innobase/row/row0mysql.c:
  Auto merged
innobase/row/row0purge.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/row/row0undo.c:
  Auto merged
innobase/row/row0upd.c:
  Auto merged
innobase/srv/srv0srv.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/sync/sync0rw.c:
  Auto merged
innobase/thr/thr0loc.c:
  Auto merged
innobase/trx/trx0purge.c:
  Auto merged
innobase/trx/trx0rec.c:
  Auto merged
innobase/trx/trx0roll.c:
  Auto merged
innobase/trx/trx0trx.c:
  Auto merged
innobase/trx/trx0undo.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/myisamchk.c:
  Auto merged
mysql-test/r/multi_update.result:
  Auto merged
mysql-test/r/mysqlbinlog.result:
  Auto merged
mysql-test/r/rpl_error_ignored_table.result:
  Auto merged
mysql-test/t/multi_update.test:
  Auto merged
mysql-test/t/rpl_error_ignored_table.test:
  Auto merged
mysys/mf_iocache.c:
  Auto merged
mysys/mf_pack.c:
  Auto merged
mysys/my_getopt.c:
  Auto merged
sql/ha_berkeley.cc:
  Auto merged
sql/ha_myisam.cc:
  Auto merged
sql/lock.cc:
  Auto merged
sql/log.cc:
  Auto merged
sql/opt_range.cc:
  Auto merged
sql/set_var.h:
  Auto merged
sql/sql_cache.cc:
  Auto merged
sql/sql_cache.h:
  Auto merged
sql/sql_delete.cc:
  Auto merged
sql/sql_handler.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_list.h:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
tests/thread_test.c:
  Auto merged
client/mysqldump.c:
  Keep original indentation
mysql-test/r/merge.result:
  keep old file
scripts/mysql_fix_privilege_tables.sh:
  Keep old structure in merge with 4.0
sql/table.cc:
  merge with 4.0 + simple optimizations
2004-03-16 22:41:30 +02:00
unknown
ded9313d32 Fix for bug#2586 Disallow global/session/local as structured var. instance names 2004-03-16 14:01:05 +04:00
unknown
2e0d5eace5 Fix of compilation failure of latest 4.1 tree: new constants in mysqld.cc
exceed unsigned long limit.


include/config-win.h:
  implementation of ULL macro for Windows
include/my_global.h:
  ULL macro defined: we need this macro because ULL qualifier is not defined 
  on systems withoug unsigned long long
sql/item_func.cc:
  new ULL macro caused conflict with class for user level lock ULL.
  ULL renamed to User_level_lock
sql/item_func.h:
  ULL -> User_level_lock
sql/mysql_priv.h:
  merge error fixed: LL defined in my_global.h
sql/mysqld.cc:
  ULL macro used for long long constants to fix compilation failure on gcc 3.*
sql/sql_class.h:
  ULL renamed to User_level_lock
2004-03-15 22:39:36 +03:00
unknown
ef44fb9af3 Fixes for bugs #2274 "mysqld gets SIGSEGV during processing of malformed
COM_EXECUTE packet" and #2795 "prepare + execute without bind_param crashes
 server" and #2473 "seg fault running tests/client_test.c": 
- length checking added to packet parser 
- default impelemntation of Item_param::set_param_func will work in
case of malformed packet.
No test cases are possible in our test suite, as there are no tests 
operating on protocol layer.


sql/item.cc:
  Default set_param function implemented: this is to not sigsegv in case
  of malformed packet with no parameters data.
sql/item.h:
  - Item_param constructor moved to .cc to be able to assign set_param_func.
  - now embedded and ordinary versions of set_param have the same signature.
sql/mysql_priv.h:
  mysql_stmt_execute now requires packet_length
sql/sql_parse.cc:
  mysql_stmt_execute now requires packet length.
sql/sql_prepare.cc:
  - length checking added to all functions working with network packet.
  - set_param_func's in embedded and ordinary version now have the same 
  signature
2004-03-15 20:20:47 +03:00
unknown
afedd9f8f7 Task #835: additional changes fot str_to_date
include/mysqld_error.h:
  Task #835: additional changes fot str_to_date
  New error message
mysql-test/r/date_formats.result:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/r/func_sapdb.result:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/r/func_time.result:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/r/type_time.result:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/t/date_formats.test:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/t/func_sapdb.test:
  Task #835: additional changes fot str_to_date
  tests
mysql-test/t/func_time.test:
  Task #835: additional changes fot str_to_date
  tests
sql/share/czech/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/danish/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/dutch/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/english/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/estonian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/french/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/german/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/greek/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/hungarian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/italian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/japanese/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/korean/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/norwegian-ny/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/norwegian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/polish/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/portuguese/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/romanian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/russian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/serbian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/slovak/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/spanish/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/swedish/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
sql/share/ukrainian/errmsg.txt:
  Task #835: additional changes fot str_to_date
  New error message
2004-03-15 18:28:21 +04:00
unknown
965158f28f Merge
mysql-test/install_test_db.sh:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
mysql-test/mysql-test-run.sh:
  SCCS merged
2004-03-12 01:13:04 +02:00
unknown
a1d9e1eec4 Ensure that install_test_db.sh script works with both 'make install' and 'make_binary_distribution' layouts
Abort if we can't allocate memory for table cache
Fix bug with multi-update-tables and BDB tables.


extra/replace.c:
  Fix comments
mysql-test/install_test_db.sh:
  Change internal option from -bin to --bin
  Ensure that script works with both 'make install' and 'make_binary_distribution' layouts (Bug #3031)
mysql-test/mysql-test-run.sh:
  Change internal option from -bin to --bin
sql/ha_berkeley.cc:
  More debug
sql/mysql_priv.h:
  Change table_cache_init to return error
sql/mysqld.cc:
  Abort if we can't allocate memory for table cache. (Bug #3085)
  Enable warnings by default
sql/sql_base.cc:
  Change table_cache_init to return error
sql/sql_update.cc:
  Fix bug with multi-update-tables and BDB tables. Bug #3098
  Problem was that we didn't initialize BDB for calls to rnd_pos()
2004-03-12 01:10:22 +02:00
unknown
bd6c4ef400 Fix for BUG#2983 "If statement was killed on master, slave errors despite replicate-wild-ignore-t"
We introduce a new function mysql_test_parse_for_slave().
If the slave sees that the query got a really bad error on master
(killed e.g.), then it calls this function to know if this query
can be ignored because of replicate-*-table rules (do not worry
about replicate-*-db rules: they are checked so early that they have
no bug). If the answer is yes, it skips the query and continues. If
it's no, then it stops and say "fix your slave data manually" (like it
did before this change).


mysql-test/r/rpl_error_ignored_table.result:
  result update
mysql-test/t/rpl_error_ignored_table-slave.opt:
  ignore more tables
mysql-test/t/rpl_error_ignored_table.test:
  we test if a killed query on the master, is ignored on the slave
  if the tables it involves should be excluded because of replicate-*-table
  rules.
sql/log_event.cc:
  If the query got a really bad error on the master (thread killed etc),
  parse it to test the table names: if the replicate-*-do|ignore-table
  rules say "this query must be ignored" then we exit gracefully;
  otherwise we warn about the bad error and tell DBA to check/fix it.
  Before this change, we always warned and stopped.
sql/mysql_priv.h:
  new function
sql/slave.cc:
  don't print error immediately as we need to do one more test to
  be sure.
sql/sql_parse.cc:
  we add a function mysql_test_parse_for_slave(), to be used only
  by the slave if it wants to know if the query should be ignored or not;
  so this function only parses the query, does not execute it.
2004-03-11 17:38:19 +01:00
unknown
5bc89a9644 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_insert.cc:
  Auto merged
2004-03-06 10:43:53 +02:00
unknown
aa20bd9e8c Ensure that one can't from the command line set a variable too small. (Bug #2710)
Allow one to force lower_case_table_names to 0, even if the file system is case insensitive. This fixes some issues on Mac OS X (Bug #2994)
Added variables "lower_case_file_system", "version_compile_os" and "license"


mysql-test/t/lowercase_table3-master.opt:
  Rename: mysql-test/t/lowercase_table2-master.opt -> mysql-test/t/lowercase_table3-master.opt
mysys/my_getopt.c:
  Ensure that one can't from the command line set a variable too small (could happen when sub_size was set)
sql/mysql_priv.h:
  Added lower_case_file_system
sql/mysqld.cc:
  Allow one to force lower_case_table_names to 0, even if the file system is case insensitive
sql/set_var.cc:
  Added variable "lower_case_file_system"
  Added variable "version_compile_os"
  Added variable "license"
sql/set_var.h:
  Added support for read only strings
sql/sql_select.cc:
  Make join optimizer killable
2004-03-06 10:43:35 +02:00
unknown
28f0e32879 Portability fixes
mysql-test/r/show_check.result:
  Updated results
mysql-test/t/show_check.test:
  Portability fix (for 64 bit platforms)
mysys/hash.c:
  Portablity fix
sql/gen_lex_hash.cc:
  Don't include mysql_priv.h;  Causes build errors on a lot of platforms
sql/lex_symbol.h:
  Moved symbols here from mysql_priv.h to avoid including mysql_priv.h in gen_lex_hash.cc
sql/mysql_priv.h:
  Move symbols and struct to lex_symbol.h
sql/sql_db.cc:
  Don't use sql_alloc/sql_free methods in sql_string.h
sql/sql_help.cc:
  Don't use sql_alloc/sql_free methods in sql_string.h
sql/sql_string.h:
  Don't use sql_alloc/sql_free methods in sql_string.h
  This makes the code faster and more portable
sql/sql_yacc.yy:
  Don't use sql_alloc/sql_free methods in sql_string.h
2004-03-05 19:49:50 +02:00
unknown
52236ae1e1 Fixed Bug#2491, INSERT DELAYED causes binary log unusable by mysqlbinlog (replication is ok)
Setting insert delayed threads = 0 at mysql_init_command.


sql/mysql_priv.h:
  New session variable, max_insert_delayed_threads
sql/mysqld.cc:
  New session variable, max_insert_delayed_threads
sql/set_var.cc:
  New session variable, max_insert_delayed_threads
sql/sql_class.h:
  New session variable, max_insert_delayed_threads
sql/sql_insert.cc:
  New session variable, max_insert_delayed_threads
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-03-04 17:58:36 +00:00
unknown
7b68eaafda Desperate attempt to push part of prepared statements cleanup which was
reviewed in Saint-Petersbourg (including post-review fixes).


include/my_sys.h:
  Added clear_alloc_root (reset alloc root without freeing its memory)
sql/item.h:
  - rename setup_param -> set_parap (function assigns parameter value to item)
sql/mysql_priv.h:
  - all return values are void, because return value is never checked in
      dispatch_command
  - removed unused declaration of setup_param_functions
sql/protocol.h:
  - unused declarations of setup_params_data* removed
sql/sql_class.cc:
  Cleanup:
    - bzero(mem_root) replaced with clear_alloc_root
    - query_id and command members moved back to THD from Statement
  Assignment of mem_root, free_list, query_id and command optimized
  away from set_statement().
sql/sql_class.h:
  - query_id and command moved back to THD from Statement
sql/sql_lex.h:
  - better type for param_list
  - param_count is the same thing as param_list.elements
sql/sql_parse.cc:
  - comments for dispatch_command
sql/sql_prepare.cc:
  Cleanup:
  - added comments to many functions and removed trailing spaces in many 
    lines, some stale comments removed.
  - it's faster to iterate using pointers, than classes
  - Renames: error_in_prepare renamed to get_longdata_error (because it is set
    when there is an error in mysql_send_longdata, rather than in
    mysql_prepare), embedded versions of placeholder assignement functions
    now have prefix emb_, setup_ functions renamed to set_, because they
    perform assignment, not installation, setup_params_data now doesn't
    call insert_params and was renamed to setup_set_param_functions,
  - find_prepared_statement should not send error if called from no-reply
    calls, like mysql_stmt_reset
  - error reporting is checked up, to always report errors and not report
    errors twice. send_prep_stmt can be done mostly in send_prepare_result, 
    rather than in test_* functions.
  - now we don't need to reinit THD->mem_root/free_list in mysql_stmt_execute,
    because it's not reset there.
tests/client_test.c:
  - removed second call to test_subqueries
2004-03-02 22:39:50 +03:00
unknown
1e191736d6 my_gethwaddr() for linux/freebsd
UUID() function


BitKeeper/etc/ignore:
  Added mysys/test_gethwaddr to the ignore list
include/my_sys.h:
  my_gethwaddr()
mysys/Makefile.am:
  my_gethwaddr
sql/item_create.cc:
  UUID() function
sql/item_create.h:
  UUID() function
sql/item_strfunc.cc:
  UUID() function
sql/item_strfunc.h:
  UUID() function
sql/lex.h:
  UUID() function
sql/mysql_priv.h:
  UUID() function
sql/mysqld.cc:
  UUID() function
sql/sql_class.cc:
  cleanup
2004-02-27 20:30:08 +01:00
unknown
bc0c36a46f Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-prepared-4.1


sql/mysql_priv.h:
  Auto merged
2004-02-19 20:10:49 +02:00
unknown
017efd2124 Merge bk-internal:/home/bk/mysql-4.1/
into serg.mylan:/usr/home/serg/Abk/mysql-4.1


BitKeeper/etc/ignore:
  auto-union
include/my_global.h:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/myisam.result:
  Auto merged
mysql-test/r/type_blob.result:
  Auto merged
mysql-test/t/type_blob.test:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/mysqld.cc:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/share/english/errmsg.txt:
  Auto merged
sql/share/russian/errmsg.txt:
  Auto merged
sql/share/ukrainian/errmsg.txt:
  Auto merged
2004-02-17 17:07:14 +01:00
unknown
952f99d4c6 merge
mysql-test/r/derived.result:
  Auto merged
mysql-test/t/derived.test:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_cmpfunc.cc:
  Auto merged
sql/item_cmpfunc.h:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_union.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2004-02-17 11:12:55 +02:00
unknown
7b6b03f340 merge
sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_insert.cc:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_load.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_update.cc:
  Auto merged
2004-02-17 01:52:33 +02:00
unknown
54d93c4153 ulternative bugfix for BUG#2508 and fix for BUG#2809 - every table has its own TABLE structure
mysql-test/r/union.result:
  fix for union test becuase now not all fields in UNION allow NULLS
  fix of test
  test suite for BUG#2809
mysql-test/t/union.test:
  test suite for BUG#2809
sql/mysql_priv.h:
  removed unused parameter of setup_tables()
sql/sql_base.cc:
  removed unused parameter of setup_tables()
  cleanup of unused code
sql/sql_class.h:
  removed unused field
sql/sql_help.cc:
  removed unused parameter of setup_tables()
sql/sql_insert.cc:
  removed unused parameter of setup_tables()
sql/sql_lex.cc:
  excluded duplicate tables finding for UNION
sql/sql_load.cc:
  removed unused parameter of setup_tables()
sql/sql_olap.cc:
  removed unused parameter of setup_tables()
sql/sql_prepare.cc:
  removed unused parameter of setup_tables()
sql/sql_select.cc:
  removed unused parameter of setup_tables()
  revert old BUG#2508 patch
sql/sql_union.cc:
  revert old BUG#2508 patch
  removed unused code
sql/sql_update.cc:
  removed unused parameter of setup_tables()
sql/table.h:
  shared used only for multi-update for now
2004-02-17 01:14:51 +02:00
unknown
5a9ffa300a ft_boolean_syntax made changeable
BitKeeper/deleted/.del-gstream.cc~e7a4fae849aff6c8:
  Delete: libmysqld/gstream.cc
BitKeeper/deleted/.del-item_subselect.cc~80564bbdb47e8160:
  Delete: libmysqld/item_subselect.cc
BitKeeper/deleted/.del-spatial.cc~604df7172b141762:
  Delete: libmysqld/spatial.cc
BitKeeper/deleted/.del-sql_derived.cc~548b125128871c7a:
  Delete: libmysqld/sql_derived.cc
BitKeeper/etc/ignore:
  Added libmysqld/item_subselect.cc libmysqld/sql_derived.cc to the ignore list
2004-02-16 18:53:00 +01:00
unknown
0c259c54b0 Merge with public tree
client/mysqldump.c:
  Auto merged
configure.in:
  Auto merged
include/m_ctype.h:
  Auto merged
include/m_string.h:
  Auto merged
include/my_global.h:
  Auto merged
mysql-test/r/ctype_utf8.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
mysql-test/r/subselect.result:
  Auto merged
mysql-test/t/fulltext.test:
  Auto merged
mysql-test/t/grant.test:
  Auto merged
mysql-test/t/subselect.test:
  Auto merged
mysql-test/t/union.test:
  Auto merged
sql/field.cc:
  Auto merged
sql/field.h:
  Auto merged
sql/item.cc:
  Auto merged
sql/item_func.cc:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/set_var.cc:
  Auto merged
sql/sql_acl.cc:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/share/english/errmsg.txt:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
sql/sql_string.cc:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
strings/ctype-mb.c:
  Auto merged
strings/ctype-simple.c:
  Auto merged
mysql-test/r/warnings.result:
  Fix error numbers after merge
sql/share/czech/errmsg.txt:
  Add missing ',' and fix typo
sql/share/danish/errmsg.txt:
  Add missing ',' and fix typo
sql/share/dutch/errmsg.txt:
  Add missing ',' and fix typo
sql/share/estonian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/french/errmsg.txt:
  Add missing ',' and fix typo
sql/share/german/errmsg.txt:
  Add missing ',' and fix typo
sql/share/greek/errmsg.txt:
  Add missing ',' and fix typo
sql/share/hungarian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/italian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/japanese/errmsg.txt:
  Add missing ',' and fix typo
sql/share/korean/errmsg.txt:
  Add missing ',' and fix typo
sql/share/norwegian-ny/errmsg.txt:
  Add missing ',' and fix typo
sql/share/norwegian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/polish/errmsg.txt:
  Add missing ',' and fix typo
sql/share/portuguese/errmsg.txt:
  Add missing ',' and fix typo
sql/share/romanian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/russian/errmsg.txt:
  Add missing ',' and fix typo
sql/share/slovak/errmsg.txt:
  Add missing ',' and fix typo
sql/share/spanish/errmsg.txt:
  Add missing ',' and fix typo
sql/share/swedish/errmsg.txt:
  Add missing ',' and fix typo
sql/share/ukrainian/errmsg.txt:
  Add missing ',' and fix typo
2004-02-16 10:31:05 +02:00
unknown
6826a55b1d merge
sql/item.h:
  Auto merged
sql/item_sum.h:
  Auto merged
sql/sql_class.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
2004-02-14 13:31:39 +02:00
unknown
0bc06e9ec5 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.1
into eagle.mysql.r18.ru:/home/vva/work/BUG_2593/mysql-4.1


sql/mysql_priv.h:
  Auto merged
sql/sql_lex.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
2004-02-13 00:31:39 +04:00
unknown
fab7113f83 PS fixed to be compatible with derived tables (BUG#2641)
sql/mysql_priv.h:
  description moved to be accessable from sql_class.h
sql/sql_base.cc:
  put all derived table preparation in temporary memory pull
sql/sql_class.h:
  close tables to close derived tables before freeing memory pool where they are placed
sql/sql_prepare.cc:
  now temporary memory pool for prrepared statements registration is oppened in open_and_lock_tables
  thd->current_statement set only for tables preparation, because we do not need memory pool tricks for PS executing
tests/client_test.c:
  derived table added to test
  expression with aggregate functions added to test
2004-02-12 18:50:00 +02:00
unknown
4b37cf65f7 memory leacks in PS with subqueries fixed (adddition to fix of BUG#2462)
sql/item.h:
  mechanism to keep reference in cache array for row IN
sql/item_cmpfunc.cc:
  mechanism to keep reference in cache array for row IN
  layout fixed
sql/item_cmpfunc.h:
  mechanism to keep reference in cache array for row IN
sql/item_subselect.cc:
  fixed memory pools swapping
  prevented deleting Item_in_optimizer cache in case of row IN subquery
sql/mysql_priv.h:
  declarations of function moved to be useful in sql_class.h
sql/sql_base.cc:
  keep fields expanded from '*' in statement memory pool
sql/sql_class.cc:
  fixed restoring/backup of memory pool and list of items
sql/sql_class.h:
  memory allocation methods moved to Statement
  memory pool substituting for preparing
sql/sql_lex.cc:
  ref_pointer_array kept in statement memory
sql/sql_lex.h:
  reinitialization of UNIT
sql/sql_prepare.cc:
  memory allocation/swapping fixed
tests/client_test.c:
  layout fixed
2004-02-12 03:10:26 +02:00
unknown
5b2c312627 Merge with 4.0.18
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/ctype_tis620.result-old:
  Merge rename: mysql-test/r/ctype_tis620.result -> mysql-test/r/ctype_tis620.result-old
BUILD/compile-pentium-max:
  Auto merged
BitKeeper/etc/config:
  Auto merged
Build-tools/Bootstrap:
  Auto merged
Build-tools/Do-compile:
  Auto merged
configure.in:
  Auto merged
mysql-test/t/ctype_tis620.test-old:
  Merge rename: mysql-test/t/ctype_tis620.test -> mysql-test/t/ctype_tis620.test-old
Docs/Makefile.am:
  Auto merged
client/mysqldump.c:
  Auto merged
client/mysqltest.c:
  Auto merged
include/my_global.h:
  Auto merged
include/my_pthread.h:
  Auto merged
include/my_sys.h:
  Auto merged
include/myisam.h:
  Auto merged
innobase/btr/btr0cur.c:
  Auto merged
innobase/ibuf/ibuf0ibuf.c:
  Auto merged
innobase/include/dict0dict.h:
  Auto merged
innobase/include/srv0srv.h:
  Auto merged
innobase/include/ut0mem.h:
  Auto merged
innobase/log/log0log.c:
  Auto merged
innobase/row/row0ins.c:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
innobase/srv/srv0start.c:
  Auto merged
innobase/ut/ut0mem.c:
  Auto merged
myisam/mi_check.c:
  Auto merged
myisam/mi_dynrec.c:
  Auto merged
myisam/mi_key.c:
  Auto merged
myisam/myisam_ftdump.c:
  Auto merged
myisam/myisamdef.h:
  Auto merged
mysql-test/mysql-test-run.sh:
  Auto merged
mysql-test/r/alter_table.result:
  Auto merged
mysql-test/r/bdb.result:
  Auto merged
mysql-test/r/bigint.result:
  Auto merged
mysql-test/r/fulltext.result:
  Auto merged
2004-02-11 00:06:46 +01:00
unknown
61f0e69cb6 ufter revview fix (BUG#2120)
mysql-test/r/derived.result:
  test of error handling in derived tables with UPDATE & DELETE
mysql-test/t/derived.test:
  test of error handling in derived tables with UPDATE & DELETE
sql/mysql_priv.h:
  opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_acl.cc:
  opened tables counter added to avoid loop of tables calculating in lock_tables, here it is just for compatibility
sql/sql_base.cc:
  removed unneeded assignment
  opened tables counter added to avoid loop of tables calculating in lock_tables
  commentary fixed
sql/sql_derived.cc:
  mysql_derived made static
  variable res moved in place where it used
  priveleges written in correct place
sql/sql_handler.cc:
  opened tables counter added to avoid loop of tables calculating in lock_tables
sql/sql_parse.cc:
  mistyping in commentary fixed
2004-02-09 14:44:03 +02:00
unknown
dfbaa16160 1. fixed bug @2593 "SHOW CREATE TABLE doesn't properly double quotes"
2. added automatic quotation of keywords in SHOW CREATE TABLE


mysql-test/r/show_check.result:
  added tests for 
  bug #2593 "SHOW CREATE TABLE doesn't properly double quotas"
  and for automatic quotation of keywords
mysql-test/t/show_check.test:
  added tests for 
  bug #2593 "SHOW CREATE TABLE doesn't properly double quotas"
  and for automatic quotation of keywords
sql/mysql_priv.h:
  added declaration of function is_keyword
sql/sql_lex.cc:
  added implementation of function is_keyword
sql/sql_show.cc:
  changed function append_identifier and it's subfunctions
  1. fixed bug @2593 "SHOW CREATE TABLE doesn't properly double quotes"
  2. added automatic quotation of keywords
2004-02-07 00:57:22 +04:00
unknown
ec76183bec Added new option --sync-frm / --skip-sync-frm
Marked --bdb-no-sync as deprecated
Added --sync-bdb-logs / --disable-sync-bdb-logs as a synonym / alternative.


mysys/my_getopt.c:
  Changed my_getopt so that disabled_my_option can be used for
  GET_BOOL type options too.
sql/mysql_priv.h:
  Added opt_sync_frm
sql/mysqld.cc:
  Added sync-frm / disable-sync-frm to mysqld, to be able to disable
  use of my_sync() (fsync()). This defaults to behavior in 4.0.16
  and before, where creating of new tables is quicker than currently.
  This option is enabled by default.
  
  Marked --bdb-no-sync as deprecated option and added another one,
  --sync-bdb-logs besides. --bdb-no-sync and --disabled-sync-bdb-logs
  are now synonyms.
sql/unireg.cc:
  One can disable my_sync() by using --disable-sync-frm
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-02-03 18:10:45 +00:00
unknown
1f739ca45e make JOIN::prepare, JOIN::optimize only once for EXPLAIN of derived table
(BUG#2120 sfter merge)


mysql-test/r/derived.result:
  correct results of derived tble EXPLAIN
  test of "Using Index" with derived tables
mysql-test/t/derived.test:
  test of "Using Index" with derived tables
sql/mysql_priv.h:
  way to force derived table save JOIN after execution
sql/sql_derived.cc:
  way to force derived table save JOIN after execution
sql/sql_lex.h:
  way to force derived table save JOIN after execution
sql/sql_select.cc:
  make JOIN::prepare, JOIN::optimize only once for EXPLAIN of derived table
2004-02-01 20:07:44 +02:00
unknown
00b2168b8c Merge sanja.is.com.ua:/home/bell/mysql/bk/mysql-4.1
into sanja.is.com.ua:/home/bell/mysql/bk/work-derived2-4.1


sql/mysql_priv.h:
  Auto merged
sql/sql_base.cc:
  Auto merged
sql/sql_lex.h:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-02-01 15:31:30 +02:00
unknown
68c0a29987 now all tables of query are locked in one place (including derived tables)
fixed BUG#2120 and other problem with EXPLAINing derived tables


mysql-test/r/derived.result:
  correct tables names & Co in derived tables
  test case for BUG#2120
mysql-test/t/derived.test:
  test case for BUG#2120
sql/mysql_priv.h:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/repl_failsafe.cc:
  correct initialization of TABLE_LIST
sql/sql_acl.cc:
  used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_base.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_delete.cc:
  all tables processing is done during opening
sql/sql_derived.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables) to sutisfy "all query tables locking" at the moment
sql/sql_insert.cc:
  all tables processing is done during opening
  correct initialization of TABLE_LIST
sql/sql_lex.cc:
  now table list will be created for whole query
  layout fix
  correct check of updated table in subqueries
sql/sql_lex.h:
  now table list will be created for whole query
  correct check of updated table in subqueries
sql/sql_olap.cc:
  THIS FUNCTION IS USED NOWHERE
  it will be good to remove it at all (handle_olaps)
sql/sql_parse.cc:
  derived tables processing moved after open/locking all tables (in open_and_lock_tables)
sql/sql_prepare.cc:
  new creating list parameters
  all tables processing is done during opening
sql/sql_select.cc:
  all tables processing is done during opening
sql/sql_select.h:
  now it used only within file where is defined
sql/sql_udf.cc:
  used simple table opening without derived table processing to avoid unneeded initialization of SELECT_LEX
sql/sql_update.cc:
  all tables processing is done during opening
2004-02-01 15:30:32 +02:00
unknown
ef55f2dcdb Fix for bug #2523 '"func_time" test fails on QNX'.
Moved all range checks for TIMESTAMP value to my_gmt_sec().
Also fixed check of upper boundary of TIMESTAMP range (which 
also now will catch datetime values which are too small for
TIMESTAMP in case if time_t is unsigned).  


mysql-test/r/timezone.result:
  Added test which checks if TIMESTAMP range is checked 
  correctly (current time zone is honoured and both upper 
  and lower bounds of TIMESTAMP range are checked).
mysql-test/t/timezone.test:
  Added test which checks if TIMESTAMP range is checked 
  correctly (current time zone is honoured and both upper 
  and lower bounds of TIMESTAMP range are checked).
sql/field.cc:
  Check if datetime value is in TIMESTAMP range has moved to 
  my_gmt_sec() function.
sql/mysql_priv.h:
  Added more constants for checking if datetime is in allowed
  range for TIMESTAMP.
sql/time.cc:
  Check if datetime value is in TIMESTAMP range has moved to 
  my_gmt_sec() function. Fixed check of its return value
  to catch overflows in both directions and also overflows in 
  case of unsigned time_t.
2004-01-30 19:15:11 +03:00
unknown
a2d67665d5 SHOW CREATE DATABASE moved to sql_show.cc where it belongs
db name is printed with append_identifier for a proper quoting
2004-01-30 07:32:35 +01:00
unknown
832ea1206d better fix BUG#2361: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key 2004-01-28 18:35:52 +01:00
unknown
a6132c6f0a Conflicts resolved
sql/field.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_table.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
sql/table.cc:
  Auto merged
include/mysqld_error.h:
  merging
sql/share/english/errmsg.txt:
  merging
2004-01-23 20:00:10 +04:00
unknown
214c178f17 SCRUM
wl #1163 (Make spatial code optional)
Patch I cleaned with Serg & Monty's suggestions


sql/gen_lex_hash.cc:
  mysql_priv.h was included for SYM_GROUP declaration
sql/lex.h:
  sym_group_xxx made global so we can use texts from them
  throughout the code
sql/lex_symbol.h:
  SYM_GROUP declaration moved to mysql_priv.h
sql/mysql_priv.h:
  declarations about SYM_GROUP
sql/sql_table.cc:
  sym_group_xxx objects used instead of text constants
  a couple of HAVE_SPATIAL removed
sql/sql_yacc.yy:
  sym_group_xxx used instead of text constants
  some duplicated code restructured
  MYF(0) parameters removed from net_printf calls
2004-01-23 16:02:57 +04:00
unknown
b44c819bb6 Merge deer.(none):/home/hf/work/mysql-4.1.clean
into deer.(none):/home/hf/work/mysql-4.1.1676


sql/item.cc:
  Auto merged
sql/item.h:
  Auto merged
sql/item_func.h:
  Auto merged
sql/item_strfunc.cc:
  Auto merged
sql/item_subselect.cc:
  Auto merged
sql/mysql_priv.h:
  Auto merged
sql/sql_prepare.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
sql/sql_yacc.yy:
  Auto merged
2004-01-19 21:06:27 +04:00
unknown
fb006367e5 merge
sql/mysql_priv.h:
  Auto merged
sql/sql_class.cc:
  Auto merged
sql/sql_help.cc:
  Auto merged
sql/sql_select.cc:
  Auto merged
2004-01-17 13:13:48 +02:00
unknown
13cf5e6b0a fix for the 2361 bug: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key
"PRIMARY" has been replaced by primary_key_name.


sql/mysql_priv.h:
  "PRIMARY" replaced by primary_key_name.
sql/sql_help.cc:
  "PRIMARY" replaced by primary_key_name.
sql/sql_select.cc:
  "PRIMARY" replaced by primary_key_name.
sql/sql_show.cc:
  "PRIMARY" replaced by primary_key_name.
sql/sql_table.cc:
  fix for the 2361 bug: ALTER TABLE ... DROP PRIMARY KEY drops a non-primary key
  "PRIMARY" replaced by primary_key_name.
sql/table.cc:
  "PRIMARY" replaced by primary_key_name.
2004-01-14 16:01:55 +04:00
unknown
b21d8b0eff removed droping field->query_id for reinitialization tables for subquery.
(BUG#2089)


mysql-test/r/subselect_innodb.result:
  correct results
sql/mysql_priv.h:
  new parameter for setup_tables()
sql/sql_base.cc:
  new parameter for setup_tables() added to avoid dropping query_id of fields during reinitialization subquery
sql/sql_class.cc:
  layout fixed
sql/sql_help.cc:
  new parameter for setup_tables()
sql/sql_insert.cc:
  new parameter for setup_tables()
sql/sql_lex.cc:
  removed incorrect code
sql/sql_load.cc:
  new parameter for setup_tables()
sql/sql_olap.cc:
  new parameter for setup_tables()
sql/sql_prepare.cc:
  new parameter for setup_tables()
sql/sql_select.cc:
  new parameter for setup_tables()
sql/sql_update.cc:
  new parameter for setup_tables()
2004-01-03 00:12:07 +02:00
unknown
376fb08072 Some small portability fixes.
Added support for lower_case_table_names=2, which is to be used on case insensitive file systems.
This tells MySQL to preserve the used case of filenames and database names to make it esier to move files between cases sensitive can case insensitive file systems (like Windows and Linux)


client/mysqltest.c:
  Indentation cleanup
include/myisam.h:
  Made some pointers 'const'
mysql-test/mysql-test-run.sh:
  Portability fix for OSX
sql/filesort.cc:
  Safety fix (not needed for current code but needed for 5.0)
sql/ha_berkeley.cc:
  More debugging
  Changed 'create' to return error number
sql/ha_berkeley.h:
  Added HA_FILE_BASED
sql/ha_innodb.cc:
  Added missing DBUG_RETURN
sql/ha_isam.cc:
  Changed create to return error number
sql/ha_isam.h:
  Added HA_FILE_BASED
sql/ha_isammrg.h:
  Added HA_FILE_BASED
sql/ha_myisam.cc:
  Changed create to return error number
sql/ha_myisam.h:
  Added HA_FILE_BASED
sql/ha_myisammrg.cc:
  Changed create to return error number
sql/ha_myisammrg.h:
  Added HA_FILE_BASED
sql/handler.cc:
  Ensure that table engines gets table names in lower case even if we are using lower_case_table_names
  Removed test for DB_TYPE_INNODB by ensuring that create method returns error number.
sql/handler.h:
  Added HA_FILE_BASED
  Made some struct entries 'const'
  Added 'alias' for create to be able to create tables in mixed case on case insensitive file systems
sql/mysql_priv.h:
  Support for lower_case_table_names=2
sql/mysqld.cc:
  Support for lower_case_table_names=2
  Moved test of case insenstive file system after all mutex are created
sql/set_var.cc:
  Support for lower_case_table_names=2
sql/sql_class.h:
  Indentation change
sql/sql_db.cc:
  Support for lower_case_table_names=2
sql/sql_insert.cc:
  Indentation change
sql/sql_parse.cc:
  Support for lower_case_table_names=2
sql/sql_rename.cc:
  Support for lower_case_table_names=2
  Added missing 'unpack_filename' to RENAME which may fix a bug in RENAME TABLE on windows
sql/sql_show.cc:
  If lower_case_table_name=2 is given, show original case in SHOW CREATE TABLE
sql/sql_table.cc:
  Support for lower_case_table_names=2 for DROP TABLE, RENAME TABLE, ALTER TABLE and CREATE TABLE
2003-12-30 13:14:21 +02:00
unknown
367ded9f71 Fix for prepared statements
Here i added Item_*::cleanup() functions,
removed a lot of ~Item_*'s,
added code to restore order_list and group_list


sql/item.cc:
  cleanups methods implemented
  Item_ref constructors changed
sql/item.h:
  cleanups declared
  Item_ref constructors changed
  some ~Item_* deleted
sql/item_cmpfunc.cc:
  new Item_ref format
sql/item_cmpfunc.h:
  saving/restoring of the original arguments added to
  eq and equal functions
sql/item_func.cc:
  New Item_ref format
sql/item_func.h:
  destructors removed/changed to 'cleanup()'
sql/item_row.cc:
  New Item_ref format
sql/item_row.h:
  ~Item_row -> cleanup()
sql/item_strfunc.cc:
  new Item_ref format
sql/item_strfunc.h:
  destructors removed
sql/item_subselect.cc:
  Item_subselect implementation,
  new Item_ref() format
sql/item_subselect.h:
  cleanups for subselects declared
sql/item_sum.cc:
  cleanups implementations
sql/item_sum.h:
  cleanups declarations
  destructors removed
sql/mysql_priv.h:
  free_items, cleanup_items exported
sql/sql_prepare.cc:
  cleanup_items, free_items calls added
  stmt->query_id= thd->query_id restored
  cleanup procedures for group_list and order_list added
sql/sql_yacc.yy:
  New Item_ref() format
2003-12-30 14:08:19 +04:00