Re: bugs/problems with Orbacus 4.2.2
Darren Middleman <[email protected]> Fri, 15 Apr 2005 10:51:58 -0230
| Newsgroups | gmane.comp.corba.orbacus |
|---|---|
| Organization | IONA | Making Software Work Together TM |
| Message-ID | <[email protected]> |
Hi Andrey, Please see my comments inlined below: > [...] > > Right, we'have switched the entire company development to JDK 1.5. After > that switching Orbacus won't compile by default, so our build engineer > modified the makefiles according to the installation instructions included > with the patch package. The changes he made are exactly the ones you > mentioned in your answer. This helped and we got Orbacus compiled as well as > all our code. > > Unfortunately during runtime I'm still getting those "method not found" > exceptions and using "-Xbootclasspath" doesn't help. > > Do you have any positive experience of running Orbacus 4.2.2 with JDK1.5? Is > this configuration welcomed by IONA or it would be better to switch back to > 4.2.1 and JDK1.4.2? JDK 1.5 is not officially supported for Orbacus 4.2.2. The only officially supported JDKs for this release are 1.3 and 1.4. That being said, we have been able to successfully build and run Orbacus 4.2.2 using JDK 1.5, as recently as this morning. As I mentioned in my previous email, this is a very common error that occurs in JDK 1.4 and 1.5 when the -Xbootclasspath is not used correctly when running an Orbacus application. Can you send me the command you are using to start your application and the value contained in the CLASSPATH environment variable? There is also an Orbacus demo that should display this same error if the -Xbootclasspath is not enabled. Try running the demo ob/demo/pi (using the provided run script) to see if you are getting the same error. By default, if you are using JDK 1.5, you should see the error. You should then modify the line: if `$echo $java_version | grep '1\.4' > /dev/null` in the run script (around line 54) to the following: if `$echo $java_version | grep '1\.[45]' > /dev/null` This should enable the -Xbootclasspath option if the JDK version contains the string 1.4 or 1.5. Now if you run the demo, the error should go away. > [...] > > It's difficult to provide concrete details, because entire behavior of > eventserv and nameserv seems "strange" in many aspects. In particular: > - sometimes nameserv and eventserv just crash without any visible reason. > What do I mean here is that we saw several situations on our server when > those servers start and even if they experience no load at all (the modules > didn't start yet) they shut down (process just dissapears) I assume that since you are referring to the applications as nameserv and eventserv that these are the C++ executables and not the Java versions of the Name Service and Event Service. Are you able to obtain core files from these crashes? If so, and you built Orbacus with debugging information enabled, you should be able to obtain a call stack trace using a debugger such as gdb. I would be helpful if you could forward these along, as I am unable to duplicate the problems you are seeing on my end. Note that you may need to run 'ulimit -c unlimited' to ensure that core files are generated when your nameserv or eventserv applications crash. > - in some situations eventserv start loosing too many events. Too many means > more then 20% on very low load, like 10 events sent with 1event/sec rate Are you providing any configuration options or policies to the event service? > - if a process that registers with nameserv goes down and then start again > it might improperly be rebinded in nameserv. This happens in approximately > 50% of all module restarts. It stays registered, but when another module > tries to make call to one of methods it provides both crash with non-Corba > exception. Restarting nameserv solves the problem. > > Such situations were not noticed in Orbacus 4.2.1 and JDK1.4.2. What is the exception message that you are seeing? So far I have been unable to duplicate the problem here but I'll keep looking into this. If you are able to obtain a stack trace from this type of crash (as described above) it might also help locate the problem. > Also in a few cases it was noticed exceptions in the code generated by jidl, > for instance: > [java] java.lang.ArrayIndexOutOfBoundsException: -826472736 > [java] at > com.packet411.framework.proxy.P_DiscoveryType.from_int(Unknown Source) > [java] at > com.packet411.framework.proxy.P_DiscoveryTypeHelper.read(Unknown Source) > [java] at > com.packet411.framework.proxy.P_DiscoveryEventHelper.read(Unknown Source) > [java] at > com.packet411.framework.proxy.P_GeminiEventHelper.read(Unknown Source) > [java] at > com.packet411.framework.proxy.P_ED4PPEPOA._OB_op_DispatchGeminiEvent(Unknown > Source) > [java] at com.packet411.framework.proxy.P_ED4PPEPOA._invoke(Unknown > Source) > [java] at > com.ooc.OBPortableServer.ServantDispatcher.dispatch(ServantDispatcher.java:2 > 14) > [java] at > com.ooc.OBPortableServer.POA_impl._OB_dispatch(POA_impl.java:1775) > [java] at > com.ooc.OB.DispatchRequest_impl.invoke(DispatchRequest_impl.java:52) > [java] at > com.ooc.OB.DispatchSameThread_impl.dispatch(DispatchStrategyFactory_impl.jav > a:46) > [java] at com.ooc.OB.Upcall.invoke(Upcall.java:434) > [java] at > com.ooc.OB.ThreadedGIOPConnectionHandler.doReceive(ThreadedGIOPConnectionHan > dler.java:500) > [java] at > com.ooc.OB.GIOPReceiverThread.run(ThreadedGIOPConnectionHandler.java:57) > > Such exceptions also were not noticed in Orbacus 4.2.1 and JDK 1.4.2 > Is this the complete stack trace that occurs with this exception? What code is being executed when this exception occurs? It seems odd that this type of problem should occur from code generated by the IDL compiler. I see that the first few items in the trace contain non-Orbacus code, can you provide the code that is being run in the methods 'from_int()' and 'read()'. I also just want to verify which platform you are running on. I thought I saw an additional email from you which indicated you were using Solaris. Is this correct and which version are you running? Regards, Darren -- Darren Middleman, Software Engineer Team Orbacus - Your CORBA Source Email: mailto:[email protected] WWW: http://www.orbacus.com/ _______________________________________________ OB-Users Mailing List - [email protected] http://mail.ooc.nf.ca/mailman/listinfo/ob-users Visit our support FAQ before you send a message. http://www.orbacus.com/faq/support.html