IBM Support

Database backup errors regarding compver table

Technote (troubleshooting)


During regularly scheduled backups the command performs an oncheck and the compver table error can be detected while performing the oncheck call when using IBM Rational Synergy.


Checking Informix Database "xxxxdb"...

Checking Table Space data ...
Checking Catalogs and Indexes ...

WARNING:No syssyntable records found.

Validating indexes for xxxxdb:informix.syserrors...

ERROR: Keys in node 0x4 are not in order.

ERROR: Index cv_name for xxxxdb:ccm_root.compver is bad.

Corruption found in Informix database /ccmdb/xxxxdb/db.

Checking Number of Extents ...

WARNING: summary of INFORMIX oncheck output has been saved in


Contents of '/tmp/ccmdb_check_inf_16590' :

Validating indexes for xxxxdb:ccm_root.compver...

 Index cv_id

   Index  fragment partition ccm in DBspace ccm

 Index cv_name

   Index  fragment partition ccm in DBspace ccm

ERROR: Keys in node 0x4 are not in order.

ERROR: Index cv_name for xxxxdb:ccm_root.compver is bad.

 Index cv_cvtype

   Index  fragment partition ccm in DBspace ccm

Please Drop and ReCreate Index cv_name for xxxxdb:ccm_root.compver.


This error is caused by multiple records in the compver table that have the same name, version, cvtype, and subsystem.


Informix Synergy Server environment.

Diagnosing the problem

Running backups and seeing the errors noted above.

Resolving the problem

  1. Log in to the server as user ccm_root and set the environment variables.

    (bourne shell example):

    CCM_HOME=<install area path>; export CCM_HOME
       PATH=$CCM_HOME/bin:$INFORMIXDIR/bin:$PATH; export PATH

    Note: replace the values between the angled brackets < >, omitting these brackets.

  2. Run the command:

    echo "unload to 'xxxxdb.compver' select
    id,name,version,cvtype,subsystem from compver" | dbaccess xxxxdb-

    This creates the file xxxxdb.compver. This file has 5 fields delimited by "|". The goal is to find the two rows whose last four fields are identical. (The first field is a unique row identifier).
  3. Delete all but one of each duplicate. To delete an object from the database using SQL (Informix), set the above environment variables as user ccm_root and use these commands:

    echo 'DELETE FROM compver where id=NNNNN;
    DELETE FROM attrib WHERE is_attr_of=NNNNN;
    DELETE FROM bind WHERE has_child=NNNNN;
    DELETE FROM relate WHERE from_cv=NNNNN OR to_cv=NNNNN;' | dbaccess xxxxdb -

Document information

More support for: Rational Synergy
Informix Dyn Srvr V10.0 for Synergy

Software version: 6.5a, 6.5, 6.6a, 7.0, 7.1a, 7.1,,,,,,, 7.2,,

Operating system(s): AIX, HP-UX, Linux, Solaris, Windows

Reference #: 1600852

Modified date: 30 January 2013

Translate this page: