Login Page - Create Account

Support Board


Date/Time: Fri, 19 Apr 2024 20:21:35 +0000



Post From: Notice: Transact Websocket Connectivity Issue

[2019-09-06 18:58:10]
Sierra Chart Engineering - Posts: 104368
Transact has confirmed this in regards to the compact JSON encoding used by version 1985:

It seems the sierra websocket is holding up. I think its good to release.

And we also told them this in regards to the binary price packet encoding which earlier versions have used:
your timing of the message is interesting. I was just looking into see why it is we were having a problem previously.

I have confirmed, that when using the binary price packets, you are sending out corrupted websocket data at times which is causing the lost connection. I cannot see any other possibility. I have looked at this quite closely. Nothing changes on our side, at the websocket level when you are using the JSON format, the websocket processing remains identical. (Note: and as we said above, there could not possibly be an issue at the network I/O or encryption/decryption level/layer)

The only variance is that there is less data flowing but the only possible reason that could be an issue is that if there is a frame over 65K, there is a different block of code to determine the frame size, but it essentially works identically. But that is not what is happening. There are no frames ever coming in over that size, when we are getting corrupt data.

And with the subsequent processing of the binary price packet, that is a safe read-only processing . So it is not as though there is any potential for data corruption using the binary price packets causing this issue. If there is any potential for data corruption, it would be more likely with JSON but clearly that is not happening because now we are processing enormous amounts more of that using the compact JSON format. (Note: We already knew there is no corruption occurring with the JSON data processing either. This code is reliable and has never been a problem for years with various usage of JSON internally and also with external services)

We will force an update, over the weekend.

Furthermore, the only thing that changes when requesting the binary price packets, or the compact JSON encoding of the market data with the Transact websocket price data connection, is the payload content of the websocket frames. The problem has always been with the header data on those frames causing the lost connections. Changing the payload should never cause any problem with the header processing . It simply could not.

This is further confirmation the problem is with corrupt data from the Transact server. And additionally as we have said above, there have been 0% issues like this, corrupt frame headers, with websocket connections to Bitfinex, BitMex, and with CQG with massive extensive use over a period of at least 6 years.

So if Transact did say the problem was on the Sierra Chart side, this was not correct based on our findings.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2019-09-07 20:12:01