Re: [Quickfix-developers] SocketInitiator under Java
Brought to you by:
orenmnero
From: David M. <Dav...@mo...> - 2003-04-01 09:01:59
|
Hi Thanks for the replies. Yes, quickfix passes the acceptance test (but not in the multithreaded version!!!). I am getting further on the problem as I now can replicate it easily with a little sample JNI app (nothing to do with quickfix). That is a bit reassuring. As Oren points out, I was using gcc2.95.3 but on linux Redhat 7.3 (which uses gcc 2.96 for everything). I found this problem discussed extensively on the gnu gcc bug list. I am now building gcc 3.2 and will keep you all posted. Thanks for the help David Gene Gorokhovsky wrote: > David, does quickfix pass its own acceptance tests > (build and run in quickfix/test)? > I have found that on Linux there could be subtle > misconfiguartions of the build tools, compiler and > libraries which results in the symptoms similar to > what you describe. > Passing all of the acceptance tests was a good > indication that I found a stable configuration. As a > ray of hope, my company has beedn devloping on > quickfix in both C++ and Java API's on Linux for the > past half a year or so and found it to be generally > stable. > > Gene > > --- David Monheit <Dav...@mo...> > wrote: > > Hi All, > > > > Finally made some progress... I got a server > > program, ie, acceptor > > based appliation, runnig... As I mentioned on my > > last mail, only got it > > to send messages by using sendToTarget(Message, > > SessionID). > > > > When I started working on the client app, initiator > > based application, > > all hell broke loose :-) Basically, it turns out > > that NO application > > works, as it simply aborts (on my home linux box, > > without a core. In the > > office, thankfully, it does core, see listing > > below). Banzai also does > > not work (I see the gui pop up briefly and then it > > dies). > > > > After several hours yesterday, I was able to show > > that if the quickfix > > library throws ANY exception, the app dies. > > Basically this happened > > when I did not set the ReconnectInterval in the > > config file. The docs > > say that this field is defaulted to 30 (and I see > > this from the > > constructors which do set this to 30). The > > onInitialize tries to get > > this value from the dictionary and if it does get > > it, it overrides the > > 30 default. If it does not find it, it catches the > > exception and > > continues!!! THIS CAUSES THE APP TO DIE. Seems > > that someone does not > > like any exceptions thrown even if they are caught. > > > > To prove this, I commented the line out and the code > > then cored > > elsewhere (on getHost() where the code tries to get > > the host with a > > number attached (ie SocketConnectionHost0 ). If it > > does not find it, it > > uses the standard on, ie, SocketConnectionHost ... > > But again, the fact > > that an exception was thrown, blows the program... > > > > Here is the listing of the stack when > > ReconnectInterval is not set... > > > > #0 0x40076b41 in __kill () at __kill:-1 > > -1 __kill: No such file or directory. > > in __kill > > (gdb) where > > #0 0x40076b41 in __kill () at __kill:-1 > > #1 0x4003879b in raise (sig=6) at signals.c:65 > > #2 0x400780c2 in abort () at > > ../sysdeps/generic/abort.c:88 > > #3 0x4035c0a2 in os::abort () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #4 0x403590ac in os::handle_unexpected_exception () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #5 0x4035cb2a in JVM_handle_linux_signal () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #6 0x4035b844 in signalHandler () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #7 0x40038b53 in pthread_sighandler_rt (signo=11, > > si=0xbfe0dc90, > > uc=0xbfe0dd10) at signals.c:121 > > #8 <signal handler called> > > #9 0x4060cd3a in __cplus_type_matcher > > (info=0x8297ef0, > > match_info=0x4c939f54 <FIX::ConfigError > > type_info function>, > > exception_table=0x0) > > from /usr/lib/libstdc++-libc6.1-1.so.2 > > #10 0x4cb6a3bc in __eh_rtime_match > > (rtime=0x4c939f54) > > from > > > /u/cwscs1_OR/monheit/projects/STLport-4.5.3/lib/libstlport_gcc.so > > #11 0x4c9050be in FIX::SocketInitiator::getHost () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #12 0x4c9046f8 in FIX::SocketInitiator::doConnect () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #13 0x4c902428 in FIX::Initiator::connect () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #14 0x4c904653 in FIX::SocketInitiator::onStart () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #15 0x4c9026b6 in FIX::Initiator::start () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #16 0x4c8efb0d in > > Java_org_quickfix_SocketInitiator_doStart () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #17 0x4207412d in ?? () > > #18 0x4206cf93 in ?? () > > #19 0x4206d299 in ?? () > > #20 0x4206cf93 in ?? () > > #21 0x4206a195 in ?? () > > #22 0x402c04f6 in JavaCalls::call_helper () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #23 0x4035b44d in os::os_exception_wrapper () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #24 0x402c0644 in JavaCalls::call () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #25 0x402c85cd in jni_invoke () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #26 0x402d7bcd in jni_CallStaticVoidMethod () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #27 0x08049372 in strcpy () at strcpy:-1 > > #28 0x40064687 in __libc_start_main (main=0x8048c60 > > <strcpy+200>, > > argc=5, ubp_av=0xbffeb054, > > init=0x80488e8, fini=0x804ba0c <strcpy+11892>, > > rtld_fini=0x4000dcd4 > > <_dl_fini>, stack_end=0xbffeb04c) > > > > Here is the listing if I do set ReconnectInterval > > ... > > > > #0 0x40076b41 in __kill () at __kill:-1 > > #1 0x4003879b in raise (sig=6) at signals.c:65 > > #2 0x400780c2 in abort () at > > ../sysdeps/generic/abort.c:88 > > #3 0x4035c0a2 in os::abort () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #4 0x403590ac in os::handle_unexpected_exception () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #5 0x4035cb2a in JVM_handle_linux_signal () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #6 0x4035b844 in signalHandler () > > from > > > /ms/dist/msjava/PROJ/sunjdk/1.4.0_01/.exec/@sys/jre/lib/i386/client/libjvm.so > > > > #7 0x40038b53 in pthread_sighandler_rt (signo=11, > > si=0xbfe0dc90, > > uc=0xbfe0dd10) at signals.c:121 > > #8 <signal handler called> > > #9 0x4060cd3a in __cplus_type_matcher > > (info=0x82917a0, > > match_info=0x4060d2c4 <exception type_info > > function>, > > exception_table=0x0) > > from /usr/lib/libstdc++-libc6.1-1.so.2 > > #10 0x4cb6a3bc in __eh_rtime_match > > (rtime=0x4060d2c4) > > from > > > /u/cwscs1_OR/monheit/projects/STLport-4.5.3/lib/libstlport_gcc.so > > #11 0x4c904581 in FIX::SocketInitiator::onInitialize > > () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #12 0x4c9025d2 in FIX::Initiator::start () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #13 0x4c8efb0d in > > Java_org_quickfix_SocketInitiator_doStart () > > from > > > /a/cwscs1/d/OR/monheit/projects/quickfix/src/java/.libs/libquickfix_jni.so.1.0.0 > > > > #14 0x4207412d in ?? () > > #15 0x4206cf93 in ?? () > > #16 0x4206d299 in ?? () > > > === message truncated === > > __________________________________________________ > Do you Yahoo!? > Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! > http://platinum.yahoo.com > > ------------------------------------------------------- > This SF.net email is sponsored by: ValueWeb: > Dedicated Hosting for just $79/mo with 500 GB of bandwidth! > No other company gives more support or power for your dedicated server > http://click.atdmt.com/AFF/go/sdnxxaff00300020aff/direct/01/ > _______________________________________________ > Quickfix-developers mailing list > Qui...@li... > https://lists.sourceforge.net/lists/listinfo/quickfix-developers -- NOTICE: If received in error, please destroy and notify sender. Sender does not waive confidentiality or privilege, and use is prohibited. |