vis_nagraj
-Interested User-
Posts: 5
Joined: Jun 27, 2007
|
Posted: Sep 6, 2007 07:18 AM
Msg. 1 of 10
Dear steve,
It happens at times that when ever i download historical data for a bunch of symbols, i get an error message for one or more symbols, the error i get is:
!ERROR! !NONE!
what does this error signify, does it signify that there is no data available for that particular symbol, or anything else.. And secondly, if i try again after sometimes, i get data for the same symbol!!! why is it so ? This error does not comes every time, but does come at some irregular times....
I use java for connecting to iqfeed...
Plzz do help me, in this....
Vishwanath
|
stargrazer
-DTN Guru-
Posts: 302
Joined: Jun 13, 2005
Right Here & Now
|
Posted: Sep 6, 2007 07:32 AM
Msg. 2 of 10
Yes, I have the same problem, and end up downloading historical twice just to be sure I have everything.
|
vis_nagraj
-Interested User-
Posts: 5
Joined: Jun 27, 2007
|
Posted: Sep 6, 2007 07:34 AM
Msg. 3 of 10
Dear steve,
I get this another also sometimes while downloading historical data:
!ERROR! Could not connect to History socket.
pllzz help me...
Vishwanath
|
DTN_Steve_S
-DTN Guru-
Posts: 2093
Joined: Nov 21, 2005
|
Posted: Sep 17, 2007 01:14 PM
Msg. 4 of 10
This error from IQFeed simply signifies that no data (and no other error) was returned from the server for the request.
I have brought this to the attention of the server team previously but they have not yet been able to implement a solution.
If you need an immediate resolution, I would suggest (as stargrazer metioned) tracking which symbols did not return data and rerequest autoimaticly within your application.
|
zeta34
-Interested User-
Posts: 10
Joined: Apr 21, 2009
|
Posted: Aug 27, 2009 02:02 PM
Msg. 5 of 10
The problem is that something in DTN's implementation is leaking. I thought it was my JNA bridge to the DLL that was leaking, but I recently implemented the DTN java solution and it still fails.
It is very easy to recreate. Try to load HDX data over TCP/IP for 11,000 symbols. When it gets to 10,800 symbols, it will start returning "Could not connect to History socket".
I am not leaking socket references or anything of that nature I assure you. If DTN were to setup a simple, continuous load from a PC, they would find the same exact problem.
The only solution I have found is to reboot the entire PC. That is a real pain, as you can imagine.
|
DTN_Steve_S
-DTN Guru-
Posts: 2093
Joined: Nov 21, 2005
|
Posted: Aug 27, 2009 04:09 PM
Msg. 6 of 10
Just to be clear.
This is an old thread (2007). I have not heard reports of the issue in the original topic for a VERY long time.
The "Unable to connect to History Socket" error is an entirely different issue and unrelated to the Original topic of this thread. I realize that my post above (from September 17th, 2007) doesn't address this issue directly but unfortunately, at this time, I don't recall the situation surrounding that post.
zeta34, I have handled several instances of this issue in the past. As it sounds like you know, it is a simple issue of the call to the connect method failing in IQConnect which is usually caused by windows being out of socket resources. In the past, every case of this that I have looked into ended up being solved within the client application code (not within IQConnect). Additionally, we do fairly rigorous testing of the feed at each release and I have never been able to duplicate these issues internally during these tests which include continual requests as you suggest.
With that said, I am not ruling out the possibility that there is a bug in IQFeed. I am just indicating that I've never been able to find one before through several similar investigations. If you would like to send me an app that duplicates this issue, I am more than willing to investigate it again in more detail.
|
zeta34
-Interested User-
Posts: 10
Joined: Apr 21, 2009
|
Posted: Sep 17, 2009 09:29 PM
Msg. 7 of 10
Ok, I have reproduced this bug using the DTN example. Then I upgraded to the newest version, 4.6.1.0, and tried again. And the bug still exists. I ran this program on both my Vista and XP machines, and in both cases I get the same error.
For the first 10k loops, no problem, the correct data is always returned:
100,2009-09-17 16:33:51,28.4900,684,3918982,28.2500,28.4200,3632467,0,0,E,
But sometime between 10,600 and 10,800 loops, this error is being returned:
100,E,Could not connect to History socket.
It happens *EVERY* time without fail. The only solution is to reboot the machine.
Here is the class. It is an exact replica of the LookupClient.java class distributed with IQFeed, with the addition of a simple while loop.
public class LoopingTestSentToDTN extends IQ_32 {
int a, b; BufferedReader in, sin; BufferedWriter sout;
public void IQConnectStatus(int a, int b) { this.a = a; this.b = b; System.out.println("IQConnectStatus("+a+","+b+")"); }
void dayticks() throws Exception { String symbol,days,maxDataPoints,beginFilterTime,endFilterTime,direction,dataPointsPerSend; symbol = "A"; days = "1"; maxDataPoints = "1"; beginFilterTime = ""; endFilterTime = ""; direction = "0"; dataPointsPerSend = "100"; sout.write("HTD"+","+symbol+","+days+","+maxDataPoints+","+beginFilterTime+","+endFilterTime+","+direction+","+dataPointsPerSend+";"); sout.flush(); String line = sin.readLine(); while (line!=null && line.indexOf("!ENDMSG!",0)==-1) { System.out.println(line); if (line.equals("!SYNTAX_ERROR!")) line = null; else line = sin.readLine(); } }
void run() { RegisterClientApp("IQFEED_DEMO", "1.0", "0.11111111"); try { if (a!=0 || b!=0) return; Socket s = new Socket(InetAddress.getByName("localhost"), 9100); sin = new BufferedReader(new InputStreamReader(s.getInputStream())); sout = new BufferedWriter(new OutputStreamWriter(s.getOutputStream())); in = new BufferedReader(new InputStreamReader(System.in)); int i = 0; while (i < 20000) { dayticks(); if ((++i % 50) == 0) { System.out.println("####### Count: " + i); } } } catch (Exception e) { e.printStackTrace(); } RemoveClientApp(); } public static void main(String args[]) throws Exception { LoopingTestSentToDTN me = new LoopingTestSentToDTN(); me.run(); }
|
DTN_Steve_S
-DTN Guru-
Posts: 2093
Joined: Nov 21, 2005
|
Posted: Sep 18, 2009 10:30 AM
Msg. 8 of 10
We are looking into this.
|
zeta34
-Interested User-
Posts: 10
Joined: Apr 21, 2009
|
Posted: Sep 24, 2009 01:27 PM
Msg. 9 of 10
Any status on this issue? Did the test fail for you?
|
DTN_Steve_S
-DTN Guru-
Posts: 2093
Joined: Nov 21, 2005
|
Posted: Sep 29, 2009 04:19 PM
Msg. 10 of 10
Hello, sorry about the delay responding. I was investigating another similar issue with history and had previously thought that this was the same issue. However, after testing the above code, I am not able to duplicate the issue you are having. The above code seems to complete all 20,000 requests every time the app is ran without even a single error being returned when I run it. Edited by DTN_Steve_S on Sep 29, 2009 at 04:20 PM
|
|
|
|