Summary: | ORB blocks during connect() calls | ||
---|---|---|---|
Product: | TAO | Reporter: | Carlos O'Ryan <coryan> |
Component: | ORB | Assignee: | Nanbor Wang <bala> |
Status: | RESOLVED FIXED | ||
Severity: | critical | ||
Priority: | P1 | ||
Version: | 1.2.2 | ||
Hardware: | All | ||
OS: | All | ||
Bug Depends on: | |||
Bug Blocks: | 189, 940, 1131 |
Description
Carlos O'Ryan
2002-04-11 10:52:39 CDT
Add dependencies, this bug is required to fix a number of other things. Assigning the bug to me Accepting this bug After going through the ACE code I have the following observations to make - Whenever we have a timeout set in the ORB ie. a roundtrip timeout through the RELATIVE_RT_TIMEOUT_POLICY or through the hook (I am not sure why we need this still. IMHO, this should be removed), the ORB does a non-blocking connect by default. - When we dont have a timeout set, the ORB does a blocking connect (). We can address the later, ie. prevent the ORB from doing a blocked connect by using the strategies that are pointed out by Carlos. But we have a problem in the sense that the Strategy Connector does not return control to the developer when the system connect () returns a EINPROGRESS. The problem is exacerbated by the fact that ACE assumes (AFAICS) non-blocking connects only when a timeout argument is passed. I am not very sure on how to address these issues, other than hacking up portions of ACE. Any help would be great, including pointing out any misunderstandings on my part. Further, I seem to miss the connection between this bug and bug 1131 Added non-blocking connects per-se and that actually works ;). Here is the entry Sat Apr 27 16:54:22 2002 Balachandran Natarajan <bala@cs.wustl.edu> But the option madness hasnt been fixed. That will be done in the next round of changes. I am closing this bug since the requirements addressed in this one should have been addressed. |