[omniORB] Client Hangs on Invoke

jlou512 jlou.512 at gmail.com
Tue May 12 16:16:40 BST 2009


I am experiencing a strange problem with remote method invocation between my
C++ client and Java server application. I am using Java's orbd as the name
service. Prior to upgrading to Java 1.6 from 1.5, the C++ client had no
trouble calling methods from the server. After the upgrade, the client hangs
after making the invoke call using the request. If I kill the server, the
client is no longer blocked and continues execution.  Has anybody
experienced something similar so far? The 1.6 upgrade also included some
thread changes on the server-side (a new background worker thread), but I
didn't think that would cause an issue with omniORB. The implementation of
the server RMI interface has not changed.

Below is my level 40 trace of the client. Basically after it sends the
request to invoke the method, it hangs indefinitely. If I set the
ORBclientCallTimeOutPeriod to about 10 seconds, I receive a
TRANSIENT_CallTimeout error.

omniORB: Version: 4.1.1
omniORB: Distribution date: Sun Oct  7 16:41:47 BST 2007 dgrisby
omniORB: My addresses are:
omniORB: 10.184.226.35
omniORB: 127.0.0.1
omniORB: Maximum supported GIOP version is 1.2
omniORB: Native char code sets: UTF-8 ISO-8859-1.
omniORB: Transmission char code sets: UTF-8(1.2) UTF-8(1.1) ISO-8859-1(1.2)
ISO-
8859-1(1.1) ISO-8859-1(1.0).
omniORB: Native wide char code sets: UTF-16.
omniORB: Transmission wide char code sets: UTF-16(1.2).
omniORB: Initialising omniDynamic library.
omniORB: Current configuration is as follows:
omniORB:   DefaultInitRef (file) =
omniORB:   DefaultInitRef (args) =
omniORB:   InitRef = NameService=corbaloc:iiop:devarc3:1060/NameService
omniORB:   InitRef = NameService=corbaname::devarc3
omniORB:   abortOnInternalError = 0
omniORB:   abortOnNativeException = 0
omniORB:   acceptBiDirectionalGIOP = 0
omniORB:   acceptMisalignedTcIndirections = 0
omniORB:   bootstrapAgentHostname =
omniORB:   bootstrapAgentPort = 900
omniORB:   clientCallTimeOutPeriod = 10000
omniORB:   clientConnectTimeOutPeriod = 0
omniORB:   clientTransportRule = * unix,ssl,tcp
omniORB:   configFile = [none]
omniORB:   connectionWatchImmediate = 0
omniORB:   connectionWatchPeriod = 50000
omniORB:   copyValuesInLocalCalls = 1
omniORB:   diiThrowsSysExceptions = 0
omniORB:   dumpConfiguration = 0
omniORB:   endPoint = giop:tcp::
omniORB:   endPointPublish = addr
omniORB:   giopMaxMsgSize = 2097152
omniORB:   giopTargetAddressMode = KeyAddr
omniORB:   id = omniORB4
omniORB:   idleThreadTimeout = 10
omniORB:   inConScanPeriod = 180
omniORB:   lcdMode = 0
omniORB:   maxGIOPConnectionPerServer = 20
omniORB:   maxGIOPVersion = 1.2
omniORB:   maxInterleavedCallsPerConnection = 5
omniORB:   maxServerThreadPerConnection = 100
omniORB:   maxServerThreadPoolSize = 100
omniORB:   maxSocketRecv = 131072
omniORB:   maxSocketSend = 131072
omniORB:   nativeCharCodeSet = ISO-8859-1
omniORB:   nativeWCharCodeSet = UTF-16
omniORB:   objectTableSize = 0
omniORB:   offerBiDirectionalGIOP = 0
omniORB:   oneCallPerConnection = 1
omniORB:   outConScanPeriod = 120
omniORB:   poaHoldRequestTimeout = 0
omniORB:   poaUniquePersistentSystemIds = 1
omniORB:   principal = [Null]
omniORB:   resetTimeOutOnRetries = 0
omniORB:   scanGranularity = 5
omniORB:   serverCallTimeOutPeriod = 0
omniORB:   serverTransportRule = * unix,ssl,tcp
omniORB:   socketSendBuffer = 16384
omniORB:   strictIIOP = 1
omniORB:   supportBootstrapAgent = 0
omniORB:   supportCurrent = 1
omniORB:   supportPerThreadTimeOut = 0
omniORB:   tcAliasExpand = 0
omniORB:   threadPerConnectionLowerLimit = 9000
omniORB:   threadPerConnectionPolicy = 0
omniORB:   threadPerConnectionUpperLimit = 10000
omniORB:   threadPoolWatchConnection = 1
omniORB:   traceExceptions = 1
omniORB:   traceFile = [stderr]
omniORB:   traceInvocationReturns = 0
omniORB:   traceInvocations = 0
omniORB:   traceLevel = 40
omniORB:   traceThreadId = 0
omniORB:   traceTime = 0
omniORB:   unixTransportDirectory = /tmp/omni-%u
omniORB:   unixTransportPermission =  777
omniORB:   useTypeCodeIndirections = 1
omniORB:   verifyObjectExistsAndType = 1
omniORB: Creating ref to remote: key<NameService>
 target id      : IDL:omg.org/CORBA/Object:1.0
 most derived id:
