Commit graph

975 commits

Author SHA1 Message Date
unknown
6736ce56fb trx0trx.c:
Do not assert, but print diagnostics if MySQL tries to free a trx where n_mysql_tables_in_use > 0


innobase/trx/trx0trx.c:
  Do not assert, but print diagnostics if MySQL tries to free a trx where n_mysql_tables_in_use > 0
2005-03-04 17:58:06 +02:00
unknown
56c517bda1 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/mysql-4.1
2005-03-04 15:27:07 +02:00
unknown
560968258f srv0start.c:
Work around the AIX 5.1 security patch ML7 problem in errno when it should be EEXIST


innobase/srv/srv0start.c:
  Work around the AIX 5.1 security patch ML7 problem in errno when it should be EEXIST
2005-03-03 18:00:34 +02:00
unknown
f3d52f8c8c Merge
innobase/os/os0file.c:
  Auto merged
innobase/srv/srv0start.c:
  SCCS merged
2005-03-03 17:50:04 +02:00
unknown
afc8527360 srv0start.c:
Work around the AIX 5.1 ML7 patch problem in errno at a higher level, in srv0start.c
os0file.c:
  Revert the AIX patch here


innobase/os/os0file.c:
  Revert the AIX patch here
innobase/srv/srv0start.c:
  Work around the AIX 5.1 ML7 patch problem in errno at a higher level, in srv0start.c
2005-03-03 17:46:56 +02:00
unknown
4e4fbf4839 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1


innobase/os/os0file.c:
  Auto merged
2005-03-03 17:26:12 +02:00
unknown
969be90f71 os0file.c:
AIX 5.1 after security patch ML7 seems to contain a bug that instead of EEXIST it sets errno to 0 if a file creation fails because the file already exists. Work around that bug by interpreting errno 0 in AIX as EEXIST.


innobase/os/os0file.c:
  AIX 5.1 after security patch ML7 seems to contain a bug that instead of EEXIST it sets errno to 0 if a file creation fails because the file already exists. Work around that bug by interpreting errno 0 in AIX as EEXIST.
