Commit graph

3262 commits

Author SHA1 Message Date
unknown
ecf6eeca60 c++ comment fixed 2004-02-21 14:25:43 +01:00
unknown
68242939d8 Fixed usage of strxnmov() in recent changesets
libmysql/libmysql.c:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
mysys/mf_tempfile.c:
  Fixed usage of strnxmov()
  Simple optimization
mysys/my_tempnam.c:
  Fixed usage of strnxmov()
  Simple optimization
sql/log.cc:
  simple optimization
sql/mini_client.cc:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
sql/mysqld.cc:
  szPipeName -> pipe_name
  fixed usage of strxnmov()
  Fixed indentation
2004-02-19 22:04:31 +02:00
unknown
e022b27860 Fix for a bug #2799.
Multi-table delete's with tables having foreign key constraints
did not return the error.

Also added tests for multi-table updates.
2004-02-19 19:43:46 +02:00
unknown
a01a3dd5ef Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0
2004-02-19 19:37:31 +02:00
unknown
4e01d4de15 crease number of open files to 2048 on windows
Don't do fsync on temporary .frm files


include/config-win.h:
  Increase number of open files to 2048 on windows
sql/unireg.cc:
  Don't do fsync on temporary files
2004-02-19 19:36:53 +02:00
unknown
efca692ae7 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-02-19 09:13:48 +01:00
unknown
ddf17601f3 potential problem fixed afer some reasoning 2004-02-19 09:11:46 +01:00
unknown
7c0e7321b9 Added comment 2004-02-16 18:58:21 +02:00
unknown
6c2de2409a fix for the bug #2786 incorrect precedence for XOR operator 2004-02-16 19:43:43 +04:00
unknown
6531120514 Merge heikki@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.0
2004-02-16 09:59:25 +02:00
unknown
5d037cb67c ha_innodb.cc:
Make the drop InnoDB database operation aware of the setting FOREIGN_KEY_CHECKS=0; DROP DATABASE seems to work ok anyway, but that is because MySQL first calls DROP TABLE for each table which has an .frm file


sql/ha_innodb.cc:
  Make the drop InnoDB database operation aware of the setting FOREIGN_KEY_CHECKS=0; DROP DATABASE seems to work ok anyway, but that is because MySQL first calls DROP TABLE for each table which has an .frm file
2004-02-16 09:58:47 +02:00
unknown
40ad915493 Cleanup + safety comment
sql/share/english/errmsg.txt:
  Added note to ensure that no one adds new error message to 4.0.
  This is important as it causes too many problems with test suite in 4.1
sql/sql_load.cc:
  Removed wrong comment.
2004-02-16 09:41:13 +02:00
unknown
a6e2f61e8c Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


configure.in:
  Auto merged
2004-02-16 09:34:04 +02:00
unknown
940f784285 Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-02-14 15:06:09 +02:00
unknown
0a95bda23a Always use libtool with "--preserve-dup-deps"
Always use all LOAD DATA options in replication.
Fixed problem in mysqlbinlog where LOAD DATA options could be overwritten.


client/mysqlbinlog.cc:
  Ensure that we don't call init_dynamic_array() before my_init() has been done
configure.in:
  Always use libtool with "--preserve-dup-deps" to prevent link problems with g++
mysql-test/r/mysqlbinlog.result:
  new results
mysql-test/r/range.result:
  new results
mysql-test/t/range.test:
  add missing DROP TABLE
sql/log_event.cc:
  Always use all LOAD DATA options. This is needed to handle commands of type "FIELDS TERMINATED BY ''"
  Allocate memory for Create_file_log_event options as these may be overwritten in mysqlbinlog
sql/log_event.h:
  Free buffer
