{{Quickfixn}} Exception while processing the FIX messages

Veduruparthi Raju rveduruparthi at gmail.com
Tue Jul 14 06:22:24 PDT 2020


Campbell/Grant,

A quick update.. the fix did work and we are now able to process the fix
messages with NO issues.

Thanks again.

Thanks,
--Raju.v

On Mon, Jul 13, 2020 at 1:01 PM Veduruparthi Raju <rveduruparthi at gmail.com>
wrote:

> Thanks Grant.
> Will download and see how it goes. will update you.
>
> Thanks,
> --Raju.v
>
> On Mon, Jul 13, 2020 at 12:18 PM Grant Birchmeier <
> gbirchmeier at connamara.com> wrote:
>
>> The fix is in, see https://github.com/connamara/quickfixn/pull/632
>>
>> Raju, please give it a shot.  I think if you download and build the
>> latest source, your problem will go away.  (The version-specific dlls are
>> in Messages/FIX*).
>>
>> Campbell, thanks for catching my diagnosis mistake.  I would have been
>> mad at myself later!
>>
>> On Mon, Jul 13, 2020 at 10:22 AM Grant Birchmeier <
>> gbirchmeier at connamara.com> wrote:
>>
>>> It's built as 64.
>>>
>>> I'm putting in a fix.  When it's done, you can build the latest source.
>>> (Don't need to generate code or anything, just download a build.)
>>>
>>> I should merge the fix within the hour unless I run into trouble.
>>>
>>> On Mon, Jul 13, 2020 at 10:15 AM Veduruparthi Raju <
>>> rveduruparthi at gmail.com> wrote:
>>>
>>>> Thanks Campbell and Grant for your inputs.
>>>> Just to add that. It was intermittent issue in the beginning but now
>>>> the issue is serious as we were not able to process the trades at one go.
>>>>
>>>> Our product is a 64 bit application.
>>>> Is QuickFix.dll a 64 bit or a 32 bit ?
>>>>
>>>> Will there be any fix for this ? so i can download the updated dll ?
>>>>
>>>> Thanks,
>>>> --Raju.v
>>>>
>>>> On Mon, Jul 13, 2020 at 9:38 AM Grant Birchmeier <
>>>> gbirchmeier at connamara.com> wrote:
>>>>
>>>>> Ohhhhhh..... my god.
>>>>>
>>>>> Campbell, I think you are right.  Looking again at Raju's stacktrace,
>>>>> and it does originate in QF/n.  I was hasty.
>>>>>
>>>>> Here's the code in question:
>>>>>             var factoryTypes = assemblies
>>>>>                 .SelectMany(assembly => assembly.GetExportedTypes())
>>>>>                 .Where(IsMessageFactory)
>>>>>                 .ToList();
>>>>>
>>>>> Where assemblies is defined (and where I've added a potential fix):
>>>>>             var assemblies = AppDomain
>>>>>                 .CurrentDomain
>>>>>                 .GetAssemblies()
>>>>>                 .Where(assembly => !assembly.IsDynamic)
>>>>>                 *.Where(assembly =>
>>>>> assembly.GetName().Name.StartsWith("QuickFIXn"))  // FIX?*
>>>>>                 .ToList()
>>>>>
>>>>> I think that bold part might fix the issue.  What do you think,
>>>>> Campbell?
>>>>>
>>>>>
>>>>>
>>>>> On Mon, Jul 13, 2020 at 9:04 AM Campbell Wild <
>>>>> Campbell.Wild at ihsmarkit.com> wrote:
>>>>>
>>>>>> We had a very similar issue to this.
>>>>>>
>>>>>> The problem is that the QuickFIX/n library now dynamically scans all
>>>>>> the static DLLs in the product to see which ones expose a return
>>>>>> type of DefaultMessageFactory.  This seems pretty bad form to me, as it
>>>>>> causes all libraries to load, and throws errors at the point where
>>>>>> QuickFIX/n loads the default message factory instead of where that library
>>>>>> is actually required.
>>>>>>
>>>>>> In our case, we were developing in 32-bit, and we had a DLL that
>>>>>> accessed a third-party 64 bit DLL, and so I couldn't start up QuickFIX
>>>>>> until I developed in 64 bit mode.
>>>>>>
>>>>>> My view is that GetMessageFactories should only be scanning the
>>>>>> QuickFIX DLLs, and *NOT* all DLLs in the product, to see which ones return
>>>>>> the DefaultMessageFactory type.
>>>>>>
>>>>>> Campbell
>>>>>> ------------------------------
>>>>>> *From:* Quickfixn <quickfixn-bounces at lists.quickfixn.com> on behalf
>>>>>> of Grant Birchmeier <gbirchmeier at connamara.com>
>>>>>> *Sent:* 13 July 2020 14:25
>>>>>> *To:* Mailing list for QuickFIX/n <quickfixn at lists.quickfixn.com>
>>>>>> *Subject:* Re: {{Quickfixn}} Exception while processing the FIX
>>>>>> messages
>>>>>>
>>>>>>
>>>>>>
>>>>>> *[CAUTION] EXTERNAL EMAIL .. *
>>>>>> This has nothing to do with QF/n.  Your app can't find the
>>>>>> "WeifenLuo.WinFormsUI.Docking" library.
>>>>>>
>>>>>> On Thu, Jul 9, 2020 at 1:35 PM Veduruparthi Raju <
>>>>>> rveduruparthi at gmail.com> wrote:
>>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I am using the QuickFix version 1.9 and using the below dll's in my
>>>>>> project connecting to different exchanges one supporting the FIX44 and the
>>>>>> other FIX50SP2.
>>>>>> I am seeing the following exception while processing the messages.
>>>>>> Does that assembly have anything to do with the quickfix engine I am
>>>>>> using ?
>>>>>> BTW i am using the .NET Framework 4.7.
>>>>>> Appreciate any insight into this.
>>>>>>
>>>>>> QuickFix.dll
>>>>>> QuickFix.FIX50SP2.dll
>>>>>> QuickFix.FIX44.dll
>>>>>>
>>>>>> *Exception:*
>>>>>>
>>>>>> System.IO.FileNotFoundException: Could not load file or assembly
>>>>>> 'WeifenLuo.WinFormsUI.Docking, Version=3.0.4.0, Culture=neutral,
>>>>>> PublicKeyToken=5cded1a1a0a7b481' or one of its dependencies. The system
>>>>>> cannot find the file specified.
>>>>>>
>>>>>> File name: 'WeifenLuo.WinFormsUI.Docking, Version=3.0.4.0,
>>>>>> Culture=neutral, PublicKeyToken=5cded1a1a0a7b481'
>>>>>>
>>>>>>    at
>>>>>> System.Reflection.RuntimeAssembly.GetExportedTypes(RuntimeAssembly
>>>>>> assembly, ObjectHandleOnStack retTypes)
>>>>>>
>>>>>>    at System.Reflection.RuntimeAssembly.GetExportedTypes()
>>>>>>
>>>>>>    at System.Linq.Enumerable.<SelectManyIterator>d__17`2.MoveNext()
>>>>>>
>>>>>>    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
>>>>>>
>>>>>>    at System.Collections.Generic.List`1..ctor(IEnumerable`1
>>>>>> collection)
>>>>>>
>>>>>>    at System.Linq.Enumerable.ToList[TSource](IEnumerable`1 source)
>>>>>>
>>>>>>    at
>>>>>> QuickFix.DefaultMessageFactory.GetMessageFactories(IEnumerable`1 assemblies)
>>>>>>
>>>>>>    at QuickFix.DefaultMessageFactory..ctor(String defaultApplVerId)
>>>>>>
>>>>>> Thanks,
>>>>>> --Raju.v
>>>>>> _______________________________________________
>>>>>> Quickfixn mailing list
>>>>>> Quickfixn at lists.quickfixn.com
>>>>>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>>>>> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.quickfixn.com%2Flistinfo.cgi%2Fquickfixn-quickfixn.com&data=02%7C01%7CCampbell.Wild%40ihsmarkit.com%7Cfdf77e34ecb14fcaf28508d82730331c%7Cc1156c2fa3bb4fc4ac073eab96da8d10%7C0%7C0%7C637302435254977115&sdata=mBvhlBIgbuKa4TPa%2FrjD9Mu9d%2Fx4CgoH3y8OfczCjEQ%3D&reserved=0>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> Grant Birchmeier
>>>>>> *Connamara Systems, LLC*
>>>>>> *Made-To-Measure Trading Solutions.*
>>>>>> Exactly what you need. No more. No less.
>>>>>> http://connamara.com
>>>>>> <https://nam04.safelinks.protection.outlook.com/?url=http%3A%2F%2Fconnamara.com%2F&data=02%7C01%7CCampbell.Wild%40ihsmarkit.com%7Cfdf77e34ecb14fcaf28508d82730331c%7Cc1156c2fa3bb4fc4ac073eab96da8d10%7C0%7C0%7C637302435254987114&sdata=FGgGbhmLHHk0BbxgXkB8XqWZYTOAADgFjP4flJFyPr0%3D&reserved=0>
>>>>>>
>>>>>> This email, along with any attachments, is confidential. If you
>>>>>> believe you received this message in error, please contact the sender
>>>>>> immediately and delete all copies of the message. Thank you from Connamara
>>>>>> Systems, LLC.
>>>>>>
>>>>>> ------------------------------
>>>>>>
>>>>>> This e-mail, including accompanying communications and attachments,
>>>>>> is strictly confidential and only for the intended recipient. Any
>>>>>> retention, use or disclosure not expressly authorised by IHSMarkit is
>>>>>> prohibited. This email is subject to all waivers and other terms at the
>>>>>> following link: https://ihsmarkit.com/Legal/EmailDisclaimer.html
>>>>>>
>>>>>> Please visit www.ihsmarkit.com/about/contact-us.html for contact
>>>>>> information on our offices worldwide.
>>>>>> _______________________________________________
>>>>>> 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
>>>>>
>>>>> This email, along with any attachments, is confidential. If you
>>>>> believe you received this message in error, please contact the sender
>>>>> immediately and delete all copies of the message. Thank you from Connamara
>>>>> Systems, LLC._______________________________________________
>>>>> Quickfixn mailing list
>>>>> Quickfixn at lists.quickfixn.com
>>>>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>>>>
>>>>
>>>>
>>>> --
>>>> Thanks,
>>>> --Raju.v
>>>> _______________________________________________
>>>> 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
>>>
>>
>>
>> --
>> Grant Birchmeier
>> *Connamara Systems, LLC*
>> *Made-To-Measure Trading Solutions.*
>> Exactly what you need. No more. No less.
>> http://connamara.com
>>
>> This email, along with any attachments, is confidential. If you believe
>> you received this message in error, please contact the sender immediately
>> and delete all copies of the message. Thank you from Connamara Systems, LLC.
>> _______________________________________________
>> Quickfixn mailing list
>> Quickfixn at lists.quickfixn.com
>> http://lists.quickfixn.com/listinfo.cgi/quickfixn-quickfixn.com
>>
>
>
> --
> Thanks,
> --Raju.v
>


-- 
Thanks,
--Raju.v
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.quickfixn.com/pipermail/quickfixn-quickfixn.com/attachments/20200714/0b4983e7/attachment.htm>


More information about the Quickfixn mailing list