|
From: Nayak, S. \(IT\) <San...@mo...> - 2006-07-19 14:12:01
|
Hi Edde I was facing similar problem while running the example applications, Banjai and Executor respectively. This seems to be because of mismatch in sequence numbers between the two communicating applications .In quickfix/output/data has two folders client and server for the respective applications which store the session state information .The file "Fix.*.seqnums" contain the last exchanged sequence numbers between the applications. A possible hack which worked for me was delete the contents of client and server folders and restart the application .=20 An appropriate solution seems to be is to set "ResetOnLogout", "ResetOnDisconnect","SendResetSeqNumFlag"(http://www.quickfixj.org/quick fixj/usermanual/usage/configuration.html) in the application's .cfg file for both the communicating applications.=20 I am not sure about your scenario but this worked for me.Maybee anybody else can confirm this. Regards Sankalp =20 -----Original Message----- From: qui...@li... [mailto:qui...@li...] On Behalf Of Edde Sent: Wednesday, July 19, 2006 5:09 AM To: qui...@li...; edd...@gm... Subject: [Quickfixj-users] ClassCastException in MessageCracker QuickFIX/J Documentation: http://www.quickfixj.org/documentation/ QuickFIX/J Support: http://www.quickfixj.org/support/ Hi Guys, I've been using QuickFIX/J for a couple of weeks now and for the most part I'm very happy with the result. Thanks to Steve and the rest for finally making QuickFIX a pure Java application! However, yesterday when I had to restart our application I had some issues when QuickFIX didn't respond correctly to a ResendRequest from our counterparty. Normally this is what happens when I have to restart during the day: XXX =3D Me YYY =3D Counterparty 8=3DFIX.4.2=019=3D53=0135=3DA=0134=3D7200=0149=3DXXX=0152=3D20060718-08:0= 7:30.231=0156=3DYYY=0110=3D10 8=01 8=3DFIX.4.2=019=3D66=0135=3DA=0134=3D7201=0149=3DXXX=0152=3D20060718-08:0= 7:30.261=0156=3DYYY=0198=3D0=01 108=3D180=0110=3D195=01 8=3DFIX.4.2=019=3D66=0135=3DA=0134=3D14225=0149=3DYYY=0152=3D20060718-08:= 07:29.596=0156=3DXXX=0198=3D0 =01108=3D30=0110=3D212=01 8=3DFIX.4.2=019=3D62=0135=3D2=0134=3D7202=0149=3DXXX=0152=3D20060718-08:0= 7:32.134=0156=3DYYY=017=3D1=011 6=3D0=0110=3D222=01 8=3DFIX.4.2=019=3D75=0135=3D1=0134=3D7203=0149=3DXXX=0152=3D20060718-08:0= 7:32.134=0156=3DYYY=01112=3DR esendHasFinished=0110=3D224=01 ResendRequest from YYY: 8=3DFIX.4.2=019=3D66=0135=3D2=0134=3D14226=0149=3DYYY=0152=3D20060718-08:= 07:29.600=0156=3DXXX=017=3D71 50=0116=3D0=0110=3D182=01 Correct respons from QuickFIX/J: 8=3DFIX.4.2=019=3D94=0135=3D4=0134=3D7150=0143=3DY=0149=3DXXX=0152=3D2006= 0718-08:07:32.184=0156=3DYYY=01 122=3D20060718-08:07:32=0136=3D7204=01123=3DY=0110=3D080=01 8=3DFIX.4.2=019=3D75=0135=3D1=0134=3D7204=0149=3DXXX=0152=3D20060718-08:0= 7:38.143=0156=3DYYY=01112=3DT est OS, 10:07:38=0110=3D149=01 8=3DFIX.4.2=019=3D75=0135=3D1=0134=3D7205=0149=3DXXX=0152=3D20060718-08:0= 7:41.147=0156=3DYYY=01112=3DT est OS, 10:07:41=0110=3D142=01 Yesterday's scenario: 8=3DFIX.4.2=019=3D67=0135=3DA=0134=3D30499=0149=3DXXX=0152=3D20060718-11:= 29:33.504=0156=3DYYY=0198=3D0 =01108=3D180=0110=3D004=01 8=3DFIX.4.2=019=3D67=0135=3DA=0134=3D61254=0149=3DYYY=0152=3D20060718-11:= 29:34.083=0156=3DXXX=0198=3D0 =01108=3D180=0110=3D000=01 8=3DFIX.4.2=019=3D63=0135=3D2=0134=3D30500=0149=3DXXX=0152=3D20060718-11:= 29:36.728=0156=3DYYY=017=3D1=01 16=3D0=0110=3D023=01 8=3DFIX.4.2=019=3D76=0135=3D1=0134=3D30501=0149=3DXXX=0152=3D20060718-11:= 29:36.738=0156=3DYYY=01112=3D ResendHasFinished=0110=3D026=01 ResendRequest from YYY: 8=3DFIX.4.2=019=3D67=0135=3D2=0134=3D61255=0149=3DYYY=0152=3D20060718-11:= 29:34.087=0156=3DXXX=017=3D30 498=0116=3D0=0110=3D249=01 The correct Sequence Reset message is missing from QuickFIX/J... 8=3DFIX.4.2=019=3D76=0135=3D1=0134=3D30502=0149=3DXXX=0152=3D20060718-11:= 29:42.757=0156=3DYYY=01112=3D Test OS, 13:29:42=0110=3D201=01 8=3DFIX.4.2=019=3D76=0135=3D1=0134=3D30503=0149=3DXXX=0152=3D20060718-11:= 29:45.761=0156=3DYYY=01112=3D Test OS, 13:29:45=0110=3D203=01 When checking the Event log I found the following: 20060718-11:29:31.220: Session FIX.4.2:XXX->YYY schedule is daily, 00:00:00 UTC - 00:00:00 UTC 20060718-11:29:31.241: Created session: FIX.4.2:XXX->YYY 20060718-11:29:33.554: Initiated logon request 20060718-11:29:36.728: Received logon response 20060718-11:29:36.728: MsgSeqNum too high, expecting 1 but received 61254 20060718-11:29:36.738: Sent ResendRequest FROM: 1 TO: 0 20060718-11:29:36.788: Received ResendRequest FROM: 30498 TO: 0 20060718-11:29:36.819: Error during message processing java.lang.ClassCastException: quickfix.Message at quickfix.MessageCracker.crack(MessageCracker.java:48) at trader.quickfix.QuickFIXApplication.toApp(QuickFIXApplication.java:373) at quickfix.Session.resend(Session.java:757) at quickfix.Session.nextResendRequest(Session.java:698) at quickfix.Session.next(Session.java:585) at quickfix.mina.ThreadPerSessionEventHandlingStrategy$MessageDispatchingTh read.run(ThreadPerSessionEventHandlingStrategy.java:75) I'm sure that this ClassCastException is the problem but I have no idea what might be the cause. Anyone experienced the same thing? I'll check if I can recreate the problem and add some debug code to check what object type is passed when problem occurs. Thanks, /Eddie ------------------------------------------------------------------------ - Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys -- and earn cash http://www.techsay.com/default.php?page=3Djoin.php&p=3Dsourceforge&CID=3D= DEVDE V _______________________________________________ Quickfixj-users mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfixj-users -------------------------------------------------------- NOTICE: If received in error, please destroy and notify sender. Sender = does not waive confidentiality or privilege, and use is prohibited. |