mirror of
https://github.com/MariaDB/server.git
synced 2025-01-23 23:34:34 +01:00
Merge spetrunia@bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/dbdata/psergey/mysql-4.1-ps-merge
This commit is contained in:
commit
1ed53ce4c6
1 changed files with 10 additions and 16 deletions
|
@ -387,22 +387,19 @@ os_file_lock(
|
|||
/*=========*/
|
||||
/* out: 0 on success */
|
||||
int fd, /* in: file descriptor */
|
||||
const char* name, /* in: file name */
|
||||
uint lock_type) /* in: lock_type */
|
||||
const char* name) /* in: file name */
|
||||
{
|
||||
struct flock lk;
|
||||
lk.l_type = lock_type;
|
||||
lk.l_type = F_WRLCK;
|
||||
lk.l_whence = SEEK_SET;
|
||||
lk.l_start = lk.l_len = 0;
|
||||
if (fcntl(fd, F_SETLK, &lk) == -1) {
|
||||
fprintf(stderr,
|
||||
"InnoDB: Unable to lock %s with lock %d, error: %d",
|
||||
name, lock_type, errno);
|
||||
perror (": fcntl");
|
||||
"InnoDB: Unable to lock %s, error: %d", name, errno);
|
||||
close(fd);
|
||||
return(-1);
|
||||
}
|
||||
return 0;
|
||||
return(0);
|
||||
}
|
||||
#endif /* USE_FILE_LOCK */
|
||||
|
||||
|
@ -869,7 +866,8 @@ try_again:
|
|||
goto try_again;
|
||||
}
|
||||
#ifdef USE_FILE_LOCK
|
||||
} else if (os_file_lock(file, name, F_WRLCK)) {
|
||||
} else if (access_type == OS_FILE_READ_WRITE
|
||||
&& os_file_lock(file, name)) {
|
||||
*success = FALSE;
|
||||
file = -1;
|
||||
#endif
|
||||
|
@ -980,7 +978,8 @@ os_file_create_simple_no_error_handling(
|
|||
if (file == -1) {
|
||||
*success = FALSE;
|
||||
#ifdef USE_FILE_LOCK
|
||||
} else if (os_file_lock(file, name, F_WRLCK)) {
|
||||
} else if (access_type == OS_FILE_READ_WRITE
|
||||
&& os_file_lock(file, name)) {
|
||||
*success = FALSE;
|
||||
file = -1;
|
||||
#endif
|
||||
|
@ -1194,7 +1193,8 @@ try_again:
|
|||
goto try_again;
|
||||
}
|
||||
#ifdef USE_FILE_LOCK
|
||||
} else if (os_file_lock(file, name, F_WRLCK)) {
|
||||
} else if (create_mode != OS_FILE_OPEN_RAW
|
||||
&& os_file_lock(file, name)) {
|
||||
*success = FALSE;
|
||||
file = -1;
|
||||
#endif
|
||||
|
@ -1395,9 +1395,6 @@ os_file_close(
|
|||
#else
|
||||
int ret;
|
||||
|
||||
#ifdef USE_FILE_LOCK
|
||||
(void) os_file_lock(file, "unknown", F_UNLCK);
|
||||
#endif
|
||||
ret = close(file);
|
||||
|
||||
if (ret == -1) {
|
||||
|
@ -1434,9 +1431,6 @@ os_file_close_no_error_handling(
|
|||
#else
|
||||
int ret;
|
||||
|
||||
#ifdef USE_FILE_LOCK
|
||||
(void) os_file_lock(file, "unknown", F_UNLCK);
|
||||
#endif
|
||||
ret = close(file);
|
||||
|
||||
if (ret == -1) {
|
||||
|
|
Loading…
Add table
Reference in a new issue