2005-03-03 17:20:05 +02:00
unknown
a10fb6971a row0sel.c:
row_sel_store_mysql_rec(): Do not try to space-pad BLOB fields. (Bug #8771)


innobase/row/row0sel.c:
  row_sel_store_mysql_rec(): Do not try to space-pad BLOB fields. (Bug #8771)
2005-03-01 20:46:23 +02:00
unknown
f2afed0d77 After merge fixes 2005-03-01 09:51:32 +02:00
unknown
61ffbc31ae InnoDB: Fix compilation errors on IA-64 Windows
innobase/include/srv0srv.h:
  Declare srv_auto_extend_increment and srv_max_purge_lag as ulong,
  because ulint and ulong are of different size on Win64.
innobase/srv/srv0srv.c:
  Declare srv_auto_extend_increment and srv_max_purge_lag as ulong,
  because ulint and ulong are of different size on Win64.
2005-03-01 09:27:09 +02:00
unknown
8e3addf928 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1


BitKeeper/etc/ignore:
  added support-files/ndb-config-2-node.ini
2005-02-28 12:00:18 +02:00
unknown
8b8c9452dd Fixed wrong memory references found by purify
(No really critical errors found, but a few possible wrong results)


innobase/dict/dict0dict.c:
  Replace memcmp with comparison of characters to avoid warnings from purify when 'sptr' points to a very short string
mysql-test/r/select_found.result:
  Add missing drop table
mysql-test/r/type_set.result:
  More tests
mysql-test/t/select_found.test:
  Add missing drop table
mysql-test/t/type_set.test:
  More tests
mysys/my_init.c:
  Avoid warning from purify (purify doesn't handle getrusage() properly)
sql/field.h:
  enum & set are sorted as numbers. This fixes an access to uninitialized memory when enum/set are multi-byte characters
sql/filesort.cc:
  enum & set are sorted as numbers. This fixes an access to uninitialized memory when enum/set are multi-byte characters
sql/item_cmpfunc.cc:
  Fixed warning from purify. (Not critical as the arguments are passed to a function but not used)
  Allocate Arg_comparator() with 'new' instead of sql_alloc() to ensure proper initialization
sql/mysqld.cc:
  Wait for signal handler to stop when running --bootstrap
  (Fixes warning from purify)
sql/sql_insert.cc:
  Initialize slot used by innodb.cc (not critical)
sql/sql_lex.h:
  Better comments
sql/sql_repl.cc:
  memcmp -> bcmp() to avoid warning from purify
sql/sql_select.cc:
  Fix for out-of-bound memory reference when doing DISTINCT on const expressions
strings/ctype-simple.c:
  Fixes to not access uninitialized memory
  (Not critical)
2005-02-28 11:59:46 +02:00
unknown
46a8c52217 fil0fil.c:
Check if node == NULL, which means we are outside tablespace bounds, and print a big fatal error message


innobase/fil/fil0fil.c:
  Check if node == NULL, which means we are outside tablespace bounds, and print a big fatal error message
2005-02-25 22:16:14 +02:00
unknown
d9f6581f25 row0sel.c:
Fix bug #8677: if one used LOCK TABLES, created an InnoDB temp table, and did a multi-table update where a MyISAM table was the update table and the temp table was a read table, then InnoDB aserted in row0sel.c because n_mysql_tables_in_use was 0. Also, we remove the assertion altogether and just print an error to the .err log if this important consistency check fails. Then it is up to the user to read the .err log and notice the problem if there still are errors in MySQL's table locking.


innobase/row/row0sel.c:
  Fix bug #8677: if one used LOCK TABLES, created an InnoDB temp table, and did a multi-table update where a MyISAM table was the update table and the temp table was a read table, then InnoDB aserted in row0sel.c because n_mysql_tables_in_use was 0. Also, we remove the assertion altogether and just print an error to the .err log if this important consistency check fails. Then it is up to the user to read the .err log and notice the problem if there still are errors in MySQL's table locking.
2005-02-22 21:05:17 +02:00
unknown
0d57871425 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1


innobase/row/row0mysql.c:
  Auto merged
sql/sql_cache.cc:
  Auto merged
2005-02-13 21:05:18 +02:00
unknown
4c21a10f27 row0mysql.c:
Backport the column prefix memory corruption fix from 5.0


innobase/row/row0mysql.c:
  Backport the column prefix memory corruption fix from 5.0
2005-02-13 21:00:07 +02:00
unknown
613c2f68e2 Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/home/my/mysql-4.1
2005-02-02 16:50:35 +02:00
unknown
d5311abe2c eval0eval.ic:
Remove wrong assertion that fails on 64 bits


innobase/include/eval0eval.ic:
  Remove wrong assertion that fails on 64 bits
2005-02-02 01:43:25 +02:00
unknown
3c04bddb04 rem0rec.ic:
Fix a debug assertion in rem0rec.ic on AMD64; 4.1 was already fixed


innobase/include/rem0rec.ic:
  Fix a debug assertion in rem0rec.ic on AMD64; 4.1 was already fixed
2005-02-02 00:31:06 +02:00
unknown
c53184ebb7 Proper fix for comparision with ' '
(Bug #7788 "Table is full" occurs during a multitable update")


client/mysqldump.c:
  Style fixes
innobase/include/univ.i:
  UNIV_DEBUG should not depend on configure --debug but on --debug=full
mysql-test/r/compare.result:
  Added test to find bug in previous bugfix
mysql-test/t/compare.test:
  Added test to find bug in previous bugfix
mysys/my_handler.c:
  Proper fix for comparision with ' '
strings/ctype-big5.c:
  Proper fix for comparision with ' '
strings/ctype-bin.c:
  Proper fix for comparision with ' '
strings/ctype-gbk.c:
  Proper fix for comparision with ' '
strings/ctype-latin1.c:
  Proper fix for comparision with ' '
strings/ctype-mb.c:
  Proper fix for comparision with ' '
strings/ctype-simple.c:
  Proper fix for comparision with ' '
strings/ctype-sjis.c:
  Proper fix for comparision with ' '
strings/ctype-tis620.c:
  Proper fix for comparision with ' '
strings/ctype-ucs2.c:
  Proper fix for comparision with ' '
strings/ctype-utf8.c:
  Proper fix for comparision with ' '
2005-02-01 16:27:08 +02:00
unknown
af39ee001d mem0pool.c:
Fix an assertion failure in 64-bit computers if UNIV_MEM_DEBUG is defined


innobase/mem/mem0pool.c:
  Fix an assertion failure in 64-bit computers if UNIV_MEM_DEBUG is defined
2005-01-31 22:28:55 +02:00
unknown
47f15599e8 ut0ut.c:
Use a 32-bit right-shift implementation through a 64-bit integer that should work ok for both gcc and Visual C++; the code depended on defining SIZEOF_LONG, and that is not set when compiling ibbackup


innobase/ut/ut0ut.c:
  Use a 32-bit right-shift implementation through a 64-bit integer that should work ok for both gcc and Visual C++; the code depended on defining SIZEOF_LONG, and that is not set when compiling ibbackup
2005-01-28 21:49:21 +02:00
unknown
c392de41b2 os0file.c:
Fix Windows porting bugs that broke ibbackup: 1) wrong error check in for CreateDirectory(), 2) wrong error check if the file did not exist in DeleteFile(), 3) too strict sharing restrictions in os_file_create_simple(): when ibbackup called that function, it would not allow mysqld to write to the file


innobase/os/os0file.c:
  Fix Windows porting bugs that broke ibbackup: 1) wrong error check in for CreateDirectory(), 2) wrong error check if the file did not exist in DeleteFile(), 3) too strict sharing restrictions in os_file_create_simple(): when ibbackup called that function, it would not allow mysqld to write to the file
