{{Quickfixn}} Force close quickfixn

Grant Birchmeier gbirchmeier at connamara.com
Tue Sep 11 07:56:59 PDT 2012


I've been working on the backlog of issues.  I pushed a couple yesterday.
 I hope to review all PRs in the next week or two.

Thanks for your patience

-Grant


On Tue, Sep 11, 2012 at 6:00 AM, Christian Jungers <
christian.jungers at cm3.com> wrote:

> My change has been put on my fork and a pull request was sent in. I wasn't
> sure how best to unit test for this (and didn't have the time yesterday to
> think it through) ... but hopefully that will help anyone interested.
> (Jungers42)
> *
> *
> *
> *
> *
> *
> *Christian.Jungers at CM3.com - Chief Technology Officer** - Tel
> 877.263.1669 x705 - Fax 877.263.1669*
>
>
>
> On Tue, Sep 11, 2012 at 2:27 AM, Ruaan Viljoen <ruaanv at estuarys.co.za>wrote:
>
>> I would also be very interested in this, as I think there have been a lot
>> of community workarounds to get that initiator thread to shutdown properly.
>> Rather than going around and doing another unpublished workaround, we
>>
>> could work towards a long overdue fix at the core of the problem?
>>
>>
>>
>> -Ruaan
>>
>>
>>
>> *From:* quickfixn-bounces at lists.quickfixn.com [mailto:
>> quickfixn-bounces at lists.quickfixn.com] *On Behalf Of *Grant Birchmeier
>> *Sent:* 10 September 2012 06:08 PM
>>
>> *To:* Mailing list for QuickFIX/n
>> *Subject:* Re: {{Quickfixn}} Force close quickfixn
>>
>>
>>
>> I think it should probably be built into the stop method as well.
>>
>>
>>
>> I would love to see the code for your Dispose method.
>>
>>
>>
>>
>>
>> On Mon, Sep 10, 2012 at 11:02 AM, <Christian.Jungers at sungard.com> wrote:
>>
>> I haven’t gone digging into the history of conversations about Stop(…) …
>> but I do have something to add.
>>
>>
>>
>> Recently, for our FIX service based on QuickFixN, we were working on the
>> ability to remotely control the service to spin up and spin down on-demand.
>> What we found was that it was simple enough to do, but we could not get a
>> new initiator from QuickFixN when it spun back up. The reason was because
>> the old thread was holding onto handles to files that weren’t being
>> properly disposed of.
>>
>>
>>
>> So I push IDisposable around a bit in the code. Rather than build that
>> into the Stop method (which I feel is the natural place for it / intent of
>> it), I built an additional method called Dispose which does the work. That
>> way you can choose if you want to actually properly dispose of things or
>> not. I’m happy to share the changes and then perhaps others with more
>> history on the project could consider how best to make sure the system
>> properly disposes of handles and threads and such?
>>
>>
>>
>>                                 - Christian
>>
>>
>>
>>
>>
>> *From:* quickfixn-bounces at lists.quickfixn.com [mailto:
>> quickfixn-bounces at lists.quickfixn.com] *On Behalf Of *Ruaan Viljoen
>> *Sent:* Monday, September 10, 2012 10:52 AM
>>
>>
>> *To:* Mailing list for QuickFIX/n
>> *Subject:* Re: {{Quickfixn}} Force close quickfixn
>>
>>
>>
>> I have been poking around in the Quickfix source to try and see what the
>> issue is with the initiator.Stop(true) not actually logging out or ending
>> the thread.
>>
>> I found something that I don’t quite understand:
>>
>>
>>
>> In AbstractInitiator.cs
>>
>>
>>
>> public void Stop(bool force)
>>
>> {
>>
>>>>
>> isStopped_ = true;
>>
>>                 OnStop();
>>
>>                 thread_.Join(5000);
>>
>>                 thread_ = null;
>>
>>
>>
>>                 foreach (Session session in enabledSessions)
>>
>>                                 session.Logon();
>>
>> }
>>
>>
>>
>> What is this ‘session.Logon();’ doing in here?
>>
>>
>>
>> Also regarding the issue that sessions are not logging out on Stop(true):
>>
>>                 public void Logout()
>>
>>                 {
>>
>>                                                 Logout("");
>>
>>                 }
>>
>>
>>
>>                 public void Logout(string reason)
>>
>>                 {
>>
>>                                                 state_.IsEnabled = false;
>>
>>                                                 state_.LogoutReason =
>> reason;
>>
>>                 }
>>
>> I don’t quite see where the actual logout is being sent. Could this be
>> one of the issues. I realize this might be asking you guys to get more
>> involved that you have time for right now, but perhaps someone else can
>> help shed some light.
>>
>>
>>
>> Thanks
>>
>> Ruaan
>>
>> *From:* quickfixn-bounces at lists.quickfixn.com
>> [mailto:quickfixn-bounces at lists.quickfixn.com] *On Behalf Of *Grant
>> Birchmeier
>> *Sent:* 07 September 2012 04:14 PM
>> *To:* Mailing list for QuickFIX/n
>> *Subject:* Re: {{Quickfixn}} Force close quickfixn
>>
>>
>>
>> This is open issue 45.  (48 is also related.)
>>
>> https://github.com/connamara/quickfixn/issues
>>
>>
>>
>>
>>
>> On Fri, Sep 7, 2012 at 2:49 AM, Ruaan Viljoen <ruaanv at estuarys.co.za>
>> wrote:
>>
>> Hi,
>>
>>
>>
>> I remember some issue with the initiator.stop(true) a while ago, has
>> these issues been resolved?
>>
>>
>>
>> I am calling intitiator.stop(true), but the thread is still staying alive
>> it seems, and needs to be closed by end-tasking it. I am going to download
>> the full quickfix/n from the repo now and see what exactly is causing this.
>>
>>
>>
>> However I thought I would ask, maybe someone has a simple explanation?
>>
>>
>>
>> Groete
>>
>> Regards
>>
>>
>>
>> *Ruaan Viljoen*
>>
>>
>> _______________________________________________
>> Quickfixn mailing list
>> Quickfixn at lists.quickfixn.com
>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>
>>
>>
>>
>> --
>>
>> Grant Birchmeier
>>
>> *Connamara Systems, LLC*
>>
>> *Made-To-Measure Trading Solutions.*
>>
>> Exactly what you need. No more. No less.
>>
>> http://connamara.com
>>
>>
>>
>>
>> _______________________________________________
>> Quickfixn mailing list
>> Quickfixn at lists.quickfixn.com
>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>
>>
>>
>>
>> --
>>
>> Grant Birchmeier
>>
>> *Connamara Systems, LLC*
>>
>> *Made-To-Measure Trading Solutions.*
>>
>> Exactly what you need. No more. No less.
>>
>> http://connamara.com
>>
>>
>>
>> _______________________________________________
>> Quickfixn mailing list
>> Quickfixn at lists.quickfixn.com
>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>
>>
>
> _______________________________________________
> Quickfixn mailing list
> Quickfixn at lists.quickfixn.com
> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>
>


-- 
Grant Birchmeier
*Connamara Systems, LLC*
*Made-To-Measure Trading Solutions.*
Exactly what you need. No more. No less.*
*
http://connamara.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20120911/31619f9c/attachment-0002.htm>


More information about the Quickfixn mailing list