on 2012 Oct 17 12:46 PM
How to fix error log file without owning.
I/O error fatal error: No such file or directory --- transaction rolled back
Thanks!
Request clarification before answering.
Running on Windows NT 6.1 Build 7601 Service Pack 1
That's either Windows 7 SP1, or Windows 2008 SP1, correct?
Adaptive Server Anywhere Database Engine Version 9.0.2.2542
This is not a supported version of SQL Anywhere on Windows 7/2008. EBF 9.0.2.3924 or higher must be installed - see: http://www.sybase.com/detail?id=1023009#footnote_4
You can download the Windows x86 9.0.2.3951 EBF here.
Database recovery in progress
What happened to this database the last time it was shut down such that the database needs to undergo recovery? Did the computer lose power?
A read failed with error code: (38), End of file reached
The error code 38 is the Microsoft Windows system error. The command: net helpmsg 38
says just that: Reached the end of the file.
It sounds like the database file (database.db) is actually corrupt and the file system metadata on disk that provides the length of the file does not match the actual length of the database file on disk. This can happen in some particular power-loss scenarios or with some disk drivers that do not properly flush data to disk (See: http://dcx.sybase.com/index.html#1201/en/dbprogramming/server-deploy.html*pg-deploy-windows-registry... ).
If it is available and valid, you should go to your backup, and apply the current transaction log to bring it up to date.
There are also possible ways to salvage the corrupted database, but it's likely that you will lose data. If you wish to attempt this, you should contact Technical Support. (Note: for this specific scenario, it may not require a full salvage engagement).
Aside: Microsoft is also aware of a general metadata disk flushing problem / 'torn writes' and is attempting to address some of these issues in their enhanced file system, ReFS. Read more about this file system here: http://blogs.msdn.com/b/b8/archive/2012/01/16/building-the-next-generation-file-system-for-windows-r...
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
To conclude, I applied as directed current log file in the copy of the database and it worked perfectly. Thank you.
Below result:
Starting database "DATABASE" (C: DATABASE DATABASE.DB) Fri Oct 19 2012 at 14:56 Database recovery in progress Last checkpoint at Mon Oct 15 2012 11:00 Checkpoint log ... Performance warning: Database file "C: DATABASE DATABASE.DB" Consists of five disk fragments Transaction log: database.log ... Rollback log ... Checkpointing ... Starting checkpoint of "DATABASE" (DATABASE.DB) Fri Oct 19 2012 at 15:02 Finished checkpoint of "DATABASE" (DATABASE.DB) Fri Oct 19 2012 at 15:02 Recovery complete Database "DATABASE" (DATABASE.DB) started at Fri Oct 19 2012 15:02 Performance warning: Page size too small for database "DATABASE" Database server started at Fri Oct 19 2012 15:02 Trying to start SharedMemory link ...
SharedMemory link started successfully
Trying to start NamedPipes link ...
NamedPipes link started successfully
Trying to start TDS (TCPIP) link ...
TDS (TCPIP) communication link not started
Now accepting requests
User | Count |
---|---|
87 | |
10 | |
9 | |
9 | |
7 | |
6 | |
6 | |
5 | |
5 | |
5 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.