2005-01-28 20:58:16 +02:00
unknown
c84ff98672 fil0fil.c:
We accidentally checked if the DIRECTORY is of type OS_FILE_TYPE_UNKNOWN; our intention was to check if the FILE is that; best to remove the check altogether, as in crash recovery it is safest to try to open also files whose type is unknown
os0file.c:
  Fix a bug: in Windows, os_file_readdir_next_file() returned OS_FILE_TYPE_UNKNOWN as the type of a regular file; this did not break mysqld, but did break ibbackup on Windows


innobase/os/os0file.c:
  Fix a bug: in Windows, os_file_readdir_next_file() returned OS_FILE_TYPE_UNKNOWN as the type of a regular file; this did not break mysqld, but did break ibbackup on Windows
innobase/fil/fil0fil.c:
  We accidentally checked if the DIRECTORY is of type OS_FILE_TYPE_UNKNOWN; our intention was to check if the FILE is that; best to remove the check altogether, as in crash recovery it is safest to try to open also files whose type is unknown
2005-01-27 22:00:36 +02:00
unknown
555c0e8fd1 Merge heikki@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/heikki/mysql-4.1


sql/mysqld.cc:
  Auto merged
2005-01-27 21:33:15 +02:00
unknown
3c3ca269ec Only enable Innodb extra debugging when using the --debug=full configure option
BUILD/SETUP.sh:
  Abort if wrong options
BUILD/compile-pentium64-debug:
  Always use full debugging
innobase/fil/fil0fil.c:
  Fixed wrong printf() format
2005-01-26 16:07:53 +02:00
unknown
ea2795025e innobase/include/univ.i
remove a change that broke the test


innobase/include/univ.i:
  remove a change that broke the test
sql/item_create.cc:
  better fix
2005-01-26 08:57:43 +01:00
unknown
7a220becd2 buf0rea.c:
Add more diagnostics about why page reads in recovery may hang: print the number of pending pread calls


innobase/buf/buf0rea.c:
  Add more diagnostics about why page reads in recovery may hang: print the number of pending pread calls
