Home | Previous Page | Next Page   Fault Tolerance > Consistency Checking > Dealing with Corruption >

I/O Errors on a Chunk

If an I/O error occurs during a database server write operation, the status of the chunk on which the error occurred changes to down. If a chunk is down, the onstat -d display shows the chunk status as PD- for a primary chunk and MD- for a mirror chunk.

Figure 104 shows an example in which chunk 2 is down.

Figure 104. onstat -d Output
Dbspaces
address  number   flags    fchunk   nchunks  flags    owner    name
40c980   1        1        1        1        N        informix rootdbs
40c9c4   2        1        2        1        N        informix fstdbs
 2 active, 8192 maximum

Chunks
address  chk/dbs offset   size     free    bpages   flags pathname
40c224   1   1   0        20000    14001            PO-   /home/server/root_chunk
40c2bc   2   2   0        2000     1659             PD-   /home/server/fst_chunk
 2 active, 8192 maximum

Additionally, the message log lists a message with the location of the error and a suggested solution. The listed solution is a possible fix but does not always correct the problem.

If the down chunk is mirrored, the database server continues to operate using the healthy chunk in the pair. Use operating-system utilities to determine what is wrong with the down chunk and correct the problem. You must then direct the database server to recover the off-line chunk.

For information about recovering a mirror chunk, refer to Recovering a Mirror Chunk.

If the down chunk is not mirrored and contains logical-log files, the physical log, or the root dbspace, the database server immediately initiates an abort. Otherwise, the database server can continue to operate but cannot write to or read from the down chunk or any other chunks in the dbspace of that chunk. You must take steps to determine why the I/O error occurred, correct the problem, and restore the dbspace from a backup.

If you take the database server to offline mode when a chunk is marked as down (D), you can reinitialize the database server, provided that the chunk marked as down does not contain critical data (logical-log files, the physical log, or the root dbspace).

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]