real-logic / artio

Artio - Resilient High-Performance FIX and FIXP Gateway
Apache License 2.0
296 stars 121 forks source link

Does Artio support FIX.5.0-sp2 ? #510

Closed tamama closed 2 months ago

tamama commented 2 months ago

This issue has been raised here for book-keeping purpose.

Based on Hydra (Aeron-Enterprise) docs, we can auto-gen fix-dictionary related code with

fix-dictionary std_quickfix_fix50sp2 = {
   applicationVersion: "FIX50SP2"
   dictionaryFile: "def/std/quickfix/FIX50SP2.xml"
   transportDictionaryFile: "def/std/quickfix/FIXT11.xml"
}

However, while using standard FIX-5.0-sp2 spec provided by STD/QUICKFIX, Hydra failed to compile due to underlying Artio library.

Example - stacktrace:

java.lang.IllegalArgumentException: No enum constant uk.co.real_logic.artio.dictionary.ir.Field.Type.LOCALMKTTIME                
        at java.base/java.lang.Enum.valueOf(Enum.java:293)                                                     
        at uk.co.real_logic.artio.dictionary.ir.Field$Type.valueOf(Field.java:138)                                               
        at uk.co.real_logic.artio.dictionary.ir.Field$Type.lookup(Field.java:280)                                         
        at uk.co.real_logic.artio.dictionary.DictionaryParser.lambda$parseFields$8(DictionaryParser.java:258)

Other known bugs against standard field-types include:

Kind regards, Tama MA

wojciech-adaptive commented 2 months ago

Generally speaking, yes, Artio does support FIX 5.0 SP2. However, some of the newer extension packs might not be supported at the moment, as was the case here.

tamama commented 2 months ago

Per discussed over Adaptive support desk,

we confirm that Hydra (Artio) supports

Beware that

For FIX-4.x, Artio works perfectly OK. (I have to be fair here.)

^ I think I have provided an honest picture here.