A journal I/O error may have two causes. The first cause is a corrupted journal record header (MLOG). To recover from this type of error, do the following:
Action | Command |
---|---|
1. Put DFSMShsm in emergency mode. | SETSYS EMERGENCY |
2. Issue the CONTROLDATASETS parameter
of the BACKVOL command to back up the control and journal data sets.
Note: This step may fail with another I/O error. If it does, see Example 2: Replacing a damaged journal for more information on how to replace a damaged journal.
|
BACKVOL CONTROLDATASETS |
3. Stop DFSMShsm. | F DFSMSHSM,STOP |
4. Use IEBGENER to copy some data into the journal data set to overwrite the existing control record. | |
5. Start DFSMShsm. | S DFSMSHSM |
The second cause of a journal I/O error is a hardware error. If overwriting the journal record header does not correct the journal I/O error, a hardware malfunction probably caused the error.
To correct a hardware-caused journal I/O error, you may have to either 1) allocate a new journal data set on the same volume in a different location or 2) allocate a new journal data set on a different volume.
To allocate a new journal data set on the same DASD volume, do the following:
Action | Command |
---|---|
1. Put DFSMShsm in emergency mode. | SETSYS EMERGENCY |
2. Issue the CONTROLDATASETS parameter
of the BACKVOL command to back up the control and journal data sets.
Note: This step may fail with another I/O error. If it does, see Example 2: Replacing a damaged journal for more information about how to replace a damaged
journal.
|
BACKVOL CONTROLDATASETS |
3. Stop DFSMShsm. | F DFSMSHSM,STOP |
4. Rename the old journal data set | |
5. Allocate a new journal data set | |
6. Delete the old journal data set | |
7. Start DFSMShsm. | S DFSMSHSM |
To allocate a new journal data set on a different DASD volume, follow the instructions in the next topic “Moving the journal”.