quickfixgo / quickfix

The Go FIX Protocol Library :rocket:
https://www.quickfixgo.org/
Other
723 stars 282 forks source link

Valid message in 0.7.0 is failing validation (tag not defined for message type) in 0.9.0 #622

Closed dbergamin closed 2 months ago

dbergamin commented 3 months ago

Since upgrade to 0.9.0, we have seen a message that used to validate correctly failing validation. The error says Tag not defined for this message type msg(D) tag(1903). Our expectation is that this message is valid with tag 1903 (RegulatoryTradeID) being part of the NewOrderSingle message via Component RegulatoryTradeIDGrp.

I have added a commit with our FIX schema and a test case with specific message that fails (with a few fields anonymised in ways that should not affect the test).

In my fork, I have two demonstration branches with the commit containing the test e88e5df4: https://github.com/dbergamin/quickfix/tree/valid-newordersingle-fails (Integrated with master) - test fails

vscode ➜ /workspace (valid-newordersingle-fails) $ go test
--- FAIL: TestValidate (0.44s)
    validation_test.go:90: Process BBG NewOrderSingle: Unexpected reject: Tag not defined for this message type, Tag 1903, Reason: 2
FAIL
exit status 1
FAIL    github.com/quickfixgo/quickfix  0.459s

https://github.com/dbergamin/quickfix/tree/valid-newordersingle-passes-070 (Integrated with 0.7.0): - test passes

vscode ➜ /workspace (valid-newordersingle-passes-070) $ go test
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
2024/04/08 03:19:55 MONGODB_TEST_CXN environment arg is not provided, skipping...
PASS
ok      github.com/quickfixgo/quickfix  0.138s
dbergamin commented 3 months ago

Seems to have regressed in https://github.com/quickfixgo/quickfix/pull/368 -- commenting out that part gets the test passing. But that behaviour seems to be correct, so it looks like there's a further bug in play.

ackleymi commented 2 months ago

@dbergamin I believe this is resolved in https://github.com/quickfixgo/quickfix/releases/tag/v0.9.2 please re-open issue if that is not the case.