omniORB: Initial reference `NameService' resolved from -ORBInitRef argument
/ OR
B registration.
omniORB: Client attempt to connect to giop:tcp:devarc3:1060
omniORB: AsyncInvoker: thread id = 1 has started. Total threads = 1
omniORB: Scavenger task execute.
omniORB: Client opened connection to giop:tcp:10.162.106.155:1060
omniORB: sendChunk: to giop:tcp:10.162.106.155:1060 100 bytes
omniORB:
4749 4f50 0100 0100 5800 0000 0000 0000 GIOP....X.......
0200 0000 01cd cdcd 0b00 0000 4e61 6d65 ............Name
5365 7276 6963 65cd 0600 0000 5f69 735f Service....._is_
6100 cdcd 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: inputMessage: from giop:tcp:10.162.106.155:1060 494 bytes
omniORB:
4749 4f50 0100 0001 0000 01e2 0000 0002 GIOP............
0000 0006 0000 00d2 0000 0000 0000 0028 ...............(
4944 4c3a 6f6d 672e 6f72 672f 5365 6e64 IDL:omg.org/Send
696e 6743 6f6e 7465 7874 2f43 6f64 6542 ingContext/CodeB
6173 653a 312e 3000 0000 0001 0000 0000 ase:1.0.........
0000 0096 0001 0200 0000 000f 3130 2e31 ............10.1
3632 2e31 3036 2e31 3535 0000 0419 0000 62.106.155......
0000 0019 afab cb00 0000 0002 3582 6689 ............5.f.
0000 0008 0000 0002 0000 0000 1400 0000 ................
0000 0003 0000 0001 0000 0020 0000 0000 ........... ....
0001 0001 0000 0002 0501 0001 0001 0020 ...............
0001 0109 0000 0001 0001 0100 0000 0026 ...............&
0000 0002 0002 0000 0000 0003 0000 001a ................
0000 0000 0000 000f 3130 2e31 3632 2e31 ........10.162.1
3036 2e31 3535 0000 0424 0000 4e45 4f00 06.155...$..NEO.
0000 0002 0014 0000 0000 0002 0000 0003 ................
0000 0028 4944 4c3a 6f6d 672e 6f72 672f ...(IDL:omg.org/
436f 734e 616d 696e 672f 4e61 6d69 6e67 CosNaming/Naming
436f 6e74 6578 743a 312e 3000 0000 0001 Context:1.0.....
0000 0000 0000 00b6 0001 0200 0000 000f ................
3130 2e31 3632 2e31 3036 2e31 3535 0000 10.162.106.155..
0419 0000 0000 003c afab cb00 0000 0022 .......<......."
0000 03e8 0000 0001 0000 0000 0000 0002 ................
0000 0008 526f 6f74 504f 4100 0000 000c ....RootPOA.....
4e61 6d65 5365 7276 6963 6500 0000 0003 NameService.....
4e43 3014 0000 0003 0000 0001 0000 0020 NC0............
0000 0000 0001 0001 0000 0002 0501 0001 ................
0001 0020 0001 0109 0000 0001 0001 0100 ... ............
0000 0026 0000 0002 0002 0000 0000 0003 ...&............
0000 001a 0000 0000 0000 000f 3130 2e31 ............10.1
3632 2e31 3036 2e31 3535 0000 0424      62.106.155...$
omniORB: Creating ref to remote:
key<............................RootPOA.....Nam
eService.....NC0.>
 target id      : IDL:omg.org/CORBA/Object:1.0
 most derived id: IDL:omg.org/CosNaming/NamingContext:1.0
omniORB: GIOP::LOCATION_FORWARD -- retry request.
omniORB: omniRemoteIdentity deleted.
omniORB: ObjRef(IDL:omg.org/CosNaming/NamingContext:1.0) -- deleted.
omniORB: Send codeset service context: (ISO-8859-1,UTF-16)
omniORB: Client attempt to connect to giop:tcp:10.162.106.155:1049
omniORB: Client opened connection to giop:tcp:10.162.106.155:1049
omniORB: sendChunk: to giop:tcp:10.162.106.155:1049 172 bytes
omniORB:
4749 4f50 0102 0100 a000 0000 0200 0000 GIOP............
0300 0000 0000 cdcd 3c00 0000 afab cb00 ........<.......
0000 0022 0000 03e8 0000 0001 0000 0000 ..."............
0000 0002 0000 0008 526f 6f74 504f 4100 ........RootPOA.
0000 000c 4e61 6d65 5365 7276 6963 6500 ....NameService.
0000 0003 4e43 3014 0600 0000 5f69 735f ....NC0....._is_
6100 cdcd 0100 0000 0100 0000 0c00 0000 a...............
0100 0000 0100 0100 0901 0100 cdcd cdcd ................
2800 0000 4944 4c3a 6f6d 672e 6f72 672f (...IDL:omg.org/
436f 734e 616d 696e 672f 4e61 6d69 6e67 CosNaming/Naming
436f 6e74 6578 743a 312e 3000           Context:1.0.
omniORB: inputMessage: from giop:tcp:10.162.106.155:1049 257 bytes
omniORB:
4749 4f50 0102 0001 0000 00f5 0000 0002 GIOP............
0000 0000 0000 0002 0000 0006 0000 00d2 ................
0000 0000 0000 0028 4944 4c3a 6f6d 672e .......(IDL:omg.
6f72 672f 5365 6e64 696e 6743 6f6e 7465 org/SendingConte
7874 2f43 6f64 6542 6173 653a 312e 3000 xt/CodeBase:1.0.
0000 0001 0000 0000 0000 0096 0001 0200 ................
0000 000f 3130 2e31 3632 2e31 3036 2e31 ....10.162.106.1
3535 0000 0419 0000 0000 0019 afab cb00 55..............
0000 0002 3582 6689 0000 0008 0000 0002 ....5.f.........
0000 0000 1400 0000 0000 0003 0000 0001 ................
0000 0020 0000 0000 0001 0001 0000 0002 ... ............
0501 0001 0001 0020 0001 0109 0000 0001 ....... ........
0001 0100 0000 0026 0000 0002 0002 0000 .......&........
0000 0003 0000 001a 0000 0000 0000 000f ................
3130 2e31 3632 2e31 3036 2e31 3535 0000 10.162.106.155..
0424 0002 4e45 4f00 0000 0002 0014 0003 .$..NEO.........
01                                      .
omniORB: Creating ref to remote:
key<............................RootPOA.....Nam
eService.....NC0.>
 target id      : IDL:omg.org/CosNaming/NamingContext:1.0
 most derived id:
omniORB: sendChunk: to giop:tcp:10.162.106.155:1049 161 bytes
omniORB:
4749 4f50 0102 0100 9500 0000 0400 0000 GIOP............
0300 0000 0000 cdcd 3c00 0000 afab cb00 ........<.......
0000 0022 0000 03e8 0000 0001 0000 0000 ..."............
0000 0002 0000 0008 526f 6f74 504f 4100 ........RootPOA.
0000 000c 4e61 6d65 5365 7276 6963 6500 ....NameService.
0000 0003 4e43 3014 0800 0000 7265 736f ....NC0.....reso
6c76 6500 0000 0000 0100 0000 2b00 0000 lve.........+...
636d 3976 6446 3968 5a47 3170 626a 7079 cm9vdF9hZG1pbjpy
6232 3930 5832 466b 6257 6c75 3a43 4552 b290X2FkbWlu:CER
4e2d 4a4c 3031 3431 3638 0061 0100 0000 N-JL014168.a....
00                                      .
omniORB: inputMessage: from giop:tcp:10.162.106.155:1049 246 bytes
omniORB:
4749 4f50 0102 0001 0000 00ea 0000 0004 GIOP............
0000 0000 0000 0001 4e45 4f00 0000 0002 ........NEO.....
0014 0000 0000 0028 0000 004e 524d 493a .......(...NRMI:
636f 6d2e 6365 726e 6572 2e72 6164 696f com.cerner.radio
6c6f 6779 2e76 6965 7765 722e 7574 696c logy.viewer.util
2e43 6f6d 6d61 6e64 5365 7276 6963 6549 .CommandServiceI
6e74 6572 6661 6365 3a30 3030 3030 3030 nterface:0000000
3030 3030 3030 3030 3000 0019 0000 0001 000000000.......
0000 0000 0000 006e 0001 0200 0000 000e .......n........
3130 2e31 3834 2e32 3236 2e33 3500 d17d 10.184.226.35..}
0000 0019 afab cb00 0000 0002 36b6 b40b ............6...
0000 0008 0000 0001 0000 0000 1400 0000 ................
0000 0002 0000 0001 0000 0020 0000 0000 ........... ....
0001 0001 0000 0002 0501 0001 0001 0020 ...............
0001 0109 0000 0001 0001 0100 0000 0026 ...............&
0000 0002 0002                          ......
omniORB: Creating ref to remote: key<........6................>
 target id      : IDL:omg.org/CORBA/Object:1.0
 most derived id:
RMI:com.cerner.radiology.viewer.util.CommandServiceInterface:0
000000000000000
omniORB: ObjRef() -- deleted.
omniORB: LocateRequest to remote: key<........6................>
omniORB: Client attempt to connect to giop:tcp:10.184.226.35:53629
omniORB: Client opened connection to giop:tcp:10.184.226.35:53629
omniORB: sendChunk: to giop:tcp:10.184.226.35:53629 49 bytes
omniORB:
4749 4f50 0102 0103 2500 0000 0200 0000 GIOP....%.......
0000 cdcd 1900 0000 afab cb00 0000 0002 ................
36b6 b40b 0000 0008 0000 0001 0000 0000 6...............
14                                      .
omniORB: Scan for idle connections (1242166368,824000000)
omniORB: Scavenger reduce idle count for strand 015D81B8 to 23
omniORB: Scavenger reduce idle count for strand 015D8388 to 23
omniORB: Scan for idle connections done (1242166368,824000000).
omniORB: Scan for idle connections (1242166373,827000000)

-- 
View this message in context: http://www.nabble.com/Client-Hangs-on-Invoke-tp23511602p23511602.html
Sent from the OmniORB - User mailing list archive at Nabble.com.




More information about the omniORB-list mailing list