2004-02-13 16:05:09 +02:00
unknown
494da94e39 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2898/mysql-4.0
2004-02-13 02:25:50 +04:00
unknown
9c8ca1fa64 fixed copying of color in SEL_ARG::clone (fixed bug #2968)
mysql-test/r/select_found.result:
  added new tests for bugs with range optimization (bugs #2448 and #2698)
mysql-test/t/select_found.test:
  added new tests for bugs with range optimization (bugs #2448 and #2698)
2004-02-12 23:45:39 +04:00
unknown
a162eef6ae Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-02-11 19:17:27 +02:00
unknown
30d52f53d1 Code cleanups
client/mysqlbinlog.cc:
  Ensure that errors are returned to upper levels instead of just doing 'exit/die' in sub function.
sql/handler.h:
  Indentation cleanup
sql/sql_insert.cc:
  Indentation cleanup
2004-02-10 12:03:08 +01:00
unknown
e2646f092e row0mysql.c:
Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
Many files:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way


sql/ha_innodb.cc:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/sql_insert.cc:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/ha_innodb.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
sql/handler.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/dict/dict0dict.c:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/include/dict0dict.h:
  Do not let REPLACE to perform internally an UPDATE if the table is referenced by a FOREIGN KEY: the manual says that REPLACE must resolve a duplicate key error semantically with DELETE(s) + INSERT, and not by an UPDATE; the internal update caused foreign key checks and cascaded operations to behave in a semantically wrong way
innobase/row/row0mysql.c:
  Allow always DROPping of a table which is only referenced by FOREIGN KEY constraints from the same table
2004-02-09 23:57:29 +02:00
unknown
3da94694b2 follow-up to bug #2628: attempt to make
alter table rename a bit more efficient in case of
lower_case_table_names.
2004-02-09 14:29:31 +03:00
unknown
b0076aad73 ha_innodb.cc:
If AUTOCOMMIT=1, then we do not need to make a plain SELECT set shared locks even on the SERIALIZABLE isolation level, because we know the transaction is read-only: a read-only transaction can always be performed on the REPEATABLE READ level, and that does not endanger the serializability


sql/ha_innodb.cc:
  If AUTOCOMMIT=1, then we do not need to make a plain SELECT set shared locks even on the SERIALIZABLE isolation level, because we know the transaction is read-only: a read-only transaction can always be performed on the REPEATABLE READ level, and that does not endanger the serializability
2004-02-08 12:53:31 +02:00
unknown
629dda9c46 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/kostja/mysql/mysql-4.0-merge
2004-02-06 19:57:12 +03:00
unknown
7db76e5a16 fixed bug #1378 "mysqlbinlog for remote host is broken"
client/mysqlbinlog.cc:
  fixed bug #1378 "mysqlbinlog for remote host is broken"
  by using shared part of code for local and remote variant 
  (function process_event)
mysql-test/r/mysqlbinlog.result:
  fixed results for remote variant 
  (they are the same as for local now)
mysql-test/t/mysqlbinlog.test:
  discarded note 'V. Vagin should ...' 
  because V.Vagin done
sql/log_event.cc:
  added special local_fname flag to Load_log_event for 
  using in Load_log_event::check_fname_outside_temp_buf 
  instead of ugly condition
sql/log_event.h:
  added special local_fname flag to Load_log_event for 
  using in Load_log_event::check_fname_outside_temp_buf 
  instead of ugly condition
2004-02-06 20:57:11 +04:00
unknown
854076da62 3.23 -> 4.0 merge: after merge fixes 2004-02-06 16:40:44 +03:00
unknown
5db2d195a6 merge 3.23 -> 4.0, 2003/02/06
BitKeeper/etc/ignore:
  auto-union
BitKeeper/etc/logging_ok:
  auto-union
mysql-test/r/func_math.result:
  Auto merged
mysql-test/t/func_math.test:
  Auto merged
sql/item_func.cc:
  Auto merged
2004-02-06 15:23:41 +03:00
unknown
b5819094a7 Fix for bug #2628 "ALTER TABLE destroys table and reports success"
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
mysql-test/r/alter_table.result:
  Fix for bug #2628: test result fixed
mysql-test/t/alter_table.test:
  Fix for bug #2628: test case added
sql/sql_table.cc:
  Fix for bug #2628:
  We need to take into account database name when checking if source and 
  destination table names are equal.
  Note, that after merge to 4.0 we also need to check for 
  lower_case_table_names.
2004-02-06 14:28:57 +03:00
unknown
b8004902c4 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2526/mysql-4.0
2004-02-05 18:14:39 +04:00
unknown
e55558150d sql_load.cc:
Added a comment for already pushed bug fix


sql/sql_load.cc:
  Added a comment for already pushed bug fix
2004-02-05 16:04:43 +02:00
unknown
f79ff0f909 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_2526/mysql-4.0


sql/sql_class.cc:
  Auto merged
2004-02-05 17:53:46 +04:00
unknown
b911f9b0c0 code cleanup 2004-02-05 17:52:41 +04:00
unknown
d295f07c42 Added testing of pthread_key_delete (to fix compile problem on SCO) (Bug #2461)
DROP DATABASE now assumes RAID directories are in hex. (Bug #2627)
Don't increment 'select_full_range' and similar statistics for EXPLAIN queries. (Bug #2506)
Test in configure if pthread_key_delete() exists (to fix compile problem on SCO) (Bug #2461)


BUILD/compile-pentium-max:
  Added --with-raid
configure.in:
  Added testing of pthread_key_delete (to fix compile problem on SCO)  (Bug #2461)
include/my_pthread.h:
  Added testing of pthread_key_delete (to fix compile problem on SCO)  (Bug #2461)
innobase/include/data0data.ic:
  Added missing newline
mysql-test/r/raid.result:
  Test of DROP DATABASE with RAID directories in hex
mysql-test/t/raid.test:
  Test of DROP DATABASE with RAID directories in hex
sql/sql_db.cc:
  DROP DATABASE could not drop databases with RAID tables that had
  more than 9 RAID_CHUNKS because DROP DATABASE assumed raid tables where in decimal while the RAID CREATE code assumed directories was in hex.(Bug #2627)
sql/sql_select.cc:
  Don't increment 'select_full_range' and similar statistics for EXPLAIN queries. (Bug #2506)
sql/sql_udf.cc:
  mysqld crashed if mysql.func table didn't exists (Bug #2577)
2004-02-05 09:12:23 +01:00
unknown
22b2067aa5 added checking for bootstrap in select_send::send_data
(fixed bug #2526 "--init-file crashes MySQL if contains large select")
Such checking usually works in send_ok, send_eof, but in this case large 
result causes interim flushing.


sql/sql_class.cc:
  added checking for bootstrap in select_send::send_data
2004-02-04 21:35:20 +04:00
unknown
c8ff8ec18d beautify SHOW INDEX 2004-02-04 17:42:18 +01:00
unknown
128fac0532 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
2004-02-04 09:51:28 +01:00
unknown
4b44b849ba Fixed problem with range optimization over overlapping ranges (#2448)
mysql-test/r/ctype_tis620.result:
  Cleanup test
mysql-test/r/range.result:
  Test problem with range optimization over overlapping ranges (#2448)
mysql-test/t/ctype_tis620.test:
  Cleanup test
mysql-test/t/range.test:
  Test problem with range optimization over overlapping ranges (#2448)
sql/mysqld.cc:
  Remove debug statement
strings/ctype-tis620.c:
  est problem with range optimization over overlapping ranges (#2448)
2004-02-04 09:51:13 +01:00
unknown
4d98ab822b Fixed a bug in slave-compressed-protocol. Using this option
from command line did not work.
2004-02-04 10:48:42 +02:00
unknown
7ba7ce6e6d Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/my/mysql-4.0


sql/mysqld.cc:
  Auto merged
sql/sql_parse.cc:
  Auto merged
sql/sql_show.cc:
  Auto merged
2004-02-04 00:29:34 +01:00
unknown
796a040d5c Ensure that wait_timeout doesn't overflow on windows. (Bug #2400) 2004-02-04 00:28:58 +01:00
unknown
5614033db1 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0


sql/mysqld.cc:
  Auto merged
2004-02-03 20:46:06 +01:00
unknown
313761cb40 Ensure that privileges are tested properly for multi-table-updates.
Now one need only SELECT privilege for tables that are only read in
UPDATE statements with many tables. (Bug #2377).


sql/sql_acl.cc:
  Comment cleanup
sql/sql_parse.cc:
  Merged duplicate code.
  Removed some outdated 'tables->db' tests.
  Check privileges for multi-updates properly (Bug #2377)
sql/sql_show.cc:
  Remove disabled code
sql/sql_update.cc:
  Ensure that privileges are tested properly for multi-table-updates
tests/grant.pl:
  Added more tests
tests/grant.res:
  updated results
2004-02-03 19:17:23 +01: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
cbda6835ed clean up comments 2004-02-03 18:21:48 +04:00
unknown
619eaee654 Give error if locked table is used twice in query. This fixes strange error message when doing LOCK TABLES t1 WRITE; INSERT TABLE t1 SELECT * from t1 (Bug #2296)
client/mysqldump.c:
  Better help for flush-logs
mysql-test/r/lock.result:
  Test for LOCK TABLES ; INSERT ... SELECT
mysql-test/t/lock.test:
  Test for LOCK TABLES ; INSERT ... SELECT
2004-02-03 09:46:48 +01:00
unknown
e0b0ec6b2c Proposed (version #2) fix for bug #1948:
"system variable query_prealloc_size can be only global"


include/my_sys.h:
  Fix for bug #1948:
  - added reset_root_defaults function declaration
mysys/my_alloc.c:
  Fix for bug #1948:
  - implementation and description of reset_root_defaults
sql/set_var.cc:
  Fix for bug #1948:
  - fix_thd_mem_root and fix_trans_mem_root after update triggers
    implemented for variables query_prealloc_size, query_alloc_block_size,
    trans_prealloc_size, trans_alloc_block_size
2004-02-02 23:01:58 +03:00
unknown
af6141b2f8 increase the size of a signal thread's stack (the old one was too small for the thread to be created on some systems)
bug#2599
2004-02-02 19:32:05 +01:00
unknown
5a5eae1d21 Typo fixing
s/expection/exception


BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-02-02 12:09:47 +02:00
unknown
08177508f5 dict0dict.c:
Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind
row0mysql.c, ha_innodb.cc, sql_table.cc:
  Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0


sql/sql_table.cc:
  Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0
sql/ha_innodb.cc:
  Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0
innobase/row/row0mysql.c:
  Return error message Cannot delete or update a parent row... if we try to drop a table which is referenced by a FOREIGN KEY constraint, and the user has not set foreign_key_checks=0
innobase/dict/dict0dict.c:
  Remove redundant code; parse both the database name and the table name in a FOREIGN KEY constraint with quotes in mind
2004-02-02 00:10:45 +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
e95a3e3ce8 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg2464


sql/sql_parse.cc:
  Auto merged
2004-01-30 15:13:54 +03:00