Tuxedo 9.0 - Incorrect Server Status AfterCalling tpreturn() With TPEXIT
Last updated on JANUARY 19, 2018
Applies to:Oracle Tuxedo - Version 9.0 to 9.0
Information in this document applies to any platform.
When tpreturn() is called with TPEXIT, Tuxedo will rollback the transaction (if any), send a reply back to the caller, and then it will call exit() to terminate.
In C++, exit() will invoke a global destructor. If the global destructor hangs the exit() call hangs and the server process will remain in the Tuxedo bulletin board with an IDLE status (even though it is actually a dead process).
With an IDLE status the BBL process will not remove the dead process from the bulletin board and the server will still take requests. This causes big problems for Tuxedo administration.
Tuxedo should change the server status to IDLE|SHUTDOWN, before the exit call, like it does in a tpsvrdone() execution.
Sign In with your My Oracle Support account
Don't have a My Oracle Support account? Click to get started
My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms