Your database is corrupt; you should review the "I've got an assertion! What should I do?" document for further details. To get back up and running, you should revert to the most recent and valid backup of the database, assuming it is available.
If you do not have a valid backup copy of the database, you can try to salvage the database via Sybase Technical Support (for an additional salvage engagement fee).
"File is shorter than expected" can happen when the database file's file-system metadata has not been flushed to disk correctly and power is lost to the drive. For some Intel disk controller manufacturers on Windows, there is a registry setting that must be set in order to have disk flushes happen correctly.
You should review our SQL Anywhere I/O whitepaper to ensure that your operating system environment is set up to store files correctly (at times of power loss / system restart / etc.).
If you are using NTFS on Windows, you should also be aware of the recent comments Microsoft has made regarding "NTFS file metadata integrity" on current versions of Windows.
answered 17 Jan '12, 12:53