From: Antonio C. <ant...@ga...> - 2005-11-23 12:34:23
|
Hello, Fabio. From your event log it looks as though your application does not log = outgoing and incoming messages, which might be quite useful in this = situation.=20 If the acceptor you are connected to detects a sequence mismatch and = sends you a logout message with some descriptive text, you are not able = to see it if you do not log incoming messages. On the contrary, if the acceptor you are connected to does not send any = logout before shutting down the connection, you will not be able to get = any answer. In order to log outgoing and incoming messages, you must derive a class = from the "FIX::Log" one and overload the virtual (pure) function = "virtual void FIX::Log::onIncoming( const std::string& )" and "virtual = void FIX::Log::onOutgoing( const std::string& )", making a print of the = argument content in your implementation. As a matter of fact I suspect that the problem might be in the acceptor, = which is not sending any message before closing down the session. This is what the FIX 4.2 protocol specification suggests in case of = authenticatio problems: "Sending a Logout in this case is not required = because doing so would consume a sequence number for that session, which = in some cases may be problematic.>> On the contrary, when the sequence number is too low, the FIX 4.2 = protocol specification reads as follows: "A Logout message with some = descriptive text should be sent to the other side before closing the = session." Maybe the word "should" instead of "must" can lead to several = interpretations (and implementations !!!). Yours sincerely,=20 Antonio Caroselli GATE T.I. www.gatelab.com Tel. +39 0865 451890 ----- Original Message -----=20 From: GRIGLIO FABIO=20 To: qui...@li...=20 Sent: Monday, November 21, 2005 3:45 PM Subject: [Quickfix-users] Connection resetted during Logon Hi all, i've implemented a Fix engine initiator in .NET.=20 =20 Sometimes,when I try to connect to an acceptor and I've an erroneous = sequence(for ex : too high sequence), the connection is simply resetted = bythe acceptor without loggin any answer. =20 Is there any implementation/configuration that I could made in my = initiator to catch this event ?=20 =20 here there's my event log =20 =20 20051121-14:21:04 : 21/11/2005 15:21:04 Session Created FIX.4.2:EXAMP 20051121-14:21:04 : Created session 20051121-14:21:04 : session resetted 20051121-14:21:04 : initiator started 20051121-14:21:04 : Connecting to MYSERVER on port 123456 20051121-14:21:04 : Connection succeeded 20051121-14:21:04 : Initiated logon request 20051121-14:21:04 : Socket Error: Connection reset by peer. 20051121-14:21:04 : Disconnecting =20 =20 thanks and regards Fabio =20 Questo documento e gli eventuali allegati sono indirizzati unicamente = al destinatario, a cui la lettura e l'utilizzo delle informazioni = contenute sono esclusivamente riservati. Nel caso di utilizzo non = autorizzato, Banca Sella potra' dar corso alle azioni piu' opportune per = il risarcimento dei danni subiti anche da terzi. Nell'ipotesi che la = e-mail non fosse indirizzata a Voi o il contenuto lasci intendere che = possano esservi stati errori o manipolazioni nella trasmissione, = vogliate cortesemente contattare i seguenti indirizzi di posta = elettronica: in...@se...; re...@se...=20 This e-mail is directed uniquely to the interested party, which is the = exclusive addressee of any information contained herein. For any abuse = about the content of this message, Banca Sella will claim compensation = for damages occurred to third parties as well. In case the e-mail should = be addressed to other than you, or the content should reveal any = transmission errors or manipulations, please contact us at the following = address: in...@se...; re...@se... |