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)