| Bug #39098 | Falcon sometimes reports 'Invalid serial log directory path' | ||
|---|---|---|---|
| Submitted: | 28 Aug 2008 16:50 | Modified: | 8 Jan 2009 11:35 |
| Reporter: | Kevin Lewis | ||
| Status: | Closed | ||
| Category: | Server: Falcon | Severity: | S3 (Non-critical) |
| Version: | 6.0.7, mysql-6.0-falcon | OS: | Any |
| Assigned to: | Vladislav Vaintroub | Target Version: | 6.0.8 |
| Triage: | Triaged: D2 (Serious) | ||
[28 Aug 2008 16:50]
Kevin Lewis
[28 Aug 2008 21:55]
Sveta Smirnova
Thank you for the report. Verified as described using mysql-6.0-falcon tree. To repeat: $./mysql-test-run.pl alias Logging: ./mysql-test-run.pl alias MySQL Version 6.0.7 .... TEST RESULT TIME (ms) ------------------------------------------------------- main.alias [ pass ] 54 ------------------------------------------------------- Stopping All Servers All 1 tests were successful. The servers were restarted 1 times Spent 0.054 of 4 seconds executing testcases mysql-test-run: WARNING: Got errors/warnings while running tests, please examine "/users/ssmirnova/src/mysql-6.0-falcon/mysql-test/var/log/warnings" for details. mysql-test-run: *** ERROR: there were failing test cases $cat var/log/warnings master.err: main.alias: 080828 22:53:54 [ERROR] Falcon: Exception 'Invalid serial log directory path "/users/ssmirnova/src/mysql-6.0-falcon/mysql-test/var/master-data/"' during initialization master.err: main.alias: 080828 22:53:54 [ERROR] Plugin 'Falcon' init function returned error. master.err: main.alias: 080828 22:53:54 [ERROR] Plugin 'Falcon' registration as a STORAGE ENGINE failed.
[29 Aug 2008 0:32]
Kevin Lewis
Chris, assigning this to you since you can reproduce it on xeno.
[29 Aug 2008 22:44]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/52937 2807 Christopher Powers 2008-08-29 [merge] Bug #39098, Falcon sometimes reports 'Invalid serial log directory path' Incorporated patch provided by Lars-Erik, which works on OpenSuSE but fails on Windows Fixed Windows code in IO::isDirectory()
[29 Aug 2008 22:45]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/52938 2807 Christopher Powers 2008-08-29 [merge] Bug #39098, Falcon sometimes reports 'Invalid serial log directory path' Incorporated patch provided by Lars-Erik, which works on OpenSuSE but fails on Windows Fixed Windows code in IO::isDirectory()
[29 Aug 2008 22:47]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/52939 2807 Christopher Powers 2008-08-29 [merge] Bug #39098, Falcon sometimes reports 'Invalid serial log directory path' Incorporated patch provided by Lars-Erik, which works on OpenSuSE but fails on Windows Fixed Windows code in IO::isDirectory()
[4 Sep 2008 20:08]
Sveta Smirnova
See related bug #39194 and bug #39098
[11 Sep 2008 12:52]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/53811 2814 Vladislav Vaintroub 2008-09-11 Bug#39098: Invalid check for serial_log_directory. Falcon throws exception telling serial log directory is invalid and refuses to initialize. An attempt was already made to fix this error in the past, and even this attempt did not work in all cases (root directory on Windows like C: would not work for example) Solution presented here is rather simple - we do not check for valid directory at all. If serial log file cannot be opened or created during database creation, the server does not start anyway. We should not also try to create database if serial log cannot be opened. (there will be no loss of data, since we do not overwrite existing files, but error message coming from create database is misleading). Hence, this patch also contains fix to trigger database creation only if falcon_master.fts could be opened.
[11 Sep 2008 12:56]
Bugs System
A patch for this bug has been committed. After review, it may be pushed to the relevant source trees for release in the next version. You can access the patch from: http://lists.mysql.com/commits/53813 2814 Vladislav Vaintroub 2008-09-11 Bug#39098: Invalid check for serial_log_directory. Falcon throws exception telling serial log directory is invalid and refuses to initialize. An attempt was already made to fix this error in the past, and even this attempt did not work in all cases (root directory on Windows like C: would not work for example) Solution presented here is rather simple - we do not check for valid directory at all. If serial log file cannot be opened or created during database creation, the server does not start anyway. We should not also try to create database if serial log cannot be opened. (there will be no loss of data, since we do not overwrite existing files, but error message coming from create database is misleading). Hence, this patch also contains fix to trigger database creation only if falcon_master.fts could be opened.
[8 Jan 2009 11:35]
MC Brown
A note has been added to the 6.0.7 changelog: When specifying an alternative log directory for FALCON using serial_log_directory the operation would fail silently if the directory did not exist. MySQL will now fail to start if the serial log in the specified directory cannot be opened or created, or if the falcon_master.fts cannot be opened or created.
