TuXedo 6.5/6.51 - Uncertain FAILED Message Were Returned When Call tprecv() In Conversational Mode

(Doc ID 778036.1)

Last updated on NOVEMBER 04, 2016

Applies to:

Oracle Tuxedo - Version 6.5 to 6.5
Information in this document applies to any platform.
Information in this document applies to any platform


Goal

There are 2 domains:

Dom2 export service RCTOUPPER (CONV=Y).
Boot up Dom1, Boot up Dom2, and Shut down Dom2.

 

After shutdown Dom2, on Dom1 run client to call tpconnect() , tpsend() and tprecv() like this :

 

...
    if ((nCd = tpconnect("RCTOUPPER", pcSend, 0, lFlags)) == -1) {...}
    if (tpsend(nCd, (char*)pcSend, 0, TPRECVONLY, &revent) == -1) {...}
    if (tprecv(nCd, (char **)&pcRecv, &rlen, TPNOCHANGE, &revent) == -1) {
        if ( tperrno == TPEEVENT && revent == TPEV_SVCERR )
        ... }
...



As Dom2 is down, Dom1 can't connect to Dom2's RCTOUPPER, so you should get the failed message like this:

tperrno==TPEEVENT and revent==TPEV_SVCERR



From times to times, on Oracle  Solaris with the same command you cannot get unique message and so you may get:


"tperrno==TPEEVENT and revent==TPEV_SVCERR" (ok) and sometimes you get "tperrno==TPEEVENT and
revent==TPEV_DISCONIMM" (wrong).



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