Home  Search  Register  Login  Recent Posts

Information on DTN's Industries:
DTN Oil & Gas | DTN Trading | DTN Agriculture | DTN Weather
Follow DTNMarkets on Twitter
DTN.IQ/IQFeed on Twitter
DTN News and Analysis on Twitter
»Forums Index »Archive (2017 and earlier) »IQFeed Developer Support »Socket problems
Author Topic: Socket problems (2 messages, Page 1 of 1)

david_leake
-Interested User-
Posts: 4
Joined: Nov 18, 2017


Posted: Dec 16, 2019 12:40 PM          Msg. 1 of 2
Hi - we've had issues with 'phantom' connections on one of the sockets!

Following this answer http://forums.iqfeed.net/index.cfm?page=topic&topicID=3936, if we receive a "Could not connect to History socket" or "NO_DATA" error happens, we re-issue the request. This mostly works, but not always.

If the internet connection was lost, we have seen a problem where our software recognizes the IQFeed connection as alive, and retrys the command, but the command just keeps looping. Running IQFeed diagnostics, IQFeed was not running, but our software was still connected to this "phantom" connection on one of the sockets.

This occurred even when the internet was back on.

Also we find NO_DATA exceptions sometimes loops for minutes or hours, and if we stop the software and reload it, in most of the cases, the response is instant.

It seems to me that there is some error in sockets, which don't get a stable connection with IQFeed, so our solution is now to kill the IQFeed process and restart it if there are more than 5 socket errors.

Does this seem like a reasonable approach? Are there any other solutions or suggestions?

Thanks
Edited by david_leake on Dec 19, 2019 at 02:28 AM

DTN_Gary_Stephen
-DTN Guru-
Posts: 403
Joined: Jul 3, 2019


Posted: Jan 6, 2020 05:35 PM          Msg. 2 of 2
David,

Hello, this is Gary Stephen with DTNIQFeed API Support. I apologize for the slow reply on this.

First, let's clarify that these are two different things. "Could not connect" means you can’t connect, “NO_DATA” means you ARE connected, but your request did not turn up any data (like searching at a time the market is closed). That is a reply from the server.

Re-requesting a connection when you get "unable to connect" is fine. And probably a good idea, the Internet being a unreliable sometimes. But I'm puzzled at the behavior of the NO_DATA responses; in these cases, you already are connected, so re-connecting isn't going to do anything. And an API command responds NO_DATA, it should always respond NO_DATA (except in some rare circumstances during maintenance times when data may be offline).

In this "phantom connection", what exactly remained connected? If you don't have a port connection, IQConnect.exe will shut itself down within 30 seconds. So there should be no lingering connetions. I would want to do some port checks and see what's still connected. What else can you tell me about the circumstances bring about these NO_DATA responses you've mentioned?

Sincerely,
Gary Stephen
DTN IQFeed API Support

Sincerely,
Gary Stephen
DTN IQFeed Implementation Support Specialist
 

 

Time: Sat July 5, 2025 6:00 PM CFBB v1.2.0 10 ms.
© AderSoftware 2002-2003