Uploaded image for project: 'QuickFIX/J'
  1. QuickFIX/J
  2. QFJ-944

Misleading error message when receiving Logon with tag RawData without RawDataLength

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Default
    • Resolution: Fixed
    • Affects Version/s: 1.6.4
    • Fix Version/s: 2.0.1
    • Component/s: Engine, Metadata/Specs
    • Labels:
      None
    • Environment:
      Real connection to GDAX (Coinbase) exchange.

      Description

      I encountered a problem that after receiving a Logon message from the GDAX cryptocurrency exchange, the connection is breaking down with only one strange explaining string in event log messages:
      <2018-03-13 07:13:22.789 -0400> <Invalid LOGON message, disconnecting: Tag 95 not found in 8=FIX.4.2^A9=167^A35=A^A52=20180313-11:13:22.778^A49=Coinbase^A56=an_id^A34=1^A96=some_data^A98=0^A108=30^A554=password^A8013=Y^A10=032^A>
      It is obviously no tag 95 in the message, so from the first look it seems very strange that engine is trying to find it. As I found out after code debugging, the problem is that the tag 96 is defined as DATA in the standard FIX42 dictionary and for the type QuickFIX/J engine is looking for the previous tag: this logic is coded in the method quickfix.Message#extractField.
      I hotfixed my problem by changing the tag 96 type from DATA to STRING in the FIX dictionary, but it seems that it is too difficult to come to.

      1) I think, the FIX engine should check the previous tag presence before getting it, and in the case of absence, do extracting as with usual string.
      2) At any case, the log message should be more clear than simple "Tag <unknown tag> not found in <messageData>".

        Attachments

          Activity

            People

            • Assignee:
              chrjohn Christoph John
              Reporter:
              nikola Nikolai Kulakov
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: