Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

BusinessRejectReason in BusinessMessageReject generated by throttle reject #467

Open
acorv opened this issue Oct 14, 2022 · 0 comments
Open

Comments

@acorv
Copy link

acorv commented Oct 14, 2022

I ran into an issue using message throttling:
BusinessMessageReject (35=j) messages generated when a session exceeds its throttling configuration are built with a BusinessRejectReason (380) = 99, as set in FixSenderEndPoint:80 and then used in: FixThrottleRejectBuilder:109.
I'm using a FIX client (QuickFIX/J) with a default FIX 5.0 Dictionary to connect to Artio. The default dictionary doesn't include 99 as a value for tag 380. This generates the following situation:
When the client receives the business-reject message from Artio, it session-rejects (35=3) it, which in turn generates another business-reject from Artio, because of throttling, entering an infinte loop.
The easiest solution would be to add 99 as a possible value to my dictionary, but this problem could appear with other third party clients.
Would it be possible to make BusinessRejectReason configurable for this ? or at maybe set it to a 'safe' value?
I'd be glad to generate a PR with either solution.
Thanks in advance.

# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant