Re: [Quickfix-developers] Racing Condition?
Brought to you by:
orenmnero
From: Hei C. <str...@ya...> - 2011-09-26 20:57:44
|
Correction: the sequence # actually went up to 180 and then I saw my test request with the sequence # 1 followed by a logon message with sequence # 2. I think what happened is: - I sent 180 test requests while I wasn't logged on yet because the time had reached StartTime=21:59:59 on Sunday yet. - Then, when it became 21:59:59 on Sunday, Session::next( const UtcTimeStamp& timeStamp ) was called, which calls if ( !checkSessionTime(timeStamp) ) { reset(); return; } - As soon as the sequence numbers were reset, my code tried to send a test request, increasing the next sequence # to 2 (in Session::sendRaw()). - Then, QuickFIX tried to send a logon message that was assigned with sequence #2. I am not sure whether there is a perfect solution but I think Session::sendRaw() shouldn't try to increase the sequence # if it doesn't even attempt to call Session::send(). Any input is welcome. Cheers, Hei ________________________________ From: Hei Chan <str...@ya...> To: "qui...@li..." <qui...@li...> Sent: Sunday, September 25, 2011 4:22 PM Subject: [Quickfix-developers] Racing Condition? QuickFIX Documentation: http://www.quickfixengine.org/quickfix/doc/html/index.html QuickFIX Support: http://www.quickfixengine.org/services.html Hi, I am using the latest QuickFIX C++ and have several ThreadedSocketInitiators in 1 process. I have the following setup: StartTime=21:59:59 EndTime=22:00:01 StartDay=Sunday EndDay=Friday RefreshOnLogon=N ResetOnLogout=N ResetOnDisconnect=N I notice that if I start my process at 21:45:00 and start calling FIX::sendToTarget() every 5 sec (21:59:59-22:45:00/5 sec=179.x messages). Some FIX sessions will logon with a sequence # of 180 at 21:59:59, some with 180 and reset to 1 correctly. Does anyone know what's going on? Is there a specific unit test for that? If yes, please let me know how to run it. Thanks in advance. Cheers, Hei ------------------------------------------------------------------------------ All of the data generated in your IT infrastructure is seriously valuable. Why? It contains a definitive record of application performance, security threats, fraudulent activity, and more. Splunk takes this data and makes sense of it. IT sense. And common sense. http://p.sf.net/sfu/splunk-d2dcopy2 _______________________________________________ Quickfix-developers mailing list Qui...@li... https://lists.sourceforge.net/lists/listinfo/quickfix-developers |