分类:
2009-10-11 02:33:55
Analogy to moving your home (in the US):
Commonly when a person moves their home, they send a postcard to their old local post office with their forwarding address. For a temporary time period of perhaps six months or a year, mail addressed to their old address will be forwarded (by their old local post office) to their new home. After this temporary period, mail still addressed to their old address will be returned to the sender as "UNDELIVERABLE".
While this analogy is not a perfect for the PCRE client-server communication, it is a good starting point for understanding the CORBA TRANSIENT error message.
The PCRE client asks the PCRE gateway for a PCRE server. The gateway spawns a server and gives the CORBA reference to this server object to the client. The client then begins its processing. However, the user-configurable orphan server timeout clock begins ticking. With each successful intermediate message between client (middle-tier) and server, the timeout clock is reset.
The default setting is 60 seconds per message. However, this threshold is configurable, both higher and lower, in the registry.
Here are some cases where timeout in connection with the CORBA TRANSIENT error may become an issue:
In these cases, the server may timeout. The client then attempts to use the CORBA reference it received earlier to communicate with a server that isn't there. Since the server is gone, the CORBA reference to that server effectively expires and CORBA doesn't know which object with which it should be talking, so it throws a TRANSIENT error.
There are also cases where the CORBA TRANSIENT error may occur, without a timeout, such as network problems inhibiting communications between Parallel Crystal clients (middle-tiers) and servers.
The CORBA TRANSIENT error has the form:
"com.mobileapps.pcre.PCREServerError: CORBA error: org.omg.CORBA.TRANSIENT: Retries exceeded, couldn't reconnect to
Please note that the CORBA.TRANSIENT Error is not due to high concurrency.
Possible Solutions: