[prev in list] [next in list] [prev in thread] [next in thread] 

List:       omniorb-list
Subject:    Re: [omniORB] Strange IOR
From:       Serguei Kolos <Serguei.Kolos () cern ! ch>
Date:       2004-07-30 12:01:17
Message-ID: 410A388D.6090804 () cern ! ch
[Download RAW message or body]

[Attachment #2 (multipart/alternative)]


May be the timeout is too short. Could you try to increase it and check 
what happens?

Frederic Prin wrote:

> Hi Sergei,
> Thanks for your response, unfortunatly the machine on which this IOR 
> had been generated is still alive. I can even ping it (it atkes about 
> 20us, and my timeout is set to 2000ms).
> but it has certainly be rebooted after the IOR had been generated 
> killing all running servers... I don't think it's the reason why the 
> narrow call throw a TRANSIENT__CallTimedout .
> Furthermore, when I step into the _narrow call, and did step by step 
> debug, I found the line that generate the exception:
> 
> void
> giopStream::CommFailure::_raise(CORBA::ULong minor,
> CORBA::CompletionStatus status,
> CORBA::Boolean retry,
> const char* filename,
> CORBA::ULong linenumber)
> {
> // cut...
> throw CommFailure(minor,status,retry,filename,linenumber);  //
> here minor=0x41540008 or minor=0x41540002
> }
> 
> which is caught and rethrown as a TRANSIENT  exception (with same 
> minor code) by
> 
> 
> void
> omniObjRef::_invoke(omniCallDescriptor& call_desc, CORBA::Boolean
> do_assert)
> {
> // cut...
> CORBA::TRANSIENT ex2(ex.minor(), ex.completed());
> if( !_omni_callTransientExceptionHandler(this, retries++, ex2) )
> OMNIORB_THROW(TRANSIENT,ex.minor(),ex.completed());        //
> here minor=0x41540008 or minor=0x41540002
> // cut...
> }
> 
> What is strange is that if I step by step debug down to the throw 
> CommFailure, I get a correct minor code = 0x41540002 which is "Connect 
> failed "
> But if I only put a breakpoint on the throw CommFailure line and wait 
> for the debuger to stop, I get a minor code = 0x41540008 which is 
> "Call timed out"
> 
> The pb is that my Name Service will become polluted by dangling 
> reference... and that my clients can no more discriminate a real dead 
> server from server blocked in a debugger or eavily loaded.
> 
> I do use omniORB-4.0.3 release snapshot. I will try soon the 
> omniORB-4.0.4!
> 
> If someone has another idea, I thank him in advance!
> 
> Thanks fro reading.
> 
> FredP
> 
> -----Original Message-----
> From: omniorb-list-bounces@omniorb-support.com
> [mailto:omniorb-list-bounces@omniorb-support.com] On Behalf Of
> Serguei Kolos
> Sent: vendredi 30 juillet 2004 09:16
> To: omniorb-list@omniorb-support.com
> Subject: Re: [omniORB] Strange IOR
> 
> If the computer (on which this dead IOR has been generated) is
> switched off then the
> only way to terminate a remote call is the timeout. TCP/IP (and
> therefore CORBA) can't
> tell anything apart from there were no reply in certain amount of
> time.
> If you switch that machine on then most probably you will get
> another minor code.
> 
> Cheers,
> Sergei
> 
> Frederic Prin wrote:
> 
> > Hi all,
> > 
> > I have some IOR registered on my Name Service that are dangling
> > (the corresponding server is dead).
> > When a clients tries to resolve + _narrow it I catch a TRANSIENT
> > exception when trying to narrow (that is good) but with a bad
> > minor code = 0x41540008
> > 
> > Which is omni::TRANSIENT_CallTimedout !
> > 
> > Indeed, I do set a setClientCallTimeout() before the narrow call
> > but since the IOR points on a dead server the servant cannot be
> > contacted so I am expecting another minor code.
> > 
> > I tried to get more information on those IOR with catior but
> > unfortunatly it fails with a MARSHALL exception...
> > 
> > meije{ bin }:14 > catior
> > IOR:010000001f00000049444c3a49536d617274566965772f5356496e746572666163653a312e3000 \
> > 00010000000000000060000000010102000c00000031302e36362e31302e313300008100000e000000 \
> > fec79cf2400000544d0000000000000002000000000000000100000001000000010000001c00000001000000010001000100000001000105090101000100000009010100
> >  
> > Type ID: "IDL:ISmartView/SVInterface:1.0"
> > Profiles:
> > 1. IIOP 1.2 10.66.10.13 33024 "....@..TM....."
> > 
> > Invalid stringified IOR supplied.
> > (CORBA::MARSHAL: minor = MARSHAL_PassEndOfMessage)
> > 
> > (I copy/paste the IOR from a kind of Name Service explorer (not
> > of my own) maybe it is wrongly displayed)
> > 
> > Any ideas
> > 
> > Thanks
> > 
> > Fred
> > (
> > Frédéric Prin          )
> > Senior Software Engineer /
> > S I L V A C O      (
> > Grenoble REsearch CEnter \
> > Tel 04 56 38 10 33        )
> > __________________________/___
> > /__/__/__/__/__/__/__/__/__/__/
> > /__/__/__/__/__/__/__/__/_____/
> > /__/__/__/__/__/__/__/__/__/__/
> > 
> > ------------------------------------------------------------------------
> > 
> > _______________________________________________
> > omniORB-list mailing list
> > omniORB-list@omniorb-support.com
> > http://www.omniorb-support.com/mailman/listinfo/omniorb-list
> > 
> > 


[Attachment #5 (text/html)]

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1">
  <title></title>
</head>
<body text="#000000" bgcolor="#ffffff">
May be the timeout is too short. Could you try to increase it and check
what happens?<br>
<br>
Frederic Prin wrote:<br>
<blockquote type="cite"
 cite="mid!~!UENERkVCMDkAAQACAAAAAAAAAAAAAAAAABgAAAAAAAAABHyBg5AUZEKchcDvdvPsn8KAAAAQAAAAv4e2OWwC+U2DY9IMd19KxQEAAAAA@silvaco.com">
  <meta http-equiv="Content-Type" content="text/html; ">
  <title>Message</title>
  <meta content="MSHTML 6.00.2800.1106" name="GENERATOR">
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">Hi Sergei,</font></span></div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">Thanks for your response, unfortunatly the
machine on which this IOR had been generated is still alive. I can even
ping it (it atkes about 20us, and my timeout is set to 2000ms).</font></span></div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">but it has certainly be&nbsp;rebooted after the
IOR had been generated killing all running servers... I don't think
it's the reason why the narrow call throw a TRANSIENT_<font
 color="#000000">_CallTimedout .</font></font></span></div>
  <div><span class="359451408-30072004"><font face="Arial" size="2">Furthermore,
when I step into the _narrow call, and did step by step debug, I found
the line that generate the exception:</font></span></div>
  <blockquote dir="ltr" style="margin-right: 0px;">
    <div><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">void<br>
giopStream::CommFailure::_raise(CORBA::ULong minor,<br>
&nbsp;&nbsp;&nbsp;&nbsp;CORBA::CompletionStatus status,<br>
&nbsp;&nbsp;&nbsp;&nbsp;CORBA::Boolean retry,<br>
&nbsp;&nbsp;&nbsp;&nbsp;const char* filename,<br>
&nbsp;&nbsp;&nbsp;&nbsp;CORBA::ULong linenumber)<br>
{<br>
// cut...</font></span></div>
    <div><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">&nbsp; <strong><font color="#ff0000">throw
CommFailure</font></strong>(minor,status,retry,filename,linenumber);&nbsp;
// here minor=0x41540008 or minor=0x41540002 </font></span></div>
    <div><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">}</font></span><span
 class="359451408-30072004"><font face="Arial" color="#0000ff" size="2"><br>
    </font></span></div>
  </blockquote>
  <div dir="ltr"><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">which is caught and rethrown as a
TRANSIENT&nbsp;&nbsp;exception (with same minor code) by</font></span></div>
  <div dir="ltr">&nbsp;</div>
  <blockquote dir="ltr" style="margin-right: 0px;">
    <div dir="ltr"><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">void<br>
omniObjRef::_invoke(omniCallDescriptor&amp; call_desc, CORBA::Boolean
do_assert)<br>
{</font></span></div>
    <div dir="ltr"><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">// cut...</font></span></div>
    <div dir="ltr"><span class="359451408-30072004"><font face="Courier"
 color="#0000ff" size="2">CORBA::TRANSIENT ex2(ex.minor(),
ex.completed());<br>
&nbsp;if( !_omni_callTransientExceptionHandler(this, retries++, ex2) )<br>
&nbsp;&nbsp; <font color="#00ff00"><strong>OMNIORB_THROW</strong></font>(TRANSIENT,ex.minor(),ex.completed());&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
 // here minor=0x41540008 or minor=0x41540002 </font></span></div>
    <div dir="ltr"><span class="359451408-30072004"><font
 color="#0000ff" size="2"><span class="359451408-30072004"><font
 face="Courier" color="#0000ff" size="2">// cut...</font></span></font></span></div>
    <div dir="ltr"><span class="359451408-30072004"><font
 color="#0000ff" size="2"><font face="Courier">}</font></font></span></div>
  </blockquote>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">What is strange is that if I step by step
debug down to the <font face="Courier"><font color="#ff0000">throw
CommFailure</font>, I get a correct minor code = 0x41540002 which is </font><font
 face="Times New Roman"><font color="#000000">"<span
 style="font-size: 10pt; font-family: 'Times New Roman';">Connect
failed "</span></font></font></font></span></div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">But if I only put a breakpoint on the <font
 face="Courier" color="#ff0000">throw CommFailure</font> line and wait
for the debuger to stop, I get a <font face="Courier">minor code =
0x41540008 which is "<span
 style="font-size: 10pt; font-family: 'Times New Roman';"><font
 color="#000000">Call timed out"</font></span></font></font></span></div>
  <div>&nbsp;</div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2">The pb is that my Name Service will become
polluted by dangling reference... and that my clients can no more
discriminate a real dead server from server blocked in a debugger or
eavily loaded.</font></span></div>
  <div>&nbsp;</div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2"><font face="Courier" color="#000000"><span
 style="font-size: 10pt; font-family: 'Times New Roman';">I do use
omniORB-4.0.3 release snapshot. I will try soon the \
omniORB-4.0.4!</span></font></font></span></div>  <div>&nbsp;</div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2"><font face="Courier" color="#000000"><span
 style="font-size: 10pt; font-family: 'Times New Roman';"><span
 class="359451408-30072004"><font face="Arial" color="#0000ff" size="2">If
someone has another&nbsp;idea, I thank him in \
advance!</font></span></span></font></font></span></div>  <div>&nbsp;</div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2"><font face="Arial" color="#0000ff"><span
 style="font-size: 10pt; font-family: 'Times New Roman';"><span
 class="359451408-30072004">Thanks fro \
reading.</span></span></font></font></span></div>  <div>&nbsp;</div>
  <div><span class="359451408-30072004"><font face="Arial"
 color="#0000ff" size="2"><font face="Arial" color="#0000ff"><span
 style="font-size: 10pt; font-family: 'Times New Roman';"><span
 class="359451408-30072004">FredP</span></span></font></font></span></div>
  <div dir="ltr"><font face="Arial" color="#0000ff" size="2"><br>
  </font></div>
  <blockquote dir="ltr" style="margin-right: 0px;">
    <div class="OutlookMessageHeader" lang="en-us" dir="ltr"
 align="left"><font face="Tahoma" size="2">-----Original Message-----<br>
    <b>From:</b> <a class="moz-txt-link-abbreviated" \
href="mailto:omniorb-list-bounces@omniorb-support.com">omniorb-list-bounces@omniorb-support.com</a>
 [<a class="moz-txt-link-freetext" \
href="mailto:omniorb-list-bounces@omniorb-support.com">mailto:omniorb-list-bounces@omniorb-support.com</a>] \
<b>On Behalf Of </b>Serguei Kolos<br>
    <b>Sent:</b> vendredi 30 juillet 2004 09:16<br>
    <b>To:</b> <a class="moz-txt-link-abbreviated" \
href="mailto:omniorb-list@omniorb-support.com">omniorb-list@omniorb-support.com</a><br>
  <b>Subject:</b> Re: [omniORB] Strange IOR<br>
    <br>
    </font></div>
If the computer (on which this dead IOR has been generated) is switched
off then the<br>
only way to terminate a remote call is the timeout. TCP/IP (and
therefore CORBA) can't <br>
tell anything apart from there were no reply in certain amount of time.<br>
If you switch that machine on then most probably you will get another
minor code.<br>
    <br>
Cheers,<br>
Sergei<br>
    <br>
Frederic Prin wrote:<br>
    <blockquote
 cite="mid!~!UENERkVCMDkAAQACAAAAAAAAAAAAAAAAABgAAAAAAAAABHyBg5AUZEKchcDvdvPsn8KAAAAQAAAADVmcYU5aoUuKDJ5vHPoo8wEAAAAA@silvaco.com"
  type="cite">
      <meta content="MS Exchange Server version 6.0.4630.0"
 name="Generator">
<!-- Converted from text/rtf format -->
      <p><font face="Arial" size="2">Hi all,</font> </p>
      <p><font face="Arial" size="2">I have some IOR registered on my
Name Service that are dangling (the corresponding server is dead).</font>
      <br>
      <font face="Arial" size="2">When a clients tries to resolve +
_narrow it I catch a TRANSIENT exception when trying to narrow (that is
good) but with a bad minor code = 0x41540008</font></p>
      <p><font face="Arial" size="2">Which is
omni::TRANSIENT_CallTimedout !</font> </p>
      <p><font face="Arial" size="2">Indeed, I do set a
setClientCallTimeout() before the narrow call but since the IOR points
on a dead server the servant cannot be contacted so I am expecting
another minor code.</font></p>
      <p><font face="Arial" size="2">I tried to get more information on
those IOR with catior but unfortunatly it fails with a MARSHALL
exception&#8230;</font> </p>
      <ul>
        <p><font face="Courier" size="2">meije{ bin }:14 &gt; catior
IOR:010000001f00000049444c3a49536d617274566965772f5356496e746572666163653a312e30000001 \
0000000000000060000000010102000c00000031302e36362e31302e313300008100000e000000fec79cf2 \
400000544d0000000000000002000000000000000100000001000000010000001c00000001000000010001000100000001000105090101000100000009010100</font></p>
  <p><font face="Courier" size="2">Type ID:
"IDL:ISmartView/SVInterface:1.0"</font> <br>
        <font face="Courier" size="2">Profiles:</font> <br>
        <font face="Courier" size="2">1. IIOP 1.2 10.66.10.13 33024 <a
 class="moz-txt-link-rfc2396E" \
href="mailto:....@..TM.....">"....@..TM....."</a></font>  </p>
        <p><font face="Courier" size="2">Invalid stringified IOR
supplied.</font> <br>
        <font face="Courier" size="2">(CORBA::MARSHAL: minor =
MARSHAL_PassEndOfMessage)</font> </p>
      </ul>
      <p><font face="Arial" size="2">(I copy/paste the IOR from a kind
of Name Service explorer (not of my own) maybe it is wrongly displayed)</font>
      </p>
      <p><font face="Arial" size="2">Any ideas</font> </p>
      <p><font face="Arial" size="2">Thanks</font> </p>
      <p><font face="Arial" size="2">Fred</font> <br>
      <font face="Courier New" \
size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp \
;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; \
(</font>  <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;&nbsp;&nbsp;</font><b> <font
 face="Courier New">Fr&eacute;d&eacute;ric Prin</font></b><font face="Courier New"
 size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font> <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;&nbsp;&nbsp; Senior Software \
Engineer /</font>  <br>
      <font face="Courier New" \
size="2">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; S I L V A C \
O&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (</font>  <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;&nbsp;&nbsp; Grenoble REsearch \
CEnter \</font>  <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;&nbsp;&nbsp; Tel 04 56 38 10 \
33&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; )</font>  <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;&nbsp;
__________________________/___</font> <br>
      <font face="Courier New" size="2">&nbsp;&nbsp;
/__/__/__/__/__/__/__/__/__/__/</font> <br>
      <font face="Courier New" size="2">&nbsp;
/__/__/__/__/__/__/__/__/_____/</font> <br>
      <font face="Courier New" size="2">&nbsp;/__/__/__/__/__/__/__/__/__/__/</font>
      </p>
      <pre wrap=""><hr width="90%" size="4">
_______________________________________________
omniORB-list mailing list
<a class="moz-txt-link-abbreviated"
 href="mailto:omniORB-list@omniorb-support.com">omniORB-list@omniorb-support.com</a>
<a class="moz-txt-link-freetext"
 href="http://www.omniorb-support.com/mailman/listinfo/omniorb-list">http://www.omniorb-support.com/mailman/listinfo/omniorb-list</a>
  </pre>
    </blockquote>
  </blockquote>
</blockquote>
</body>
</html>



_______________________________________________
omniORB-list mailing list
omniORB-list@omniorb-support.com
http://www.omniorb-support.com/mailman/listinfo/omniorb-list


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic