

#Xchm an assertion failed free
201133 - "Attempt to free page %x in file %d beyond end of dbspace %x".201130 - "File is shorter than expected".201129 - "File is shorter than expected".201120 - "Attempt to write an invalid definition page".201503 - "Record 0x%x not present on page 0x%x:0x%x".201501 - "x%x:0x%x for requested record not a table page".201500 - "Page pointer for requested record id is NULL".

200115 - "Expecting page read to be an index page (table %d, page 0x%x, file %d)".200100 - "Unable to open dbspace when allocating index page".102813 - "Unable to find primary table definition when dropping a foreign key".102811 - "Unable to add to SYSIDXCOL when creating a foreign key".102809 - "Unable to add to SYSIXCOL when creating an index".102806 - "Unable to delete row from SYSTABLE".102805 - "Unable to find table definition for a table to be dropped".

102802 - "Unable to undo index changes resulting from a failed column alteration".102801 - "Unable to find table definition when creating/altering a column".A new database server option " -ufd " controls now how the database server reacts when it encounters one of these 'database-level' assertions on a specific database: Starting in version 16, not all assertions are treated as server-level fatal error causing the entire server to shutdown. SQL Anywhere 16 now allows database administrators finer control of the database server behaviour when an assertion occurs. Running the Support Utility (dbsupport) with 'dbsupport -lc' may list this same entry as an outstanding crash entry to be submitted to SAP Support.Īssertion Behaviour for specific databases in SQL Anywhere 16 CRASH_LOG file in the SADIAGDIR environment variable's file path with the file name prefix SA1X_YYYYMMDD_HHmmss_pid Where 'SA1X' is the major version of SQL Anywhere, 'YYYYMMDD' is the date on which the assertion occurred, the 'HHmmss' is the time of day the assertion occurred and 'pid' is the Process ID of the crashing process. At the time of the assertion message, the SQL Anywhere database server will also produce a diagnostic. A client connection that is already connected to the database or attempts to connect to the database may also see the error: Internal database error "Assertion failed: # (xx.x.x.xxxx)" - transaction rolled back SQLCODE=-301, ODBC 3 State="40W01" No other work may be performed on the database server and all further SQL commands will result in the reported client error.Details about the assertion are provided in a text line following the error. The assertion number is a six-digit number, and the numbers following the assertion number in brackets will indicate the version and build of the SQL Anywhere database server that asserted. During start-up or during operation of the SAP SQL Anywhere database, there is an erroneous operating condition encountered and an error message is printed to the database console log *** ERROR *** Assertion failed: # (xx.x.x.xxxx) Error message follows with information about the cause of the assertion.In SQL Anywhere 16, the two database server switches dbsrv16 -uf and dbsrv16 -ufd control the database server behavior when an assertion occurs on an individual database. In SQL Anywhere 12 and lower, upon detecting an assertion the database server will immediately stop processing client requests, return with a SQL error to all clients, and will present an error message with a six-digit number and a brief description of the assertion on the database console. OverviewĪssertions are checked conditions in the SQL Anywhere server that prevent data corruptions during operation. This document provides an overview of how SQL Anywhere handles these potential data corruption conditions and the various options for recovery once a data corruption has been detected. When using a SQL Anywhere database, unexpected operating conditions, software issues or hardware issues can have the potential to cause data corruption inside the database.
