Bug #39421 Uncaught exception EOF in Falcon recovery on Windows
Submitted: 12 Sep 2008 14:14 Modified: 8 Jan 2009 17:20
Reporter: Philip Stoev Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Falcon storage engine Severity:S2 (Serious)
Version:6.0-falcon-team OS:Microsoft Windows
Assigned to: Vladislav Vaintroub CPU Architecture:Any
Triage: Triaged: D2 (Serious)

[12 Sep 2008 14:14] Philip Stoev
Description:
When Falcon does recovery on Windows, it always reports an exception when it reaches the end of the serial log. According to Ann, this is harmless, however the testing tools can not distinguish between a harmless exception and a one that destroys the entire database. So, understandably, all exceptions are reported as failures.

How to repeat:
See pushbuild2, code.

Suggested fix:
* Any and all harmless exceptions must be caught. An uncaught exception means recovery failure.
[12 Sep 2008 17:02] 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/53991

2819 Vladislav Vaintroub	2008-09-12
      Bug#39421 - messages during recovery about exceptions from ReadFile.
      Fix:
      Ignore ERROR_HANDLE_EOF coming from ReadFile(). Read should just return 0 
      like it does in Posix case.
[12 Sep 2008 17:40] 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/53996

2819 Vladislav Vaintroub	2008-09-12
      Bug#39421 - messages during recovery about exceptions from ReadFile.
      Fix:
      Ignore ERROR_HANDLE_EOF coming from ReadFile(). Read should just return 0 
      like it does in Posix case.
[8 Jan 2009 17:20] MC Brown
A note has been added to the 6.0.8 changelog: 

When performing a recovery of a crashed Falcon table on Windows, MySQL would report an exception when then recovery process completed, even though the recovery may have completed successfully