2005-01-25 22:42:50 +02:00
unknown
c2a2f5afb8 Cleanups during review
BitKeeper/etc/ignore:
  added libmysqld/examples/mysqltest_embedded
client/mysqlbinlog.cc:
  Call mysql_close() before die()
innobase/include/eval0eval.ic:
  Remove assert that fails on 64 bit machines
  (Tested with BUILD/compile-pentium64-valgrind-max on 64 bit Intel CPU)
sql/mysqld.cc:
  Force lower_case_table_names to 0 if set to 2 on case insensitive file name
sql/sql_select.cc:
  Remove #if 0
2005-01-25 21:27:51 +02:00
unknown
f35117ea34 InnoDB: Backport innodb_autoextend_increment from 4.1
innobase/include/srv0srv.h:
  Add configuration variable srv_auto_extend_increment
innobase/srv/srv0srv.c:
  Add configuration variable srv_auto_extend_increment
sql/ha_innodb.h:
  Add configuration variable srv_auto_extend_increment
sql/mysqld.cc:
  Add startup option innodb_autoextend_increment
sql/set_var.cc:
  Add settable global variable innodb_autoextend_increment
2005-01-25 16:27:13 +02:00
unknown
b9ae83d5b8 Merge hundin.mysql.fi:/home/marko/k/mysql-4.0
into hundin.mysql.fi:/home/marko/k/mysql-4.1


innobase/include/univ.i:
  Auto merged
2005-01-25 14:17:51 +02:00
unknown
b7c59b9e22 InnoDB: Enable ut_ad() assertions in MySQL debug builds.
innobase/include/univ.i:
  InnoDB: Define UNIV_DEBUG when DBUG_ON (in MySQL) is defined.
  This enables InnoDB debug assertions in debug builds of mysqld.
2005-01-25 14:16:41 +02:00
unknown
ef52e1c9bc Merge jlindstrom@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/jan/mysql-4.1
2005-01-24 09:55:41 +02:00
unknown
c695ccd27e fil0fil.c:
Fix a race condition that could cause the assertion space->n_pending_flushes == 0 to fail in fil0fil.c, in fil_space_free(), in DROP TABLE or in ALTER TABLE


innobase/fil/fil0fil.c:
  Fix a race condition that could cause the assertion space->n_pending_flushes == 0 to fail in fil0fil.c, in fil_space_free()
2005-01-22 04:45:22 +02:00
unknown
6eecb8e4e2 fil0fil.c:
Fix bug #8021 :Windows error number 87 with multiple tablespaces after mysqld restart; still has to be tested on Windows that this now works


innobase/fil/fil0fil.c:
  Fix bug #8021 :Windows error number 87 with multiple tablespaces after mysqld restart; still has to be tested on Windows that this now works
2005-01-21 17:59:23 +02:00
unknown
5e98f462be dict0dict.c:
Fix bug #7831: ALTER TABLE ... ADD CONSTRAINT PRIMARY KEY ... complained about bad foreign key definition


innobase/dict/dict0dict.c:
  Fix bug #7831: ALTER TABLE ... ADD CONSTRAINT PRIMARY KEY ... complained about bad foreign key definition
2005-01-21 17:54:50 +02:00
unknown
5a37fffdac Merge jlindstrom@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/jan/mysql-4.1
2005-01-17 09:17:48 +02:00
unknown
540f0541dd dict0load.c:
Correct typo in comment


innobase/dict/dict0load.c:
  Correct typo in comment
2005-01-15 01:10:40 +02:00
unknown
ae8cc9846f dict0load.c, dict0crea.c:
Add diagnostic code to track corruption in mix_len; it was reported on the mailing list Jan 14, 2005


innobase/dict/dict0crea.c:
  Add diagnostic code to track corruption in mix_len; it was reported on the mailing list Jan 14, 2005
innobase/dict/dict0load.c:
  Add diagnostic code to track corruption in mix_len; it was reported on the mailing list Jan 14, 2005
2005-01-15 01:06:15 +02:00
unknown
6d9f637870 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/k/mysql-4.1


innobase/os/os0file.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
2005-01-14 15:23:34 +02:00
unknown
c9882adf81 Merge
innobase/os/os0file.c:
  Auto merged
sql/ha_innodb.cc:
  SCCS merged
2005-01-13 19:27:44 +02:00
unknown
8dc27f1ef9 InnoDB: Detect the availability of the Mac OS X fsync() work-around
at run-time, so that an executable compiled on Mac OS X 10.2 can
be run on Mac OS X 10.2 (without the work-around) and Mac OS X 10.3
and later with the work-aroud enabled.


innobase/include/srv0start.h:
  Mac OS X: Add srv_have_fullfsync
innobase/os/os0file.c:
  os_file_flush(): Use F_FULLFSYNC on Mac OS X 10.3, but not on 10.2
innobase/srv/srv0start.c:
  innobase_start_or_create_for_mysql(): When compiled on OS X 10.2,
  detect if the binary is running on OS X 10.3 or later, and set
  srv_have_fullfsync accordingly.
2005-01-13 16:15:14 +02: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
b895e87772 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/k/mysql-4.1


innobase/include/row0mysql.h:
  Auto merged
innobase/row/row0sel.c:
  Auto merged
sql/ha_innodb.cc:
  Auto merged
2005-01-12 14:08:25 +02:00
unknown
ca8fcc0026 Take a shared record lock (LOCK_REC_NOT_GAP) for a matching record in the foreign
key check because we can allow inserts into gaps (Support Issue #4317).


innobase/row/row0ins.c:
  Take a shared record lock (LOCK_REC_NOT_GAP) for a matching record in the foreign
  key check because we can allow inserts into gaps.
2005-01-12 10:36:50 +02:00
unknown
2d3c55cd7b os0file.c:
Fix compiler error on those OS X platforms where Apple's special file flush trick with fcntl() is not defined


innobase/os/os0file.c:
  Fix compiler error on those OS X platforms where Apple's special file flush trick with fcntl() is not defined
2005-01-10 15:26:33 +02:00
unknown
51cae387a9 os0file.c:
Use the fcntl() file flush method on OS X; Apple disabled fsync() for internal disk drives, which caused corruption in power outages; the patch was recommended by an Apple engineer


innobase/os/os0file.c:
  Use the fcntl() file flush method on OS X; Apple disabled fsync() for internal disk drives, which caused corruption in power outages; the patch was recommended by an Apple engineer
2005-01-06 11:19:20 +02:00
unknown
56db297d00 log0recv.c:
Fix a wrong memset in InnoDB Hot Backup code; the bug probably did not affect anything since we do not assume that the header of a log file is filled with zeros before writing the header info there; the bug found by Felix von Leitner


innobase/log/log0recv.c:
  Fix a wrong memset in InnoDB Hot Backup code; the bug probably did not affect anything since we do not assume that the header of a log file is filled with zeros before writing the header info there; the bug found by Felix von Leitner
2005-01-01 13:49:53 +02:00
unknown
cd47cb56fd row0upd.c:
Fix a little bug in InnoDB: we looked at the physical size of a stored SQL NULL value from a wrong field in the index; this has probably caused no bugs visible to the user, only caused some extra space usage in some rare cases; we may later backport the fix to 4.0


innobase/row/row0upd.c:
  Fix a little bug in InnoDB: we looked at the physical size of a stored SQL NULL value from a wrong field in the index; this has probably caused no bugs visible to the user, only caused some extra space usage in some rare cases; we may later backport the fix to 4.0
2004-12-31 15:05:41 +02:00
unknown
49501611aa srv0start.c:
Print a more descriptive error and refuse to start InnoDB if the size of ibdata files is smaller than what is stored in the tablespace header; innodb_force_recovery will override this


innobase/srv/srv0start.c:
  Print a more descriptive error and refuse to start InnoDB if the size of ibdata files is smaller than what is stored in the tablespace header; innodb_force_recovery will override this
2004-12-29 17:06:26 +02:00