Skip to content

TPTIMEOUT

TPTIMEOUT Revised

TPTIMEOUT, Transaction timeout after rrrr restart(s) and gggg grace period(s) [from zzzz dddd]

Run Time Error: This message indicates that the transaction did not complete within $ZMAXTPTIME. rrrr is the number of restarts, if any. GT.M divides the time from the initial (outermost) TSTART to the $ZMAXTPTIME limit into five (gggg) equal grace-period intervals, each ending in a SIGALRM checkpoint, so that a single suppressed SIGALRM costs only one interval rather than terminating the transaction prematurely or letting it hang. The timeout occurs when the cumulative time reaches $ZMAXTPTIME. An external call that manipulates GT.M’s SIGALRM handler can suppress one or more of these signals and cause a premature TPTIMEOUT, so review external calls and external interactions carefully to avoid premature TPTIMEOUT. During external calls, GT.M sends a warning to the syslog as each grace period expires, and after all five expire it delivers an error to both the syslog and the process. The error reports $ZPOSITION zzzz and $ZDIRECTORY dddd where GT.M detected the expiration. Timeouts prevent runaway processes, damage from software bugs, and transactions so large as to be hostile to other users.

Action: Review the message(s) for any information about the cause of the transaction timeout, and/or research what the process was doing at the time of the warning or error. If the transaction uses custom programs, routines, or functions, they may need to be debugged.