-
Bug
-
Resolution: Fixed
-
P3
-
1.2.0
-
beta
-
generic
-
generic
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-2026275 | 1.4.0 | Harold Carr | P3 | Closed | Fixed | merlin |
Name: krT82822 Date: 04/03/99
The class com.sun.CORBA.iiop.IIOPOutputStream implements the invoke
message that is responsible for sending a client message. If the
message results in a system exception and the completion status
is NO, the message is resent up to 2 more times. I don't believe
this is acceptable default behavior. While I can imagine
circumstances where this behavior might prove useful, I have
encountered other circumstances where it wastes time and causes
confusion. For example, consider an ORB that has a location and
activation service, which is responsible for vectoring client
requests to an appropriate server. If this service gets a request
for an object that is not properly configured for activation,
it must throw a system exception back to the client w/ a
completion status of NO. In this case, it does no good whatsoever
to retry the message. And someone diagnosing the problem will be
perplexed by the repeated request to the service.
The service may be short on resources in which case it must again
throw a system exception. Even in this case, it's unlikely that
retrying the message within a period of a second is going to make
much of a difference. In general, I think that most message failuers
will not be recoverable (COMM_FAILURE, OBJECT_NOT_FOUND, ..) and
will not benefit from a retry, so I would like to see the
default behavior changed so that no retries are made when
a system exception is thrown w/ completion status NO.
(Review ID: 53281)
======================================================================
- backported by
-
JDK-2026275 JavaIDL orb unnecessarily retries requests that result in system exceptions
-
- Closed
-