1

ODBCで再コンパイルされたquickfix1.13.3を使用していますが、アクセプターで奇妙な動作があります(同じODBCデータベースを共有し、ホットフェイルオーバーが有効になっている異なるマシン上の2つのアクセプター)。私の毎日のセッションは次のように設定されています。

RefreshOnLogon=Y
StartTime=00:02:00
EndTime=23:58:00
PersistMessages=Y

および必要なOdbc設定。

23:54に、イニシエーターはMsgSeqNum = 1711でログアウトを送信し、クイックフィックスアクセプターはLogout MsgSeqNum = 1711で応答するため、問題はありません。

00:05:16に、イニシエーターはMsgSeqNum = 2でログオンを送信しますが、クイックフィックスアクセプターはLogout MsgSeqNum=1712で応答します。

00:05:18に、イニシエーターはLogonおよびMsgSeqNumm = 4で再試行し、今回は、クイックフィックスアクセプターがLogon MsgSeqNum=1で応答します。

テーブル「sessions」で、incoming_seqnumとoutgoing_seqnumがODBCによって適切にリセットされなかった可能性があると考えて、00:00に手動でリセットを強制しようとしましたが、無駄に、同じ動作が発生します。

現時点での私の推測では、この構成でのクイックフィックスは、ログオン要求を昨日のセッションと一致させ、その結果、昨日のシーケンス番号でログアウトします。

同じStartTime、、 1EndTimeつのアクセプター(2つではなく)、、FileStoreおよびRefreshOnLogon設定なし(1つのアクセプターしかないため)では、quickfix1.12.4で動作していました。

私も試してみましRefreshOnLogon=Nたが、問題は同じままです...seqnumsは深夜に正しくリセットされません。

何か案は?

どうもありがとう、

4

2 に答える 2

1

さまざまな設定で何度も試行した後、最終的にODBCで再コンパイルされた1.12.4にロールバックしました。同じ設定で、古いライブラリは正しく機能し、seqnumは00:02:00に正しくリセットされます。

RefreshOnLogon=Y
StartTime=00:02:00
EndTime=23:58:00
PersistMessages=Y
于 2010-10-15T12:58:34.060 に答える
-1

構成ファイルにUseLocalTimeが設定されていますか?もしそうなら、QuickFIXが1.12.4の後でそれを壊したことに注意する必要があります。私がこのバグについて述べているように、それを壊したリビジョンは2160でした:http ://sourceforge.net/tracker/?func = detail&aid = 3023908&group_id = 37535&atid = 1126912

于 2010-11-15T02:24:24.793 に答える