Using the F (Fix) Command

The action of the F (Fix) command for each type of GFE is detailed as follows:

  1. Illegal Forward Link. The illegal forward link is zeroed and segment marks are put in the last two data bytes of the last legal frame in the group. This truncates the group at the end of the last valid frame. The logical item format analysis is then started from the base of the group.

In most cases, this will result in the detection of either an Embedded Segment Mark or an Invalid Item Size (if the segment marks were inserted in a size count field). These handler-generated errors are not reported but are fixed automatically without operator intervention.

If the segment marks inserted at the end of the frame fall within the body of an item, the count field of that item is adjusted so that the first segment mark falls at the item’s end and the second one signals the end of the group. An attribute mark is also inserted immediately before the first segment mark in order to properly terminate the item. If the segment marks fall within a count field, then a new segment mark is placed in the first byte of the count, to end the group.

  1. Illegal Backward Link. If a backward link does not point back to the previous frame, the forward link from the previous frame is zeroed and segment marks are inserted at the end of that frame. The process then proceeds exactly as described above for GFE Type 1.

  2. Invalid Item Size. If the number of bytes from the beginning of the item to the next segment mark falls within the acceptable range (6 through 32,268) and if the segment mark is preceded by an attribute mark (indicating a proper end of item), then the size field is adjusted to the new byte count and the item format analysis continues with the next item.

  3. If the byte count is out of range or the segment mark is not preceded by an attribute mark, then the group is truncated at the end of the frame containing this segment mark and the item format analysis is restarted at the base of the group.

  4. Embedded Segment Mark. The segment mark is changed from an X'FF' to an X'DF' and the item is treated identically to the Item Size Field Format Error (Type 3).

  5. Missing Ending Segment Mark. This error type is treated identically to the Item Size Field Format Error (Type 3).

  6. Incorrectly Terminated Item. To force proper termination, the last character of the item is overwritten with an attribute mark.

  7. Invalid Item Flags. The flags field is corrected based on the format of the item.

  8. Illegal Indirect Item Forward Link. The forward link to the invalid frame is removed, and the item is terminated at the last valid frame.

  9. Illegal Indirect Item Backward Link. The forward link to the frame containing the invalid backward link is removed, and the item is terminated at the last valid frame.

  10. Invalid Indirect Item Size. The first segment mark found in the indirect item terminates the item.

  11. Illegal Binary Item Forward Link. The forward link to the invalid frame is removed, and the item is terminated at the last valid frame. A contiguous binary item is changed to a linked binary item.

  12. Illegal Binary Item Backward Link. The forward link to the frame containing the invalid backward link is removed, and the item is terminated at the last valid frame. A contiguous binary item is changed to a linked binary item.

  13. Invalid Item Hash Address. A pointer to a copy of the item is stored in the SYSTEM-ERRORS file, and the item is removed from the group. To recover the item, use the GFE.RECOVER program.

  14. Duplicate Item-ID. A pointer to a copy of the first item is stored in the SYSTEM-ERRORS file, and the first item is removed from the group. The second item remains unchanged. To recover the item, use the GFE.RECOVER program.

  15. Item-ID Longer Than 100 Characters. A pointer to a copy of the first item is stored in the SYSTEM-ERRORS file, and the first item is removed from the group.

  16. Item-ID Contains System Delimiter Character. A pointer to a copy of the item is stored in the SYSTEM-ERRORS file, and the item is removed from the group. To recover the item, use the GFE.RECOVER program.

  17. Illegal Group FID. When an Illegal Group FID is detected, only actions (E)xit and (D)ebugger may be entered in response to the GFE Handler prompt.

  18. NOTE

    If the GFE is detected by an update processor, the GFE Handler is entered as the group is being updated or repacked. When the handler begins examining the group, the first error detected is usually not a GFE but merely the result of examining a group before it settles down. Several F commands are usually required before the group is fixed sufficiently for the update to continue. In many cases, items are deleted or items with duplicate item-IDs are created in the same group. If an E command is entered in response to the GFE Handler prompt, the group could be left in a partially updated condition.

See Also

Group Format Errors

GFE Types

GFE Handler Prompt and Commands