TUX.ALL- Tuxedo tppost API Returns TPESVCFAIL When A Service Can't Be Notified, Regardless Of TheTransaction Status (Doc ID 765995.1)

Last updated on MAY 15, 2017

Applies to:

Oracle Tuxedo - Version 6.4 and later
Information in this document applies to any platform.

Goal

TUXEDO VERSION: 6.4/All

A Tuxedo tppost() execution returns TPESVCFAIL when a service can't be notified - regardless of transaction status

From Tuxedo the tppost(3c) manpage documentation:

[TPESVCFAIL]
The event broker encountered an error posting a transactional event to either a service routine or to a stable storage queue on behalf of the caller's transaction. The caller's current transaction is marked abort-only. When this error is returned, tpurcode contains the number of non-transactional event notifications dispatched by the event broker on behalf of eventname; transactional postings are not counted since their effects will be aborted upon completion of the transaction. Note that so long as the transaction has not timed out, further communication may be performed before aborting the transaction and that any work performed on behalf of the caller's transaction will be aborted upon transaction completion (that is, for subsequent communication to have any lasting effect, it should be done with TPNOTRAN set).


However, testing shows that the Tuxedo TMUSREVT user event broker server can return this error when not running a transaction.

Solution

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