Commit graph

8263 commits

Author SHA1 Message Date
unknown
1e86cd1ed1 Merge sgluhov@bk-internal.mysql.com:/home/bk/mysql-4.0
into gluh.mysql.r18.ru:/home/gluh/MySQL-BUGS/mysql-4.0
2004-08-23 19:16:21 +04:00
unknown
6d9046c6e7 Fix for bug #5134: WHERE x = 'bar' AND x LIKE BINARY 'bar' returns
wrong results
2004-08-23 19:13:47 +04:00
unknown
e9c25d9336 Fix for BUG#5033 "When using temporary tables truncate does NOT reset the auto_increment counter"
(ok'd by CTO to fix it in 4.0).
Fix to make mysql-test-run work with all Valgrind versions.


mysql-test/mysql-test-run.sh:
  fixing mysql-test-run.sh so that it works indifferently with Valgrind 1.x, 2.x
  (versions <= 2.0.0 refuse --tool option; versions >=2.1.2 require it; 2.1.0 accepts it).
  I hope the shell code is portable enough; anyway Valgrind only runs on Linux...
  I tested it with 2.0.0, 2.1.0, 2.1.2.
mysql-test/r/truncate.result:
  result update
mysql-test/t/truncate.test:
  testing if TRUNCATE resets autoinc counter for temp tables (BUG#5033); testing difference with DELETE FROM.
sql/sql_delete.cc:
  in mysql_truncate(), always reset the autoinc counter, as manual says (even if it's a temp table, which was BUG#5033).
2004-08-23 16:15:57 +02:00
unknown
9ecbafb512 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/pem/work/mysql-4.0
2004-08-23 15:30:49 +02:00
unknown
b7e4463dac Fixed: BUG#5135: cannot turn on log_warnings with SET in 4.1 (and 4.0)
mysql-test/r/variables.result:
  Test case for BUG#5135, check that setting log_warnings actually works.
mysql-test/t/variables.test:
  Test case for BUG#5135, check that setting log_warnings actually works.
sql/mysqld.cc:
  Set a max value for log_warnings, so se can set it to something other than 0.
2004-08-23 15:29:55 +02:00
unknown
38b8c98543 unnecessary LINT_INIT removed 2004-08-23 13:43:55 +02:00
unknown
cb6dc5738c after merge fixes 2004-08-22 12:43:26 +02:00
unknown
24c008a5fb ported bugfix for #2408 from 3.23
(cannot call it a "merge" :)
2004-08-22 10:22:59 +02:00
unknown
35d5744e8a bug#2408 - Multiple threads altering MERGE table UNIONs hang/crash.
Abandoned improper use of MyISAM data.
Thanks Ingo!
2004-08-22 09:36:17 +02:00
unknown
c1fd20bb5e null.test, null.result:
Added test case for bug #4256.
join_outer.result:
  Fixed bug #4256.
item_cmpfunc.h:
  Fixed inconsistency of values of used_tables_cache and
  const_item_cache for Item_func_isnull objects.
  This inconsistency caused bug #4256.


sql/item_cmpfunc.h:
  Fixed inconsistency of values of used_tables_cache and
  const_item_cache for Item_func_isnull objects.
  This inconsistency caused bug #4256.
mysql-test/r/join_outer.result:
  Fixed bug #4256.
mysql-test/r/null.result:
  Added test case for bug #4256.
mysql-test/t/null.test:
  Added test case for bug #4256.
2004-08-20 23:48:30 -07:00
unknown
4f0e2da316 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-08-20 17:16:03 +02:00
unknown
cd8054d431 Making FLUSH TABLES WITH READ LOCK block COMMITs of existing transactions,
in a deadlock-free manner. This splits locking the global read lock in two steps.
This fixes a consequence of this bug, known as:
BUG#4953 'mysqldump --master-data may report incorrect binlog position if using InnoDB'
And a test.


sql/handler.cc:
  making COMMIT wait if FLUSH TABLES WITH READ LOCK happened.
sql/lock.cc:
  an additional stage so that FLUSH TABLES WITH READ LOCK blocks COMMIT:
  make_global_read_lock_block_commit():
  taking the global read lock is TWO steps (2nd step is optional; without
  it, COMMIT of existing transactions will be allowed):
  lock_global_read_lock() THEN make_global_read_lock_block_commit().
sql/mysql_priv.h:
  new argument to wait_if_global_read_lock()
sql/sql_class.h:
  THD::global_read_lock now an uint to reflect the 2 steps of global read lock (does not block COMMIT / does)
sql/sql_db.cc:
  update for new prototype
sql/sql_parse.cc:
  implementing the two steps of global read lock so that FLUSH TABLES WITH READ LOCK can block COMMIT without deadlocking with COMMITs.
2004-08-20 16:35:23 +02:00
unknown
7c3e8f62f5 A fix (bug #5115: Erronious Syntax Error when comment placed inside of "create table")
client/mysql.cc:
  in_comment is now outside the add_line().
2004-08-20 13:37:58 +05:00
unknown
d1c5ca31f6 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-08-19 23:11:16 +02:00
unknown
432a0f3683 less strict assert to take into account weird cases 2004-08-19 23:10:33 +02:00
unknown
03a20c23b3 ha_innodb.cc:
innobase_mysql_tmpfile(): call dup() and my_close() on the file
  returned by create_temp_file()
  in order to avoid memory leak caused by my_open() being paired with close()


sql/ha_innodb.cc:
  innobase_mysql_tmpfile(): call dup() and my_close() on the file
  returned by create_temp_file()
  in order to avoid memory leak caused by my_open() being paired with close()
2004-08-19 23:22:16 +03:00
unknown
8c1af75515 Build bug on 64-Bit platforms.
Removed improper casts.
Thanks to Joerg Bruehe for the fix.


include/my_global.h:
  Build bug on 64-Bit platforms.
  Removed improper casts.
  Changed to uniform writing style.
  Appended 'L' to 32-Bit constants which doesn't hurt on 32-Bit,
  but can be important for some 64-Bit compilers.
2004-08-19 21:41:10 +02:00
unknown
f2ef3d162e Bug #4466 Nothing in .err when mysql service ends because of malformed my.ini options
my_getopt.c:
  Moved the inclusion of my_getopt.h down below the inclusion of my_sys.h so that enum loglevel definition would be available
my_sys.h, my_getopt.h:
  moved definition of enum loglevel from my_getopt.h to my_sys.h


include/my_getopt.h:
  moved definition of enum loglevel from my_getopt.h to my_sys.h
include/my_sys.h:
  moved definition of enum loglevel from my_getopt.h to my_sys.h
mysys/my_getopt.c:
  Moved the inclusion of my_getopt.h down below the inclusion of my_sys.h so that enum loglevel definition would be available
2004-08-19 20:26:00 +02:00
unknown
87bce8540c Bug #4466 Nothing in .err when mysql service ends because of malformed my.ini options
mysqld.cc:
  Changed LOGLEVEL enum to loglevel
mysql_priv.h, log.cc:
  Changed LOGLEVEL to loglevel.  Removed startup_ from some of the DBUG_ENTER macros. Removed the print_msg_to_log function as it was unused.
my_getopt.c, my_getopt.h:
  Renamed LOGLEVEL to loglevel to match coding standards


include/my_getopt.h:
  Renamed LOGLEVEL to loglevel to match coding standards
mysys/my_getopt.c:
  Renamed LOGLEVEL to loglevel to match coding standards
sql/log.cc:
  Changed LOGLEVEL to loglevel.  Removed startup_ from some of the DBUG_ENTER macros. Removed the print_msg_to_log function as it was unused.
sql/mysql_priv.h:
  Changed LOGLEVEL to loglevel.  Removed startup_ from some of the DBUG_ENTER macros. Removed the print_msg_to_log function as it was unused.
sql/mysqld.cc:
  Changed LOGLEVEL enum to loglevel
2004-08-19 17:56:32 +02:00
unknown
f1cf7c13e0 typos fixed 2004-08-19 13:07:54 +02:00
unknown
283ebce11a Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-08-19 12:00:03 +02:00
unknown
8001a7db2b take dec. point into account in store_double_in_string 2004-08-19 11:21:08 +02:00
unknown
f758ada4bc cosmetic change
sql/sql_class.h:
  comment
sql/sql_table.cc:
  smarter use of the Disable_binlog object (using a block so that when leaving it either way, the object gets
  destroyed and so properties of the thread get reset).
2004-08-19 10:01:01 +02:00
unknown
e769d459f7 copied new my_vsnprintf from 4.1. use "ul" when merging
BitKeeper/etc/ignore:
  Added EXCEPTIONS-CLIENT to the ignore list
2004-08-19 02:35:59 +02:00
unknown
ac866d9e94 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-08-19 00:43:48 +02:00
unknown
95334ac6c7 Fix for BUG#4971 "CREATE TABLE ... TYPE=HEAP SELECT ... stops slave (wrong DELETE in binlog)":
replacing the no_log argument of mysql_create_table() by some safer method
(temporarily setting OPTION_BIN_LOG to 0) which guarantees that even the automatic
DELETE FROM heap_table does not get into the binlog when a not-yet-existing HEAP table
is opened by mysql_create_table().


mysql-test/r/rpl_heap.result:
  result update
mysql-test/t/rpl_heap.test:
  testing a bug
sql/log.cc:
  new class Disable_binlog used to temporarily disable binlogging for one thread.
sql/mysql_priv.h:
  removing argument no_log from mysql_create_table(); no_log was perfect as some
  binlogging could still be done by open_unireg_entry() for a HEAP table.
sql/sql_class.h:
  new class Disable_binlog used to temporarily disable binlogging for one thread.
sql/sql_parse.cc:
  removing no_log
sql/sql_table.cc:
  removing no_log from mysql_create_table(); instead using new class Disable_binlog.
  Disabling binlogging in some cases, where the binlogging is done later by some other code
  (case of CREATE SELECT and ALTER).
2004-08-19 00:29:11 +02:00
unknown
4736e7d4bd BUG# 4466 - Nothing in .err when mysql service ends because of malformed my.ini options
mysqld.cc:
  Changed option_error_reporter to match new function header that includes LOGLEVEL enum
mysql_priv.h:
  Removed the MY_ERROR style bitmask.  Changed function headers to use new LOGLEVEL enum
log.cc:
  Changed print_buffer_to_log to print_buffer_to_file.  Remove the timestamp bool and now all log entries written to stderr are timestamped.  Removed some unused commented code.  changed to use the new LOGLEVEL enum.  
my_getopt.c:
  Changed functions to use the new LOGLEVEL enum and changed the included error reporter to be default_reporter.  This reporter is used in handle_options if a reporter is not given
my_getopt.h:
  changed typedefs to use better naming convention.  Moved error bitmask into the LOGLEVEL enum and included it here.


include/my_getopt.h:
  changed typedefs to use better naming convention.  Moved error bitmask into the LOGLEVEL enum and included it here.
mysys/my_getopt.c:
  Changed functions to use the new LOGLEVEL enum and changed the included error reporter to be default_reporter.  This reporter is used in handle_options if a reporter is not given
sql/log.cc:
  Changed print_buffer_to_log to print_buffer_to_file.  Remove the timestamp bool and now all log entries written to stderr are timestamped.  Removed some unused commented code.  changed to use the new LOGLEVEL enum.
sql/mysql_priv.h:
  Removed the MY_ERROR style bitmask.  Changed function headers to use new LOGLEVEL enum
sql/mysqld.cc:
  Changed option_error_reporter to match new function header that includes LOGLEVEL enum
2004-08-18 22:31:01 +02:00
unknown
0c6b96658e Bug 4937: different date -> string conversion when using
SELECT ... UNION and INSERT ... SELECT ... UNION
2004-08-18 14:46:31 +02:00
unknown
8ddcba9d8a Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-08-18 09:25:27 +02:00
unknown
0c062ae60f srv0start.c, ut0mem.c, ut0dbg.c, ut0dbg.h, srv0start.h:
Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
mysqld.cc, ha_innodb.cc:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri) 


sql/ha_innodb.cc:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
sql/mysqld.cc:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
innobase/include/srv0start.h:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
innobase/include/ut0dbg.h:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
innobase/ut/ut0dbg.c:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
innobase/ut/ut0mem.c:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
innobase/srv/srv0start.c:
  Changes for NetWare to exit the InnoDB gracefully instead of crashing the server (patch by PRam@novell.com, polished a little by Heikki Tuuri)
2004-08-18 01:48:01 +03:00
unknown
fdc8712cb0 use my_vsnprintf() just in case
bug#4925
2004-08-18 00:04:43 +02:00
unknown
35daaa5e15 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-08-17 17:34:53 +02:00
unknown
d13c9acff8 Fix for BUG#5073 "--disable-local-infile has no effect if client reads it with MYSQL_READ_DEFAULT":
that was a forgotten '~' probably.


libmysql/libmysql.c:
  When we read "disable-local-infile" from the option file specified by mysql_options(MYSQL_READ_DEFAULT_FILE),
  we must take CLIENT_LOCAL_FILES down (it was probably a forgotten '~').
2004-08-17 14:12:37 +02:00
unknown
0f7bf1199b Merge heikki@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.0
2004-08-17 14:30:36 +03:00
unknown
1146f38f32 A fix (bug #5055: SQL_SELECT_LIMIT=0 crashes command line client):
mysql outwits itself.
2004-08-17 11:12:22 +05:00
unknown
b5ea2224a6 A desperate attempt to comment one place where we do conversions. 2004-08-16 15:07:45 -07:00
unknown
fcb6f9a4ef Merge heikki@build.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.0
2004-08-16 19:06:01 +03:00
unknown
750f619325 Merge gbichot@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/mysql_src/mysql-4.0
2004-08-14 15:25:52 +02:00
unknown
f95c6fb5c0 Fix for BUG#5050 "mysql-test-run fails on rpl_trunc_binlog after 'make install'":
The binlog files we use for some tests must be installed like other mysql-test/std_data/ files.


mysql-test/Makefile.am:
  The binlog files we use for some tests must be installed like other mysql-test/std_data/ files.
  Putting a * before 001 so that it works for 6-digit extensions of 4.1.
2004-08-14 15:24:40 +02:00
unknown
767d880f9c mysql_priv.h:
Added declarations for print_msg_to_log and vprint_msg_to_log.  sql_print_error are simple functions that wrap calls to print_msg_to_log.  Define the different error types with MY_ERROR_TYPE, MY_WARNING_TYPE, and MY_INFORMATION_TYPE
gen_lex_hash.cc:
  Added NULL error reporting parameter to handle_options
log.cc:
  Add print_msg_to_log, print_buffer_to_log, and vprint_msg_to_log.  Print_msg_to_log will write the message to the windows event log if on NT.  We now have error, warning, and information versions of sql_print_xxxx.  T his is a variation of a similar changeset WAX did.
mysqld.cc:
  Added option_error_reporter callback function and pass that into handle_options
mysql.cc:
  Added NULL as error reporter arg to the end of handle_options
Many files:
  Added NULL error reporter parameter as the last paramter to handle_options
my_getopt.c:
  Added second function pointer to server as an error reporting callback.  Added local function report_option_error that will either write the error to stderr or to the error reporting callback.  changed all calls in handle_options from fprintf(stderr, ... ) to report_option_error
my_getopt.h:
  Changed declaration of handle_options to use typedefs for the two function pointers.  added second function pointer to server as an error reporting callback
mysqld.dsp:
  Added custom build step for compiling message file and added message resource file (output of mc)


VC++Files/sql/mysqld.dsp:
  Added custom build step for compiling message file and added message resource file (output of mc)
client/mysqladmin.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlcheck.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqldump.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlimport.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlmanager-pwgen.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlmanagerc.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlbinlog.cc:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqlshow.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysqltest.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/my_print_defaults.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/mysql_install.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/mysql_waitpid.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/perror.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/resolve_stack_dump.c:
  Added NULL error reporter parameter as the last paramter to handle_options
extra/resolveip.c:
  Added NULL error reporter parameter as the last paramter to handle_options
isam/isamchk.c:
  Added NULL error reporter parameter as the last paramter to handle_options
isam/pack_isam.c:
  Added NULL error reporter parameter as the last paramter to handle_options
myisam/mi_test1.c:
  Added NULL error reporter parameter as the last paramter to handle_options
myisam/myisam_ftdump.c:
  Added NULL error reporter parameter as the last paramter to handle_options
myisam/myisamchk.c:
  Added NULL error reporter parameter as the last paramter to handle_options
myisam/myisampack.c:
  Added NULL error reporter parameter as the last paramter to handle_options
include/my_getopt.h:
  Changed declaration of handle_options to use typedefs for the two function pointers.  added second function pointer to server as an error reporting callback
mysys/my_getopt.c:
  Added second function pointer to server as an error reporting callback.  Added local function report_option_error that will either write the error to stderr or to the error reporting callback.  changed all calls in handle_options from fprintf(stderr, ... ) to report_option_error
tools/mysqlmanager.c:
  Added NULL error reporter parameter as the last paramter to handle_options
client/mysql.cc:
  Added NULL as error reporter arg to the end of handle_options
sql/mysqld.cc:
  Added option_error_reporter callback function and pass that into handle_options
sql/log.cc:
  Add print_msg_to_log, print_buffer_to_log, and vprint_msg_to_log.  Print_msg_to_log will write the message to the windows event log if on NT.  We now have error, warning, and information versions of sql_print_xxxx.  T his is a variation of a similar changeset WAX did.
sql/gen_lex_hash.cc:
  Added NULL error reporting parameter to handle_options
sql/mysql_priv.h:
  Added declarations for print_msg_to_log and vprint_msg_to_log.  sql_print_error are simple functions that wrap calls to print_msg_to_log.  Define the different error types with MY_ERROR_TYPE, MY_WARNING_TYPE, and MY_INFORMATION_TYPE
BitKeeper/etc/logging_ok:
  Logging to logging@openlogging.org accepted
2004-08-14 03:38:37 +02:00
unknown
6ca6579587 row0mysql.c:
Fix bug: if we RENAME a table, InnoDB forgot to load the foreign key constraints that reference the new table name, and forgot to check that they are compatible with the table


innobase/row/row0mysql.c:
  Fix bug: if we RENAME a table, InnoDB forgot to load the foreign key constraints that reference the new table name, and forgot to check that they are compatible with the table
2004-08-13 17:27:58 +03:00
unknown
9003c146b8 - manual merge 2004-08-13 16:25:23 +02:00
unknown
621506815f Escaping [] so that darwin[7-8] gets into 'configure' and not darwin7-8
Adding a compilation define so that on recent Darwin mysqld does not react to SIGHUP and SIGQUIT:
this fixes a rpl000001 problem on our Powermac G5 machine (popping after an upgrade from 10.3.4 to
10.3.5) and is expected to fix 
BUG#2030 "relay bin log on slave resets multiple times a second"
(i.e. under some Mac OS X Panther versions, mysqld receives many SIGHUP and SIGQUIT).
So this fix is more a problem-hider than a real understanding of why mysqld receives so many signals.
Note that we saw other problems on this OS where mysqld reacts to Ctrl-Z but apparently only once,
where using SSL seems to make the problem more frequent...


configure.in:
  Escaping [] so that darwin[7-8] gets into 'configure' and not darwin7-8
  Adding a compilation define so that on recent Darwin mysqld does not react to SIGHUP and SIGQUIT.
sql/mysqld.cc:
  optionally ignore SIGHUP and SIGQUIT, for some Mac OS X Panther versions which send too many of those.
2004-08-13 15:29:47 +02:00
unknown
271b2dd886 Merge lgrimmer@build.mysql.com:/home/bk/mysql-4.0
into mysql.com:/space/my/mysql-4.0
2004-08-13 12:44:08 +02:00
unknown
4dfe16c287 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_4358/mysql-4.0
2004-08-13 02:27:21 +05:00
unknown
a88902033a Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_4358/mysql-4.0


sql/sql_select.cc:
  Auto merged
2004-08-13 02:25:50 +05:00
unknown
72ca699723 Merge vvagin@bk-internal.mysql.com:/home/bk/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_4973/mysql-4.0
2004-08-13 01:25:35 +05:00
unknown
cbf8c35974 Merge eagle.mysql.r18.ru:/home/vva/work/mysql.orig/clear/mysql-4.0
into eagle.mysql.r18.ru:/home/vva/work/BUG_4973/mysql-4.0
2004-08-13 01:21:22 +05:00
unknown
d202aefd99 - portability fix for SCO Open Server 5.0.7 (thanks to Boyd Gerber) 2004-08-12 21:55:05 +02:00
unknown
4ba06ba7b8 - Fixed two small version number issues in MySQL-shared-compat.spec
support-files/MySQL-shared-compat.spec.sh:
   - fixed using the correct version number
   - bumped up the 3.23 version number to current
2004-08-12 21:40:34 +02:00