[omniORB] EndPointNoListen problems, IOR problems etc.

Michael Houck mhouck at alumni.tufts.edu
Mon Apr 12 11:56:37 BST 2004


Can anyone help me out on this?  I'm still stuck on this.  I can get 
omniORB to give the right IP address in it's IOR strings, but once I add 
those lines to my cfg the example server breaks.

It almost seems like the object is being deleted, as is the naming context 
I create.  Is there something going on that causes the root POA to delete 
the objects once I create them?  Please help.

Mike

On Wed, 07 Apr 2004 13:05:52 +0000, Michael Houck 
<mhouck at alumni.tufts.edu> wrote:

> Okay, I've been searching through the mailing list archives for a couple 
> hours now and haven't been able to find a working solution to my 
> problem.  I'm using the latest omniorb and omniorbpy installations.
>
> My initial problem that I wanted to solve was that my computer is behind 
> a router and my IP address locally is 10.0.0.100, and when other 
> machines try to connect to mine, that IP is what is encoded in the IOR, 
> so they can't connect.  I've tried the following:
>
> export OMNIORB_USEHOSTNAME=66.30.my.ip
>
> Using this, omniNames gives the error:
> omniORB: Error: Unable to create an endpoint of this description: 
> giop:tcp::2809
>
> So then I tried the endPoint rules in the omniORB.cfg file, I added the 
> following lines:
> endPointNoListen=giop:tcp:66.30.my.ip:
> endPointNoPublish=giop:tcp::
>
> omniNames worked, but when running the python server example, it would 
> give the following errors:
> omniORB: Read from configuration file "/etc/omniorb/omniORB.cfg".
> omniORB: Distribution date: Fri Nov 21 17:39:25 GMT 2003 dgrisby
> omniORB: My addresses are:
> omniORB: 127.0.0.1
> omniORB: 10.0.0.100
> omniORB: Maximum supported GIOP version is 1.2
> omniORB: Native char code sets: ISO-8859-1 UTF-8.
> omniORB: Transmission char code sets: ISO-8859-1(1.2) ISO-8859-1(1.1) 
> ISO-8859-1(1.0) UTF-8(1.2).
> omniORB: Native wide char code sets: UTF-16.
> omniORB: Transmission wide char code sets: UTF-16(1.2).
> omniORB: Information: the omniDynamic library is not linked.
> omniORB: Current configuration is as follows:
> omniORB:   DefaultInitRef (file) = corbaloc::10.0.0.100
> omniORB:   DefaultInitRef (args) =
> omniORB:   abortOnInternalError = 0
> omniORB:   acceptBiDirectionalGIOP = 0
> omniORB:   acceptMisalignedTcIndirections = 0
> omniORB:   bootstrapAgentHostname =
> omniORB:   bootstrapAgentPort = 900
> omniORB:   clientCallTimeOutPeriod = 0
> omniORB:   clientTransportRule = * unix,ssl,tcp
> omniORB:   diiThrowsSysExceptions = 0
> omniORB:   dumpConfiguration = 0
> omniORB:   endPointNoListen = giop:tcp:66.30.246.101:2809
> omniORB:   endPointNoPublish = giop:tcp::
> omniORB:   endPointPublishAllIFs = 0
> omniORB:   giopMaxMsgSize = 2097152
> omniORB:   giopTargetAddressMode = KeyAddr
> omniORB:   id = omniORB4
> omniORB:   inConScanPeriod = 180
> omniORB:   lcdMode = 0
> omniORB:   maxGIOPConnectionPerServer = 5
> omniORB:   maxGIOPVersion = 1.2
> omniORB:   maxInterleavedCallsPerConnection = 5
> omniORB:   maxServerThreadPerConnection = 100
> omniORB:   maxServerThreadPoolSize = 100
> omniORB:   nativeCharCodeSet = ISO-8859-1
> omniORB:   nativeWCharCodeSet = UTF-16
> omniORB:   objectTableSize = 0
> omniORB:   offerBiDirectionalGIOP = 0
> omniORB:   omniORB_27_CompatibleAnyExtraction = 0
> omniORB:   oneCallPerConnection = 1
> omniORB:   outConScanPeriod = 120
> omniORB:   poaHoldRequestTimeout = 0
> omniORB:   poaUniquePersistentSystemIds = 1
> omniORB:   principal = [Null]
> omniORB:   scanGranularity = 5
> omniORB:   serverCallTimeOutPeriod = 0
> omniORB:   serverTransportRule = * unix,ssl,tcp
> omniORB:   strictIIOP = 1
> omniORB:   supportBootstrapAgent = 1
> omniORB:   supportCurrent = 1
> omniORB:   supportPerThreadTimeOut = 0
> omniORB:   tcAliasExpand = 0
> omniORB:   threadPerConnectionLowerLimit = 9000
> omniORB:   threadPerConnectionPolicy = 1
> omniORB:   threadPerConnectionUpperLimit = 10000
> omniORB:   threadPoolWatchConnection = 1
> omniORB:   traceInvocations = 1
> omniORB:   traceLevel = 40
> omniORB:   traceThreadId = 0
> omniORB:   unixTransportDirectory = /tmp/omni-%u
> omniORB:   unixTransportPermission =  777
> omniORB:   useTypeCodeIndirections = 1
> omniORB:   verifyObjectExistsAndType = 1
> omniORB: omniORBpy distribution date: Fri Nov 21 17:42:54 GMT 2003 
> dgrisby
> omniORB: Python thread state scavenger start.
> omniORB: Initialising incoming endpoints.
> omniORB: Bind to address 0.0.0.0.
> omniORB: Starting serving incoming endpoints.
> omniORB: Reusing Python state for thread id 16384
> omniORB: Adding root<0> (activating) to object table.
> omniORB: State root<0> (activating) -> active
> omniORB: Creating ref to local: root<0>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id: IDL:Example/Echo:1.0
> omniORB: Creating Python ref to local: root<0>
>  target id      : IDL:Example/Echo:1.0
>  most derived id: IDL:Example/Echo:1.0
> omniORB: ObjRef(IDL:Example/Echo:1.0) -- deleted.
> omniORB: Trying to resolve initial reference `NameService'
>  with configuration file default `corbaloc::10.0.0.100/NameService'
> omniORB: Creating ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id:
> omniORB: Initial reference `NameService' resolved with configuration 
> file ORBDefaultInitRef prefix.
> omniORB: Creating Python ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id:
> omniORB: Invoke '_is_a' on remote: key<0x4e616d6553657276696365>
> omniORB: AsyncInvoker: thread id = 2 has started. Total threads = 1
> omniORB: Client attempt to connect to giop:tcp:10.0.0.100:2809
> omniORB: Client opened connection to giop:tcp:10.0.0.100:2809
> omniORB: sendChunk: to giop:tcp:10.0.0.100:2809 100 bytes
> omniORB:
> 4749 4f50 0100 0100 5800 0000 0000 0000 GIOP....X.......
> 0200 0000 0100 0000 0b00 0000 4e61 6d65 ............Name
> 5365 7276 6963 6500 0600 0000 5f69 735f Service....._is_
> 6100 0000 0000 0000 2800 0000 4944 4c3a a.......(...IDL:
> 6f6d 672e 6f72 672f 436f 734e 616d 696e omg.org/CosNamin
> 672f 4e61 6d69 6e67 436f 6e74 6578 743a g/NamingContext:
> 312e 3000                               1.0.
> omniORB: AsyncInvoker: thread id = 3 has started. Total threads = 2
> omniORB: giopRendezvouser task execute for giop:tcp:10.0.0.100:33171
> omniORB: Scavenger task execute.
> omniORB: inputMessage: from giop:tcp:10.0.0.100:2809 25 bytes
> omniORB:
> 4749 4f50 0100 0101 0d00 0000 0000 0000 GIOP............
> 0200 0000 0000 0000 01                  .........
> omniORB: Creating Python ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CosNaming/NamingContext:1.0
>  most derived id:
> omniORB: LocateRequest to remote: key<0x4e616d6553657276696365>
> omniORB: sendChunk: to giop:tcp:10.0.0.100:2809 31 bytes
> omniORB:
> 4749 4f50 0100 0103 1300 0000 0400 0000 GIOP............
> 0b00 0000 4e61 6d65 5365 7276 6963 65   ....NameService
> omniORB: inputMessage: from giop:tcp:10.0.0.100:2809 20 bytes
> omniORB:
> 4749 4f50 0100 0104 0800 0000 0400 0000 GIOP............
> 0100 0000                               ....
> omniORB: Invoke 'bind_new_context' on remote: 
> key<0x4e616d6553657276696365>
> omniORB: sendChunk: to giop:tcp:10.0.0.100:2809 99 bytes
> omniORB:
> 4749 4f50 0100 0100 5700 0000 0000 0000 GIOP....W.......
> 0600 0000 0161 6d65 0b00 0000 4e61 6d65 .....ame....Name
> 5365 7276 6963 6500 1100 0000 6269 6e64 Service.....bind
> 5f6e 6577 5f63 6f6e 7465 7874 0044 4c3a _new_context.DL:
> 0000 0000 0100 0000 0500 0000 7465 7374 ............test
> 002f 4e61 0b00 0000 6d79 5f63 6f6e 7465 ./Na....my_conte
> 7874 00                                 xt.
> omniORB: inputMessage: from giop:tcp:10.0.0.100:2809 214 bytes
> omniORB:
> 4749 4f50 0100 0101 ca00 0000 0000 0000 GIOP............
> 0600 0000 0000 0000 2b00 0000 4944 4c3a ........+...IDL:
> 6f6d 672e 6f72 672f 436f 734e 616d 696e omg.org/CosNamin
> 672f 4e61 6d69 6e67 436f 6e74 6578 7445 g/NamingContextE
> 7874 3a31 2e30 0000 0100 0000 0000 0000 xt:1.0..........
> 8200 0000 0101 0200 0e00 0000 3636 2e33 ............66.3
> 302e 3234 362e 3130 3100 f90a 0e00 0000 0.246.101.......
> ff00 87fb 7340 0100 48c6 0000 0000 0000 ....s at ..H.......
> 0300 0000 0000 0000 0800 0000 0100 0000 ................
> 0054 5441 0100 0000 1c00 0000 0100 0000 .TTA............
> 0100 0100 0100 0000 0100 0105 0901 0100 ................
> 0100 0000 0901 0100 0300 0000 1600 0000 ................
> 0100 0000 0b00 0000 3130 2e30 2e30 2e31 ........10.0.0.1
> 3030 0000 f90a                          00....
> omniORB: Creating Python ref to in process: root/<..s...H.....>
>  target id      : IDL:omg.org/CosNaming/NamingContext:1.0
>  most derived id: IDL:omg.org/CosNaming/NamingContextExt:1.0
> New test context bound
> omniORB: Invoke '_is_a' on in process: root/<..s...H.....>
> omniORB: throw OBJECT_NOT_EXIST from inProcessIdentity.cc:179 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> omniORB: throw OBJECT_NOT_EXIST from omniObjRef.cc:780 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> Traceback (most recent call last):
>   File "server.py", line 48, in ?
>     testContext.bind(name, eo)
>   File "/usr/lib/python2.3/site-packages/CosNaming_idl.py", line 203, in 
> bind
>     return _omnipy.invoke(self, "bind", 
> _0_CosNaming.NamingContext._d_bind, args)
> omniORB.CORBA.OBJECT_NOT_EXIST: Minor: OBJECT_NOT_EXIST_NoMatch, 
> COMPLETED_NO.
> omniORB: ObjRef(IDL:Example/Echo:1.0) -- deleted.
> omniORB: omniRemoteIdentity deleted.
> omniORB: ObjRef() -- deleted.
> omniORB: omniRemoteIdentity deleted.
> omniORB: ObjRef() -- deleted.
> omniORB: ObjRef(IDL:omg.org/CosNaming/NamingContextExt:1.0) -- deleted.
> omniORB: omniRemoteIdentity deleted.
> omniORB: ObjRef() -- deleted.
> omniORB: ORB not destroyed; no final clean-up.
> bash-2.05b# python server.py -ORBtraceLevel 10
> omniORB: Read from configuration file "/etc/omniorb/omniORB.cfg".
> omniORB: Distribution date: Fri Nov 21 17:39:25 GMT 2003 dgrisby
> omniORB: Information: the omniDynamic library is not linked.
> omniORB: omniORBpy distribution date: Fri Nov 21 17:42:54 GMT 2003 
> dgrisby
> omniORB: Initialising incoming endpoints.
> omniORB: Starting serving incoming endpoints.
> omniORB: Adding root<0> (activating) to object table.
> omniORB: Creating ref to local: root<0>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id: IDL:Example/Echo:1.0
> omniORB: Creating Python ref to local: root<0>
>  target id      : IDL:Example/Echo:1.0
>  most derived id: IDL:Example/Echo:1.0
> omniORB: Trying to resolve initial reference `NameService'
>  with configuration file default `corbaloc::10.0.0.100/NameService'
> omniORB: Creating ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id:
> omniORB: Initial reference `NameService' resolved with configuration 
> file ORBDefaultInitRef prefix.
> omniORB: Creating Python ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id:
> omniORB: Invoke '_is_a' on remote: key<0x4e616d6553657276696365>
> omniORB: AsyncInvoker: thread id = 2 has started. Total threads = 1
> omniORB: Creating Python ref to remote: key<0x4e616d6553657276696365>
>  target id      : IDL:omg.org/CosNaming/NamingContext:1.0
>  most derived id:
> omniORB: LocateRequest to remote: key<0x4e616d6553657276696365>
> omniORB: Invoke 'bind_new_context' on remote: 
> key<0x4e616d6553657276696365>
> Test context already exists
> omniORB: Invoke 'resolve' on remote: key<0x4e616d6553657276696365>
> omniORB: Creating Python ref to in process: root/<..s...H.....>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id: IDL:omg.org/CosNaming/NamingContextExt:1.0
> omniORB: Invoke '_is_a' on in process: root/<..s...H.....>
> omniORB: throw OBJECT_NOT_EXIST from inProcessIdentity.cc:179 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> omniORB: throw OBJECT_NOT_EXIST from omniObjRef.cc:780 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> Traceback (most recent call last):
>   File "server.py", line 40, in ?
>     testContext = obj._narrow(CosNaming.NamingContext)
>   File "/usr/lib/python2.3/site-packages/omniORB/CORBA.py", line 667, in 
> _narrow
>     return _omnipy.narrow(self, dest._NP_RepositoryId)
> omniORB.CORBA.OBJECT_NOT_EXIST: Minor: OBJECT_NOT_EXIST_NoMatch, 
> COMPLETED_NO.
>
> What's even stranger is that if I run the server again, then it prints 
> out the following errors (truncated, starting at the message "test 
> context already bound"):
>
> Test context already exists
> omniORB: Invoke 'resolve' on remote: key<0x4e616d6553657276696365>
> omniORB: Creating Python ref to in process: root/<..s...H.....>
>  target id      : IDL:omg.org/CORBA/Object:1.0
>  most derived id: IDL:omg.org/CosNaming/NamingContextExt:1.0
> rootContext obj 
> IOR:010000002b00000049444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e300000010000000000000082000000010102000e00000036362e33302e3234362e31303100f90a0e000000ff0087fb7340010048c60000000000000300000000000000080000000100000000545441010000001c000000010000000100010001000000010001050901010001000000090101000300000016000000010000000b00000031302e302e302e3130300000f90a
> omniORB: Invoke '_is_a' on in process: root/<..s...H.....>
> omniORB: throw OBJECT_NOT_EXIST from inProcessIdentity.cc:179 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> omniORB: throw OBJECT_NOT_EXIST from omniObjRef.cc:780 
> (NO,OBJECT_NOT_EXIST_NoMatch)
> Traceback (most recent call last):
>   File "server.py", line 40, in ?
>     testContext = obj._narrow(CosNaming.NamingContext)
>   File "/usr/lib/python2.3/site-packages/omniORB/CORBA.py", line 667, in 
> _narrow
>     return _omnipy.narrow(self, dest._NP_RepositoryId)
> omniORB.CORBA.OBJECT_NOT_EXIST: Minor: OBJECT_NOT_EXIST_NoMatch, 
> COMPLETED_NO.
>
>
> I can't figure out what's going on here.  I've also tried adding lines 
> like:
> endPoint = giop:tcp::
> endPointPublishAllIFs = 1
> to the config, but I still get the same error.
>
> Can anyone help me?  Why would setting the endPointNoListen screw up the 
> rootpoa?  Is that what is giving the errors?
> Thanks
>
> Mike Houck
>
>
> _______________________________________________
> omniORB-list mailing list
> omniORB-list at omniorb-support.com
> http://www.omniorb-support.com/mailman/listinfo/omniorb-list





More information about the omniORB-list mailing list