Commit graph

174 commits

Author SHA1 Message Date
tsmith@ramayana.hindu.god
5e926bc120 NULL MERGE this ChangeSet to 5.1
Apply innodb-5.0-ss1696 snapshot

Fixes:
- Bug#20090: InnoDB: Error: trying to declare trx to enter InnoDB
- Bug#23710: crash_commit_before fails if innodb_file_per_table=1
  At InnoDB startup consider the case where log scan went beyond
  checkpoint_lsn as a crash and initiate crash recovery code path.
- Bug#28781: InnoDB increments auto-increment value incorrectly with ON DUPLICATE KEY UPDATE
  We need to do some special AUTOINC handling for the following case:
  INSERT INTO t (c1,c2) VALUES(x,y) ON DUPLICATE KEY UPDATE ...
  We need to use the AUTOINC counter that was actually used by
  MySQL in the UPDATE statement, which can be different from the
  value used in the INSERT statement.
- Bug#29097: fsp_get_available_space_in_free_extents() is capped at 4TB
  Fix by typecasting the variables before multiplying them, so that the
  result of the multiplication is of type "unsigned long long".
- Bug#29155: Innodb "Parallel recovery" is not prevented
  Fix by enabling file locking on FreeBSD.  It has been disabled because
  InnoDB has refused to start on FreeBSD & LinuxThreads, but now it
  starts just fine.
2007-08-15 17:20:54 -06:00
tsmith@sita.local
ccea97fa6f NULL MERGE UP to 5.1.
Apply innodb-5.0-* snapshots:  ss1489 and ss1547.

Fixes:
Bug#9709:  InnoDB inconsistensy causes "Operating System Error 32/33"
Bug#22819: SHOW INNODB STATUS crashes the server with an assertion failure under high load
Bug#25645: Assertion failure in file srv0srv.c
Bug#27294: insert into ... select ... causes crash with innodb_locks_unsafe_for_binlog=1
Bug#28138: indexing column prefixes produces corruption in InnoDB
2007-07-10 08:16:51 -06:00
tsmith@siva.hindu.god
d232cead7b Apply innodb-5.0-ss1405 snapshot
NULL MERGE: this ChangeSet will be null merged into mysql-5.1

Fixes:

- Bug #26662: mysqld assertion when creating temporary (InnoDB) table on a tmpfs filesystem
  Fix by not open(2)ing with O_DIRECT but rather calling fcntl(2) to set
  this flag immediately after open(2)ing. This way an error caused by
  O_DIRECT not being supported can easily be ignored.
- Bug #23313: AUTO_INCREMENT=# not reported back for InnoDB tables
- Bug #21404: AUTO_INCREMENT value reset when Adding FKEY (or ALTER?)
  Report the current value of the AUTO_INCREMENT counter to MySQL.
2007-04-18 19:36:22 -06:00
tsmith@siva.hindu.god
83694ca440 Apply innodb-5.0-ss1372 snapshot
Bug #27381: InnoDB exits when attempting to rename table to non-existant database
  Fix Bug#27381 by calling os_file_handle_error_no_exit() instead of
  os_file_handle_error().
2007-03-28 22:41:21 -06:00
monty@mysql.com/narttu.mysql.fi
601e6f4b2a Fixed compiler warnings
Don't assert if my_thread_end() is called twice (common case)
2006-11-30 21:56:03 +02:00
tnurnberg@salvation.intern.azundris.com
c8d1c498fb innodb r702
innodb r719
2006-08-18 14:16:11 +02:00
aivanov@mysql.com
f748232437 Applied innodb-5.0-ss547 snapshot.
Fix BUG#19542 "InnoDB doesn't increase the Handler_read_prev counter".
2006-05-15 18:02:21 +04:00
aivanov@mysql.com
708f9b3ceb Changes from the innodb-5.0-ss115 snapshot.
Fixed bugs:
 BUG#15991: "innodb-file-per-table + symlink database + rename = crash"
 BUG#15650: "DELETE with LEFT JOIN crashes server"
 BUG#15308: "Problem of Order with Enum Column in Primary Key"
 BUG#14189: "VARBINARY and BINARY variables: trailing space ignored"
