Re: 211: Cannot read system catalog (systables). 103: ISAM error: illegal key descriptor (too many parts or too long).
Posted in 2005
Topics: Backup & Restore, Storage & Space Management, Error Codes & Troubleshooting, Server Administration
I am having the same issue, when I try to acccess my database in
dbaccess (or anyway for that matter) I receive the following error:
211: Cannot read system catalog (systables).
103: ISAM error: illegal key descriptor (too many parts or too long).
I have run an oncheck -cc databasename, but when running the oncheck I
receive the following errors on each table:
ERROR: No sysindexes records found. There should be 2 records.\\n
ERROR: No systabauth record for TBLspace informix.systables.
ISAM error: illegal key descriptor (too many parts or too long).TBLspace name systables
Owner informix
TBLspace number 2001b4
Tabid 1
Row size 469
Number of columns 20
Number of indexes 2
Number of rows 904
Date created 03/03/2004
TBLspace major version number 4
TBLspace minor version number 2
TBLspace type T
Locking level R
Number of pages used 51
First extent size 16
Next extent size 16
Flags 0
Site
Database name
ERROR: No sysindexes records found. There should be 2 records.\\n
ERROR: No systabauth record for TBLspace informix.syscolumns.
ISAM error: illegal key descriptor (too many parts or too long).
The oncheck does appear to validate every table in my database, and
each one give the same error. This database resides in a database
space with a few other database which are all having no issues. I have
tried restoring from ontape, but the database seems to have the error
through my last couple backups.
Any further help would be greatly appreciated.
Greg.Anderson@bi-tech.com wrote:
Contact tech support. They have to either mark the table's partition page
to set the number of keys to zero, or, if the indexes do exist (if detached
they will have entries in sysmaster:systabnames which maps the tablespace
tablespace) they may be able to insert the missing sysindexes records by
decifering the key information in the partition page. The only other
alternative is to try to extract the data from the table using a sequential
scan (ie no WHERE clause) drop the table, if the engine will let you,
recreate the table and reload it.
Art S. Kagel
> I am having the same issue, when I try to acccess my database in
> dbaccess (or anyway for that matter) I receive the following error:
> 211: Cannot read system catalog (systables).
> 103: ISAM error: illegal key descriptor (too many parts or too long).>
> I have run an oncheck -cc databasename, but when running the oncheck I
> receive the following errors on each table:
> ERROR: No sysindexes records found. There should be 2 records.\\n
> ERROR: No systabauth record for TBLspace informix.systables.
> ISAM error: illegal key descriptor (too many parts or too long).> TBLspace name systables
> Owner informix
> TBLspace number 2001b4
> Tabid 1
> Row size 469
> Number of columns 20
> Number of indexes 2
> Number of rows 904
> Date created 03/03/2004
> TBLspace major version number 4
> TBLspace minor version number 2
> TBLspace type T
> Locking level R
> Number of pages used 51
> First extent size 16
> Next extent size 16
> Flags 0
> Site
> Database name
> ERROR: No sysindexes records found. There should be 2 records.\\n
> ERROR: No systabauth record for TBLspace informix.syscolumns.
> ISAM error: illegal key descriptor (too many parts or too long).>
> The oncheck does appear to validate every table in my database, and
> each one give the same error. This database resides in a database
> space with a few other database which are all having no issues. I have
> tried restoring from ontape, but the database seems to have the error
> through my last couple backups.
> Any further help would be greatly appreciated.
>