Commit graph

8679 commits

Author SHA1 Message Date
unknown
d90e3b497f ha_innodb.cc:
Fix a theoretical hang over the adaptive hash latch in InnoDB if one runs INSERT ... SELECT ... (binlog not enabled), or a multi-table UPDATE or DELETE, and only the read tables are InnoDB type, the rest are MyISAM; this also fixes bug #7879 for InnoDB type tables


sql/ha_innodb.cc:
  Fix a theoretical hang over the adaptive hash latch in InnoDB if one runs INSERT ... SELECT ... (binlog not enabled), or a multi-table UPDATE or DELETE, and only the read tables are InnoDB type, the rest are MyISAM; this also fixes bug #7879 for InnoDB type tables
2005-01-13 19:20:49 +02:00
unknown
1e63ecd035 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.0
2005-01-13 16:16:05 +02:00
unknown
f247a0d515 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2005-01-12 23:31:31 +01:00
unknown
4bdf479da0 Symlink vulnerability fixed.
reported by Javier Fernandez-Sanguino Pena
and Debian Security Audit Team (http://www.debian.org/security/audit)
2005-01-12 23:30:54 +01:00
unknown
b692ca4fd5 A fix for Bug#6761 "mysql_list_fields() does not work": test
case will be added to client_test in 4.1


sql/sql_parse.cc:
  A fix for bug #6761: "mysql_list_fields() does not work": init
  thd->query_length, which is used next line. Remove a stale comment.
2005-01-12 17:04:45 +03:00
unknown
c65c72f01a InnoDB: Use system-supplied tmpfile() on Netware, as there is no
open interface for setting the "delete-on-close" flag.


innobase/os/os0file.c:
  Use system-supplied tmpfile() on Netware
sql/ha_innodb.cc:
  Remove innobase_mysql_tmpfile() on Netware.
2005-01-12 15:24:49 +02:00
unknown
7310387078 Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0


sql/mysqld.cc:
  Auto merged
2005-01-12 12:35:34 +01:00
unknown
0bcfc49b4b added missing Com_update_multi status variable 2005-01-12 12:18:17 +01:00
unknown
d8d9f79e09 Fix for BUG#7658 "optimize crashes slave thread (1 in 1000)]":
mysql_admin_table() attempted to write to a vio which was 0. I could have fixed mysql_admin_table()
but fixing my_net_write() looked more future-proof.


sql/net_serv.cc:
  If no VIO, no write.
2005-01-10 13:52:32 +01:00
unknown
04498c2a4f Bootstrap:
Made the default --mail address to be <build@mysql.com>.


Build-tools/Bootstrap:
  Made the default --mail address to be <build@mysql.com>.
2005-01-06 22:30:23 -06:00
unknown
5b47aaed3a Fix for BUG#7714 "if disk full, sometimes MyISAM doesn't wait for free space, corrupts table"
This happened only if my_write() couldn't write even one byte.
I cannot easily add a .test for this, but I tested by hand before and after the change.


mysys/my_write.c:
  Monty and I could not find a reason why a write should not wait for free disk space
  (if disk is full) because it could not write at least one byte; doing so certainly
  corrupts tables. my_pwrite() and my_fwrite() don't test for -1, so no problem.
2005-01-06 21:30:39 +01:00
unknown
10844e41da - enable "with-extra-charsets=complex" for the "compile-dist" distribution
build (to make the test suite pass)


BUILD/compile-dist:
  - enable "with-extra-charsets=complex" for the distribution build
    (to make the test suite pass)
2005-01-06 14:35:14 +01:00
unknown
3edb7774ed Allow DEFAULT_THREAD_STACK to be set via -DDEFAULT_THREAD_STACK=... so our
official binary builds for Linux that are built against a static glibc with
a 128k thread stack size limit can be compiled with a default that doesn't
result in a harmless (but oft-misunderstood) warning message. (Bug #6226)


include/my_pthread.h:
  Allow DEFAULT_THREAD_STACK to be set via -DDEFAULT_THREAD_STACK=...
2005-01-05 19:02:17 +01:00
unknown
8ffe8ab302 Make query_cache_wlock_invalidate visible in SHOW VARIABLES (Bug #7594)
sql/set_var.cc:
  Make query_cache_wlock_invalidate visible in SHOW VARIABLES
2005-01-04 02:45:01 +01:00
unknown
7b7216e1f4 - Updated Bootstrap to include merge ChangeSets in the source distribution's
ChangeLog, too (to be more exact when tagging a release that's based on a
  merge ChangeSet)


Build-tools/Bootstrap:
  - include merge ChangeSets into the ChangeLog, too (to be more exact when
    tagging a release that's based on a merge ChangeSet)
2005-01-03 21:28:14 +01:00
unknown
f077d4b06b Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into sergbook.mysql.com:/usr/home/serg/Abk/mysql-4.0
2004-12-31 12:55:42 +01:00
unknown
54b768472c - Bootrap now uses "compile-dist" by default to create the source distribution
Build-tools/Bootstrap:
  - Use BUILD/compile-dist instead of compile-pentium-max
  - some minor cleanups
2004-12-31 12:46:18 +01:00
unknown
40a0199e77 unsufficient privilege checks in GRANT, when a grantor has column-level privileges 2004-12-30 21:01:11 +01:00
unknown
15017480a7 Merge bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/home/dlenev/src/mysql-4.0-bg7297
2004-12-30 21:18:45 +03:00
unknown
1ffd688a4a Fix for bug #7515 "from_unixtime(0) now returns NULL instead of
the Epoch". (With after review fixes).


mysql-test/r/func_time.result:
  Added test for bug #7515 "from_unixtime(0) now returns NULL instead of
  the Epoch".
mysql-test/t/func_time.test:
  Added test for bug #7515 "from_unixtime(0) now returns NULL instead of
  the Epoch".
sql/item_timefunc.cc:
  Item_func_from_unixtime:
   from_unixtime(0) should return Epoch instead of NULL.
sql/item_timefunc.h:
  Item_func_from_unixtime:
   - Removed unused method definition.
   - fix_length_and_dec() should set maybe_null to true since now
     from_unixtime() can return NULL even in case when none of its
     arguments is NULL.
2004-12-30 21:18:10 +03:00
unknown
4ba981e521 row0mysql.c:
Fix the previous bug fix: dropping a table with FOREIGN KEY checks running on it caused a cascade of failed drops while the foreign key check was waiting for a lock


innobase/row/row0mysql.c:
  Fix the previous bug fix: dropping a table with FOREIGN KEY checks running on it caused a cascade of failed drops while the foreign key check was waiting for a lock
2004-12-27 20:06:40 +02:00
unknown
a7b984d233 row0ins.c:
Fix bug: if we dropped a table where an INSERT was waiting for a lock to check a FOREIGN KEY constraint, then an assertion would fail in lock_reset_all_on_table(), since that operation assumes no waiting locks on the table or its records
row0mysql.c:
  Fix bug: InnoDB failed to drop a table in the background drop queue if the table was referenced by a foreign key constraint


innobase/row/row0mysql.c:
  Fix bug: InnoDB failed to drop a table in the background drop queue if the table was referenced by a foreign key constraint
innobase/row/row0ins.c:
  Fix bug: if we dropped a table where an INSERT was waiting for a lock to check a FOREIGN KEY constraint, then an assertion would fail in lock_reset_all_on_table(), since that operation assumes no waiting locks on the table or its records
2004-12-27 17:15:38 +02:00
unknown
50bd606d06 A fix (bug #5652: [patch] tcpwrapper support is broken on systems using an unmodified tcpwrapper).
sql/mysqld.cc:
  A fix (bug #5652: [patch] tcpwrapper support is broken on systems using an unmodified tcpwrapper).
  Wrapper for fromhost, hosts_access, eval_client has been removed.
2004-12-24 18:52:24 +04:00
unknown
8feedada9d Merge sinisa@bk-internal.mysql.com:/home/bk/mysql-4.0
into sinisa.nasamreza.org:/mnt/work/mysql-4.0
2004-12-23 21:11:31 +02:00
unknown
8ccfad7636 Fix for a bug #7495
mysql-test/r/func_str.result:
  result for test case for a bug in QUOTE() (Bug #7495)
mysql-test/t/func_str.test:
  test case for a bug in QUOTE() (Bug #7495)
sql/item_strfunc.cc:
  a better fix for a QUOTE() bug (Bug #7495)
2004-12-23 21:08:54 +02:00
unknown
4a5ca0bc63 Make GRANTs, which change SSL attributes and/or user limits,
to behave well on 5.0 tables (well now you can't use tables from 4.1
and 5.0 with 4.0 because former use utf8, but still it is nice to have
similar code in acl_init() and replace_user_table()).
This also will make such GRANTs working in 5.0 (they are broken now).


mysql-test/r/grant.result:
  Added test for GRANT which manipulates user limits.
mysql-test/t/grant.test:
  Added test for GRANT which manipulates user limits.
2004-12-23 21:59:36 +03:00
unknown
74cc635a7c A fix for the bug #7495
mysql-test/r/func_str.result:
  A result for test case for the bug #7495 involving either LTRIM() 
  or TRIM() within QUOTE() function.
mysql-test/t/func_str.test:
  A test case for the bug #7495 involving either LTRIM() or TRIM() 
  within QUOTE() function.
sql/item_strfunc.cc:
  Changes for LTRIM() and TRIM() functions that aleviate the bug  
  entirely.
2004-12-22 21:31:17 +02:00
unknown
e6dfed9f4c ha_innodb.cc:
If AUTOCOMMIT=1, do not acquire an InnoDB table lock in LOCK TABLES; this makes porting of old MyISAM applications to InnoDB easier, since in that mode InnoDB table locks caused deadlocks very easily


sql/ha_innodb.cc:
  If AUTOCOMMIT=1, do not acquire an InnoDB table lock in LOCK TABLES; this makes porting of old MyISAM applications to InnoDB easier, since in that mode InnoDB table locks caused deadlocks very easily
2004-12-22 11:01:25 +02:00
unknown
fed35d922a os0file.c:
Put back accidentally removed undef and remove a debug def


innobase/os/os0file.c:
  Put back accidentally removed undef and remove a debug def
2004-12-21 18:33:53 +02:00
unknown
b0d26c2642 os0file.c:
Fix InnoDB bug: on HP-UX, with a 32-bit binary, InnoDB was only able to read or write <= 2 GB files; the reason was that InnoDB treated the return value of lseek() as a 32-bit integer; lseek was used on HP-UX-11 as a replacement for pread() and pwrite() because HAVE_BROKEN_PREAD was defined on that platform


innobase/os/os0file.c:
  Fix InnoDB bug: on HP-UX, with a 32-bit binary, InnoDB was only able to read or write <= 2 GB files; the reason was that InnoDB treated the return value of lseek() as a 32-bit integer; lseek was used on HP-UX-11 as a replacement for pread() and pwrite() because HAVE_BROKEN_PREAD was defined on that platform
2004-12-21 18:21:17 +02:00
unknown
9cee9f6969 configure.in:
Increment from 4.0.23 to 4.0.24


configure.in:
  Increment from 4.0.23 to 4.0.24
2004-12-20 15:12:13 -06:00
unknown
047f790471 Merge acurtis@bk-internal.mysql.com:/home/bk/mysql-4.0
into ltantony.rdg.cyberkinetica.homeunix.net:/usr/home/antony/work/bug7391.4
2004-12-18 11:59:10 +00:00
unknown
63e4725503 Fix test 2004-12-18 11:57:17 +00:00
unknown
2ca011d460 Simplify code during review 2004-12-18 13:45:19 +02:00
unknown
c6be66530a Remove bogus lines 2004-12-18 02:34:11 +00:00
unknown
4f9a0a06a8 Bug#7391 - Multi-table UPDATE security regression
Add in missing privilege checks. 
  Tests for the privileges.


mysql-test/r/grant.result:
  Bug#7391 - Multi-table UPDATE security regression
    Tests column, table and db level access
mysql-test/t/grant.test:
  Bug#7391 - Multi-table UPDATE security regression
    Tests column, table and db level access
sql/sql_update.cc:
  Bug#7391 - Multi-table UPDATE security regression
    Add in missing privilege checks.
2004-12-18 02:07:32 +00:00
unknown
6d7937c078 Merge jbruehe@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/M40/mysql-4.0
2004-12-16 20:29:59 +01:00
unknown
1b17ba5244 Have 'mysql-test-run' write a list of all failed tests at the end, if run with '--force'.
mysql-test/mysql-test-run.sh:
  Backport an improvement from 4.1: If the tool is run with '--force', give a list of all test cases that failed at the end.
  This is essential for automated analysis of the build logs file.
2004-12-16 20:26:24 +01:00
unknown
8722bb9a09 Moved drop table statement to the end.
mysql-test/r/update.result:
  moved drop statement
mysql-test/t/update.test:
  moved drop statement
2004-12-16 18:44:39 +02:00
unknown
da2c55b3ab Test for BUG#6054. The bug itsel is fixed by the fix for #5837.
mysql-test/r/update.result:
  test results
mysql-test/t/update.test:
  bug test
2004-12-16 18:04:51 +02:00
unknown
2fb340b520 Fix for bug #7297 "Two digit year should be interpreted correctly
even with zero month and day" aka "Date decoding trouble"

Two digit year should be interpreted correctly as year in 20th or 21st
century even with zero month and day. Only exception should be zero date
'00-00-00' or '00-00-00 00:00:00'.


mysql-test/r/type_datetime.result:
  Added test for bug #7297 "Two digit year should be interpreted correctly
  even with zero month and day"
mysql-test/t/type_datetime.test:
  Added test for bug #7297 "Two digit year should be interpreted correctly
  even with zero month and day"
sql/time.cc:
  str_to_TIME(): Two digit year should be interpreted correctly as year
  in 20th or 21st century even with zero month and day. Only exception 
  should be zero date '00-00-00' or '00-00-00 00:00:00'.
2004-12-16 16:31:50 +03:00
unknown
f40f838f50 dict0load.c:
dict_load_table(): detect the new table format of MySQL 5.0.3


innobase/dict/dict0load.c:
  dict_load_table(): detect the new table format of MySQL 5.0.3
2004-12-13 12:31:17 +02:00
unknown
b18e8c92bc Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.0
into mysql.com:/dbdata/psergey/mysql-4.0-bug6976
2004-12-11 20:02:45 +03:00
unknown
b5c119e7c0 Fix for BUG#6976:
In Item_ref::Item_ref set maybe_null (and other fields fix_fields sets) to be the 
same as in (*ref), because Item_ref::fix_fields() will not be called.  Previously 
maybe_null was 0 always and this produced a bogus state where 
maybe_null==0 && is_null() == true 
which broke evaluation for some upper-level Items, like AND and OR.


mysql-test/r/group_by.result:
  Test for BUG#6976
mysql-test/t/group_by.test:
  Test for BUG#6976
sql/item.cc:
  Comment added
sql/item.h:
  Fix for BUG#6976:
    in Item_ref::Item_ref(Item**...) fix all fields because fix_fields() will not be called.
2004-12-11 19:59:09 +03:00
unknown
8e4251dd85 Fix for BUG#5837 - attempt 3.
Call mark_as_null_row in join_read_const and join_read_system.


mysql-test/r/multi_update.result:
  Testcase for BUG#5837
mysql-test/t/multi_update.test:
  Testcase for BUG#5837
sql/table.h:
  Added comments
2004-12-11 15:51:52 +03:00
unknown
96a927b5dd Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.0
2004-12-10 23:33:55 +02:00
unknown
c486461e44 dict0dict.h, dict0dict.c, ha_innodb.cc:
Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8


sql/ha_innodb.cc:
  Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8
innobase/dict/dict0dict.c:
  Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8
innobase/include/dict0dict.h:
  Fix for the 0xA0 character problem in the InnoDB FOREIGN KEY parser: if my_isspace() treats 0xA0 as space, then let InnoDB do the same; this might break some multi-byte charset id's, though for big5, ujis, sjis this seems not to change the current behavior (I checked the tables in /share/charsets); this fix must NOT be merged to 4.1 because in 4.1 everything is in UTF-8
2004-12-10 17:12:47 +02:00
unknown
f4f4e6367d srv0srv.c:
srv_printf_innodb_monitor(): Removed extraneous rewind() call.
  The caller of this function calls rewind() if necessary.
  In this way, we avoid rewind()ing stderr in
  srv_lock_timeout_and_monitor_thread().


innobase/srv/srv0srv.c:
  srv_printf_innodb_monitor(): Removed extraneous rewind() call.
  The caller of this function calls rewind() if necessary.
  In this way, we avoid rewind()ing stderr in
  srv_lock_timeout_and_monitor_thread().
2004-12-10 00:06:33 +02:00
unknown
d5da66e83c Merge bk-internal:/home/bk/mysql-4.0/
into serg.mylan:/usr/home/serg/Abk/mysql-4.0
2004-12-07 12:13:25 +01:00
unknown
9d48570cd4 two fixes for potential security bugs 2004-12-07 12:08:20 +01:00