Mimer SQL Documentation TOC PREV NEXT INDEX

Mimer SQL Developer Site

http://developer.mimer.com


Result File Contents


Any errors detected in the databank file are written to the result file directly after the identification record for the table affected.

The result file begins with the following information:

Note: If the databank was not properly closed when Mimer SQL was stopped, there may be an additional message saying:
     * No bitmap checking against databank!
     

If the check flag indicates that the databank was not properly closed, the database server will not allow the databank to be accessed and it will, therefore, not be possible to perform any operations.

DBC Table Information

An identification record is given for each table in the databank. The following information is shown:

Information
Description
 Tabid
The system identification number of the table. This is the number used to identify the table in the data dictionary. The table name is not stored directly in the databank file.
 Startp
The page number of the start page for the highest index level.
If the number of levels is 1, this is the only data page. If the start page is 0, the table is empty.
 Levels
The number of levels in the table storage structure.
 Keylen
The length of the primary key in bytes.
 Reclen
The record length (row length) of the table.
 Type of table
Base table, Base table (VL), Secondary index table or Secondary index table (VL).
(VL) indicates that data pages have variable-length records (i.e. are compressed).
 Status of table
Resident or Marked for delete.
 Index page size
Size of the index page in bytes.
 Data page size
Size of the data page in bytes.
 Number of index pages
Indicates how many index pages were checked.
 Number of data pages
Indicates how many data pages were checked.
 Required/Allocated datapages
Gives an approximate measure of the space used in the data pages.
This is expressed as a percentage, which may be >100% for data pages having variable-length (i.e. compressed) records because the required number of pages is calculated based on uncompressed record sizes.
 Reached no of records
If no errors are reported, the number of records reached is equal to the total number of records (rows) stored for the table.

DBC Table Information for LOGDB, TRANSDB and SQLDB

For LOGDB, TRANSDB and SQLDB, the identification record contains the following information:

Information
Description
 Tabid
Ordered identification.
 Startpage
First page in the sequential file.
 Endpage
Last page in the sequential file.
 Type of table
Sequential table or Sequential table (VL).
(VL) indicates that pages have variable-length records (i.e. are compressed).
 Status of table
Resident or Marked for delete.
 Page size
Size of the page in bytes.
 No. of pages read
Number of pages checked.
 No. of records read
Number of records checked.

Error Messages

The following error situations are described by explicit messages in the result file:

Bitmap Errors

Error message
Explanation
 * Illegal number of free bits in bitmap
The number of free bits in the bitmap is marked as a negative number or as a number greater than the permissible value.
 * Illegal pointer to first word with free bit in bitmap
The pointer to the first word is either negative or greater than the number of words per page, or points outside the number of allocated pages.

Root Page Errors

Error message
Explanation
 * Illegal record length in root page
The record length is not valid for the current version or for the site.
 * Pageno. outside databank: x 
 
 * Pageno. not marked as used: x
The reference to the page number (x) is invalid. (Applies only where there is more than one root page.)

Sequential Structure Errors

Error message
Explanation
 * Pointer to previous page invalid
Error in page linkage.
 * Invalid record length
The record length is either not the same as in the previous page or outside the page limits.
 * Record crosses page boundary
A record stretches over the page limits.

Table Structure Errors

Error message
Explanation
 * Error in root record
The value for start page, levels, key length or record length is outside the legal values for the site.
 * Page has illegal record length: x
The record length (x) given in the page is not the same as that given for the table.
 * Page has illegal last-record pointer: x
The pointer (x) to data within a page is outside the page limits. The limits are the values of bytes/header and bytes/page.
 * Page has records in wrong order. Pos: x
The records in the page are not correctly sorted. The value of x is the byte position within the page for the start of the wrong record.
 * Page has last-record key > index key. Pos: x
The records within a page include key values greater than those in the index level above. The value of x is the byte position within the page for the start of the last record.
 * Page no. outside databank: x
Reference is made to a page number (x) which is higher than the highest allocated page.
 * Page no. referenced twice
There are at least two references to the same page number (x). One of these references should also give another error, or an error should have been notified earlier in the file.
 * Page no. not marked as used: x
    Bitmap pageno:      Word:     Bit:
A page that is used is illegally marked as free.
Continued insertion of data in the databank will result in a double referenced page.

All table structure errors are followed by a listing of the page numbers passed in the B*-tree structure on the way to the error. In the example below a y-value indicates the byte position in the page (corresponding x-value) where the record holding the reference to the next level starts:

 B*-tree
 Page no:    x1   x2   x3  ....  xn
 Byte pos:   y1   y2   y3  ....  yn
 

If the error occurs at an index level, the following additional message is given, and no checks are made at lower levels:

 Branch is interrupted


Upright Database Technology AB
Voice: +46 18 780 92 00
Fax: +46 18 780 92 40
dbtechnology@upright.se
Mimer SQL Documentation TOC PREV NEXT INDEX