Guardian Procedure Calls Reference Manual
◦ Changing the primary-key of a key-sequenced record
An update to a record in a key-sequenced file cannot alter the value of the primary-key
field. Changing the primary-key field must be done by deleting the old record
(WRITEUPDATE[X] with write-count = 0) and inserting a new record with the key field
changed (WRITE).
◦ Current-state indicators after WRITEUPDATE[X]
After a successful WRITEUPDATE[X], the current-state indicators remain unchanged.
Magnetic Tape Considerations
• WRITEUPDATE[X] is permitted only on the 3202 Controller for the 5103 or 5104 Tape Drives.
This command is not supported on any other controller/tape drive combination.
WRITEUPDATE[X] is specifically not permitted on these controller/tape drive pairs:
◦ 3206 Controller and the 5106 Tri-Density Tape Drive
◦ 3207 Controller and the 5103 & 5104 Tape Drives
◦ 3208 Controller and the 5130 & 5131 Tape Drives
• Specifying the correct number of bytes written
When WRITEUPDATE[X] is used with magnetic tape, the number of bytes to be written must
fit exactly; otherwise, information on the tape can be lost. However, no error indication is
given.
• Limitation of WRITEUPDATE[X] to the same record
Five is the maximum number of times a WRITEUPDATE[X] can be executed to the same record
on tape.
Considerations for WRITEUPDATEX Only
• The buffer and count transferred may be in the user stack or in an extended data segment.
The buffer and count transferred cannot be in the user code space.
• If the buffer or count transferred is in a selectable extended data segment, the segment must
be in use at the time of the call. Flat segments allocated by a process are always accessible
to the process.
• If the file is opened for nowait I/O, and the buffer is in an extended data segment, you cannot
deallocate or reduce the size of the extended data segment before the I/O completes with a
call to AWAITIOX or is canceled by a call to CANCEL or CANCELREQ.
• If the file is opened for nowait I/O, you must not modify the buffer before the I/O completes
with a call to AWAITIOX. This also applies to other processes that may be sharing the segment.
It is the application's responsibility to ensure this.
• If the file is opened for nowait I/O, and the I/O has been initiated with these routines, the
I/O must be completed with a call to AWAITIOX (not AWAITIO).
• If the file is opened for nowait I/O, the extended segment containing the buffer need not be
in use at the time of the call to AWAITIOX.
1514 Guardian Procedure Calls (W-Z)