2006-01-16 14:32:43 +03:00
osku@127.(none)
d61708d1c9 Fix bug #3443, better foreign key error messsages. 2005-09-23 16:22:27 +03:00
marko@hundin.mysql.fi
5dd8eeef3a Merge hundin.mysql.fi:/home/marko/mysql-4.1
into  hundin.mysql.fi:/home/marko/mysql-5.0
2005-07-26 14:43:48 +03:00
marko@hundin.mysql.fi
a89939c8e7 InnoDB: Do not flush after each write, not even when creating the
data files.  Previously, writes were flushed until the doublewrite
buffer was created.  That would be too slow on systems where
os_file_flush() [or fsync(2)] is slow.  (Bug #12125)
2005-07-26 14:03:34 +03:00
marko@hundin.mysql.fi
d4901de808 Merge hundin.mysql.fi:/home/marko/mysql-4.1
into hundin.mysql.fi:/home/marko/mysql-5.0-current
2005-06-28 10:51:01 +03:00
heikki@hundin.mysql.fi
b3f1c60ed9 Many files:
Remove compiler warnings on Windows - Bug #11580
2005-06-27 18:58:32 +03:00
marko@hundin.mysql.fi
99efe90098 InnoDB: After review fixes 2005-06-27 17:25:37 +03:00
marko@hundin.mysql.fi
8064ee217f InnoDB: Optimize the extension of files. This will greatly speed
up CREATE TABLE in innodb_file_per_table=1 mode.
2005-06-27 17:04:57 +03:00
marko@hundin.mysql.fi
eb42421e4a InnoDB: Replace for loops with memset() where possible. 2005-06-22 12:36:24 +03:00
marko@hundin.mysql.fi
e992adcb3f Merge hundin.mysql.fi:/home/marko/mysql-5.0
into hundin.mysql.fi:/home/marko/mysql-5.0-current
2005-06-21 07:36:18 +03:00
marko@hundin.mysql.fi
3cbaf365e6 InnoDB: Remove compiler warning 2005-06-10 15:55:00 +03:00
heikki@hundin.mysql.fi
6c38471e87 os0sync.c, os0file.c:
Apply Georg Richter's fixes to remove compilation errors on 64-bit Windows
2005-06-10 14:18:36 +03:00
marko@hundin.mysql.fi
92d5b7c0fd InnoDB: minor clean-up in os0file 2005-06-10 14:00:53 +03:00
serg@serg.mylan
e1e5b97dea manually merged
Gluh's SESSION/GLOBAL for @variables fix in sql_yacc.yy and
Bar's well_formed_len() changes in ndb code
did not make it and should be re-applied manually
2005-04-06 21:19:20 +02:00
marko@hundin.mysql.fi
f32fe9c154 InnoDB: Avoid test suite failures caused by a locking conflict
between two server instances at server shutdown/startup.
This conflict on advisory locks appears to be the result of a bug
in the operating system; these locks should be released when the
files are closed, but somehow that does not always happen
immediately in Linux.  (Bug #9381)
2005-04-06 15:09:15 +03:00
serg@serg.mylan
956682de1a merged 2005-03-09 14:09:06 +01:00
marko@hundin.mysql.fi
38adb1ba79 InnoDB: Portability fixes for warnings reported on IA-64 Windows 2005-03-07 12:03:33 +02:00
heikki@hundin.mysql.fi
c93fcd19a5 Merge 2005-03-03 17:50:04 +02:00
heikki@hundin.mysql.fi
df6d26e4bd 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
2005-03-03 17:46:56 +02:00
heikki@hundin.mysql.fi
80fca0a075 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1
2005-03-03 17:26:12 +02:00
heikki@hundin.mysql.fi
47440f4b5a 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
monty@mysql.com
422c2eb868 4.1 -> 5.0 merge 2005-02-03 13:18:30 +02:00
heikki@hundin.mysql.fi
1d78506d7a 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
heikki@hundin.mysql.fi
6979789732 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
2005-01-27 22:00:36 +02:00
heikki@hundin.mysql.fi
5014402000 os0file.c:
Add includes for the _stat() call to compile on Windows in Hot Backup build
2005-01-27 18:54:00 +02:00
monty@mysql.com
0a1076a25f Merge with 4.1 2005-01-15 14:09:45 +02:00
marko@hundin.mysql.fi
080869f995 Merge marko@bk-internal.mysql.com:/home/bk/mysql-4.1
into hundin.mysql.fi:/home/marko/k/mysql-4.1
2005-01-14 15:23:34 +02:00
heikki@hundin.mysql.fi
fca5ee0c63 Merge 2005-01-13 19:27:44 +02:00
marko@hundin.mysql.fi
284191d19a 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.
2005-01-13 16:15:14 +02:00
marko@hundin.mysql.fi
69afdf53c7 InnoDB: Use system-supplied tmpfile() on Netware, as there is no
open interface for setting the "delete-on-close" flag.
2005-01-12 15:24:49 +02:00
lenz@mysql.com
442a3a98b0 Merge mysql.com:/space/my/mysql-4.1
into mysql.com:/space/my/mysql-5.0-build
2005-01-10 16:32:03 +01:00
heikki@hundin.mysql.fi
59b9a5289a 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
serg@sergbook.mysql.com
f472cec178 merged 2005-01-06 19:32:16 +02:00
heikki@hundin.mysql.fi
746fd9fdac 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
serg@sergbook.mysql.com
a04fc26c54 manually merged 2004-12-31 15:26:24 +01:00
monty@mysql.com
d71c030587 After merge fixes 2004-12-31 00:44:00 +02:00
monty@mishka.local
4f4bbfc279 Merge with 4.1 2004-12-22 13:54:39 +02:00
heikki@hundin.mysql.fi
f1fe6e1784 Merge hundin.mysql.fi:/home/heikki/mysql-4.0
into hundin.mysql.fi:/home/heikki/mysql-4.1
2004-12-21 19:33:43 +02:00
heikki@hundin.mysql.fi
b56085a87e os0file.c:
Put back accidentally removed undef and remove a debug def
2004-12-21 18:33:53 +02:00
heikki@hundin.mysql.fi
e25b633367 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
heikki@hundin.mysql.fi
a90b40fcd3 os0file.c:
Print a better error message to the .err log if InnoDB's advisory file locking fails
2004-12-08 17:53:01 +02:00
monty@mysql.com
0de4777187 Merge with 4.1 2004-12-06 11:38:56 +02:00
heikki@hundin.mysql.fi
227ffeb9e0 configure.in:
Let MySQL check the existence of readdir_r with 3 arguments; Solaris seems to have just 2 args
  Check the existence of readdir_r and localtime_r; even though MySQL does check these too, we need our own check for Hot Backup code
os0file.c:
  Use re-entrant readdir_r where available
ut0ut.c:
  Make a function to use thread-safe localtime_r where available; that particular function was not called from anywhere, though
2004-12-01 18:02:34 +02:00