Below is the list of changes that have just been committed into a local
6.0 repository of svoj. When svoj does a push these changes
will be propagated to the main repository and, within 24 hours after the
push, to the public repository.
For information on how to access the public repository
see http://dev.mysql.com/doc/mysql/en/installing-source-tree.html
ChangeSet@stripped, 2008-04-23 10:22:32+05:00, svoj@stripped +1 -0
BUG#33607 - Falcon allows two mysqld instances to share a tablespace
It was possible to start two (or more) mysqld instances using
the same falcon tablespace/metadata files. As a result
tablespace/metadata files may get corrupt.
Fixed by enabling advisory file locks.
storage/falcon/IO.cpp@stripped, 2008-04-23 10:22:29+05:00, svoj@stripped +0 -4
Re-enabled advisory file locking on non-windows platforms.
diff -Nrup a/storage/falcon/IO.cpp b/storage/falcon/IO.cpp
--- a/storage/falcon/IO.cpp 2008-03-27 10:09:04 +04:00
+++ b/storage/falcon/IO.cpp 2008-04-23 10:22:29 +05:00
@@ -163,14 +163,12 @@ bool IO::openFile(const char * name, boo
#ifndef _WIN32
signal (SIGXFSZ, SIG_IGN);
-#ifndef STORAGE_ENGINE
if (flock (fileId, (readOnly) ? LOCK_SH : LOCK_EX))
{
::close (fileId);
throw SQLEXCEPTION (CONNECTION_ERROR, "file \"%s\" in use by another process", name);
}
#endif
-#endif
//Log::debug("IO::openFile %s (%d) fd: %d\n", (const char*) fileName, readOnly, fileId);
@@ -201,9 +199,7 @@ bool IO::createFile(const char *name, ui
isReadOnly = false;
#ifndef _WIN32
-#ifndef STORAGE_ENGINE
flock(fileId, LOCK_EX);
-#endif
#endif
if (initialAllocation)
| Thread |
|---|
| • bk commit into 6.0 tree (svoj:1.2634) BUG#33607 | Sergey Vojtovich | 23 Apr 2008 |