TurboIMAGE/XL Database Management System Reference Manual MPE/iX V6.5 (30391-90011)
238 Chapter5
TurboIMAGE/XL Library Procedures
DBXEND
5-25. describes the contents of element 1 when the
procedure does not succeed.
2-4 Unchanged from previous procedure call using this array.
5-10 Procedure call information. Refer to "Library Procedure
Error Messages" in appendix A for a description of this
information.
textlen
is an integer equal to the number of halfwords to be logged from the
text
parameter, or is a negative integer equal to the number of bytes. Length
can be zero.
Discussion
DBXEND is called to designate the end of a sequence of TurboIMAGE/XL procedure calls
that are collectively considered a dynamic transaction. If an intrinsic fails within a
dynamic transaction, you may use DBXEND to end the dynamic transaction at that point.
The modifications completed until that point will remain in the database(s). The beginning
of such a sequence is designated by a previous call to DBXBEGIN. DBXEND cannot be called
to end a transaction started by DBBEGIN.
Logging and DBRECOV are not needed with dynamic transactions, because the database can
be recovered dynamically. However, if the calling process is logging, DBXEND causes a record
to be written to the log file to identify the end of a dynamic transaction.
If you call DBXEND with mode 2, DBXEND forces the XM log buffer (and user log buffer if the
process is logging) to be written from memory to disk before returning to the calling
process. Use this option only for critical transactions; too many mode 2 DBXEND calls can
degrade performance by causing a disk access each time a dynamic transaction ends.
DBXEND returns an error condition if it is called without a prior matching call to DBXBEGIN.
DBXEND is not necessary after a DBXUNDO.