Dukascopy
 
 
Wiki JStore Search Login

TimeManager - Unable to detect server time
 Post subject: TimeManager - Unable to detect server time Post rating: 1   New post Posted: Thu 31 Jan, 2013, 16:34 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
Just posting this for the record. Caused my standalone API client to hang.

API 2.7.8

Notice that some unobfuscated line numbers appear in the stack trace for TimeManager.

Client has only a single chart open EUR/USD receiving Ticks.

Memory: 819,200K  Free: 378,532K  (46%) ... completed.
Memory: 819,200K  Free: 373,433K  (45%) ... completed.
Memory: 819,200K  Free: 373,037K  (45%) ... completed.
Memory: 819,200K  Free: 372,744K  (45%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 496,158K  (60%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 705,418K  (86%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 793,809K  (96%) ... completed.
Memory: 819,200K  Free: 790,914K  (96%) ... completed.
Memory: 819,200K  Free: 789,650K  (96%) ... completed.
Memory: 819,200K  Free: 788,790K  (96%) ... completed.
Memory: 819,200K  Free: 787,983K  (96%) ... completed.
Memory: 819,200K  Free: 786,965K  (96%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 793,724K  (96%) ... completed.
2013-01-31 10:22:49.450 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":33,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":33,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
2013-01-31 10:22:59.454 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":34,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":34,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)
2013-01-31 10:23:09.456 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":35,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":35,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
2013-01-31 10:23:09.465 ERROR CriteriaThread - Found not fired event,
with wait time > 2 sec: {"tlb":"229.75","apa":"1.35759","a":"1.35748,2.48,3.5,1.35749,1.5,3.5,1.35750,1.5,3.5,
1.35751,12.2,3.5,1.35752,7.5,3.5,1.35753,9.0,3.5,1.35754,7.5,3.5,1.35755,13.13,3.5,
1.35756,2.83,3.5,1.35758,27.35,3.5","apb":"1.35733","t":"1359645769912","b":"1.35744,
2.25,2.5,1.35743,3.98,2.5,1.35742,2.85,2.5,1.35740,26.25,2.5,1.35739,17.13,2.5,
1.35738,24.58,2.5,1.35737,7.5,2.5,1.35736,23.45,2.5,1.35735,32.13,2.5,1.35733,
58.93,2.5","pip":"0.0001","i":"EUR/USD","type":"marketState","tla":"121.85"}
2013-01-31 10:23:09.465 ERROR CriteriaThread - com.dukascopy.charts.data.datacache.FeedDataProvider.getLastTick(FeedDataProvider.java:1665)
2013-01-31 10:23:09.466 ERROR CriteriaThread - com.dukascopy.api.impl.connect.JForexTaskManager.onMarketState(JForexTaskManager.java:557)
2013-01-31 10:23:09.466 ERROR CriteriaThread - com.dukascopy.api.impl.connect.DCClientImpl.feedbackMessageReceived(DCClientImpl.java:764)
2013-01-31 10:23:09.466 ERROR CriteriaThread - com.dukascopy.transport.client.events.FeedbackMessageReceivedEvent.execute(FeedbackMessageReceivedEvent.java:43)
2013-01-31 10:23:09.466 ERROR CriteriaThread - com.dukascopy.transport.client.events.EventTask.run(EventTask.java:34)
2013-01-31 10:23:09.466 ERROR CriteriaThread - com.dukascopy.transport.client.CriteriaThread.run(CriteriaThread.java:75)
2013-01-31 10:23:19.457 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":36,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":36,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)



 
 Post subject: Possible Workaround: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Fri 01 Feb, 2013, 01:43 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
I'm going out on a limb here and GUESS, since I think the above BUG appears when I
use the Java console and type "g" to garbage-collect, and also after the app
has been running for quite a while. Sometimes a "hunch" like this works out...

This behavior feels suspiciously like a problem I had with another large app deployed with
Java Web Start, where the JNLP class loader has an underlying BUG and starts
throwing exceptions that classes can't be loaded (when they were already
loaded) after being erroneously GC'd. The fix fixes the issue.

It occurs to me that, since my app is Java Web Start deployed, that this
may be due to the Java runtime incorrectly unloading classes it should NOT
unload. So I've put in the fix I contributed at the following link, and I'll
report whether I continue to see this problem in my jnlp deployed standalone app.

viewtopic.php?f=65&t=48731


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Fri 01 Feb, 2013, 10:10 
User avatar

User rating: 7
Joined: Fri 13 Jan, 2012, 20:49
Posts: 94
Location: Poland, Warsaw
Hi,

I get similar error in application run from Netbeans, without charts.

What is more interesting - I get this error on one machine (application GUI stops responding) and on the other it work fine.

best regards,
kurak


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Fri 01 Feb, 2013, 12:39 

User rating: 0
Joined: Fri 19 Aug, 2011, 20:29
Posts: 45
Location: Germany,
I got _a lot_ of those this week too with 2.7.8. I suspected its another problem with the history servers again since they typically results in all sort of feed timeouts.

I haven't gotten any of those since yesterday and being on 2.7.5 anymore. So either this is a 2.7.8 bug or the history servers were broken again this week.


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Fri 01 Feb, 2013, 12:40 

User rating: 0
Joined: Fri 19 Aug, 2011, 20:29
Posts: 45
Location: Germany,
PS: For me they were also coupled with user application taking too long, blocking mina thread blah blah and then the DFS timeout.

BUT that happened on a blank strategy too without any modifications so it was not the application code.


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Sun 03 Feb, 2013, 07:38 
User avatar

User rating: 1
Joined: Thu 15 Mar, 2012, 16:30
Posts: 20
yoursong wrote:
PS: For me they were also coupled with user application taking too long, blocking mina thread blah blah and then the DFS timeout.

BUT that happened on a blank strategy too without any modifications so it was not the application code.



Same here,
since 2.7.8 I'm getting these ERRORS again and again.


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Sun 03 Feb, 2013, 19:32 

User rating: 0
Joined: Fri 19 Aug, 2011, 20:29
Posts: 45
Location: Germany,
2.7.8 change - APICLIENT-517 ADDED current time take from server ?


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Mon 04 Feb, 2013, 15:27 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
This is API 2.7.8

I'm not sure what causes it, but once it happens, then it repeatedly blocks my other tasks on the IClient.executeTask queue.

(In my standalone client, I also tested my disconnect / reconnect logic and it doesn't trigger this situation.)


2013-02-04 07:44:52.287 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":930,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":930,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)

java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)

calculatePositions returned null list.

java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)

calculatePositions returned null list.

2013-02-04 07:45:02.288 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":931,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":931,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)



 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Mon 04 Feb, 2013, 15:59 

User rating: 0
Joined: Sat 02 Feb, 2013, 03:32
Posts: 5
Location: Switzerland,
Same thing here. This started to happen after I've upgraded from 2.7.0 to 2.7.8 last Friday.

Kind regards,
Sacrelege


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Wed 06 Feb, 2013, 13:37 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
Problem appears somewhere just after 8.00 GMT (daily?) could be related to some daily server reset, but this thread does not seem to recover from it, and throws these exceptions from that time forward. This blocks my execution queues.

2013-02-06 06:10:19.215 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":1096,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":1096,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Thu 07 Feb, 2013, 03:25 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
When can we expect a patch, a fix or a workaround for this bug, please?

It's really hanging my system, and I can't go back to a previous API version.


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Thu 07 Feb, 2013, 08:45 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
Working on it...


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Thu 07 Feb, 2013, 17:38 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
Thanks. So I came to my system which was running overnight with no issues.

At the Java Console I forced multiple "g" garbage collections. And, to my surprise, the error appeared immediately.

I have posted elsewhere that there is a fix for the JNLP class loader, used by Java Web Start and I am wondering whether it is the root cause of this issue.

viewtopic.php?f=65&t=48731

And, within our standalone API code, we use a jnlp link (and therefore the jnlp class loader) to connect, right? So the jnlp classloader is involved.

So I'll try this again today and see whether I can eliminate the problem by using the classloader fix which "hard links" classes, so that they are not garbage collected.

Garbage collection in the VM is not supposed to cause this issue. I'm using this VM to run the software through a Java Web Start launch. Note that it is the "Server VM"

C:\>java -server -version
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) Server VM (build 20.13-b02, mixed mode)

C:\>

Java Web Start 1.6.0_38
Using JRE version 1.6.0_38-b05 Java HotSpot(TM) Server VM
User home directory = C:\Users\Brent
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
             Spread WIDEN BOTH
  Spread NARROW BOTH
  Spread NARROW BOTH
             Spread WIDEN BOTH
             Spread WIDEN BOTH
  Spread NARROW BOTH
Memory: 819,200K  Free: 327,664K  (39%) ... completed.
Memory: 819,200K  Free: 325,550K  (39%) ... completed.
Memory: 819,200K  Free: 324,240K  (39%) ... completed.
Memory: 819,200K  Free: 322,006K  (39%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 535,454K  (65%) ... completed.
Memory: 819,200K  Free: 526,561K  (64%) ... completed.
Memory: 819,200K  Free: 525,496K  (64%) ... completed.
Memory: 819,200K  Free: 525,109K  (64%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 791,943K  (96%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 791,872K  (96%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 791,954K  (96%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 791,865K  (96%) ... completed.
Garbage collect ... completed.
Memory: 819,200K  Free: 792,006K  (96%) ... completed.
2013-02-07 11:19:31.849 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":22,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":22,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
2013-02-07 11:19:41.851 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":23,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":23,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)
2013-02-07 11:19:51.852 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":24,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":24,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
ListenerTask client accepted from: 127.0.0.1
IndicatorFeedServer add client handler 2 entries...
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
ListenerTask listening... port: 3337
ListenerTask serverSocket created...
ListenerTask waiting to accept...
2013-02-07 11:20:01.853 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":25,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":25,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:90)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:132)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:90)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:132)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
2013-02-07 11:20:11.854 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":26,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":26,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
ListenerTask client accepted from: 127.0.0.1
IndicatorFeedServer add client handler 3 entries...
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
2013-02-07 11:20:21.855 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":27,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":27,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:90)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:132)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:90)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:132)
   at java.lang.Thread.run(Unknown Source)
ListenerTask listening... port: 3337
ListenerTask serverSocket created...
ListenerTask waiting to accept...
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.



 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Thu 07 Feb, 2013, 18:45 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
OK, so I had already put this jnlp fix code in my main startup for the standalone API client.

But this standalone client starts a number of complex strategies using Swing UI's, threads, etc.

SO NOW, I've also placed "the fix" code (with its own static variable in each IStrategy class) within the onStart of *each* strategy which my API client starts.

I'll report to you whether I can force the error, or observe the error, again.

Maybe this is all a "red herring", as they say, which is what you're probably thinking :)

HyperScalper


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Fri 08 Feb, 2013, 08:59 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
We have added a possible fix in our servers.
As also we have added a code to provide more information in case of failure.

The servers would have to be updated this weekend.


 
 Post subject: Possible Workaround using JNLP ClassLoader fix Post rating: 0   New post Posted: Fri 08 Feb, 2013, 14:58 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
With the jnlp classloader fix or Workaround, described in my previous posts...

I can report that I have NOT (so far) been able to reproduce the problem
any more with the API 2.7.8 release. Previously it happened constantly,
so this workaround has been effective for me.

My standalone API app is deployed using Java Web Start, which is the root
of the problem here, allegedly...
My code runs complex strategies which present their own Swing User interfaces,
and use many threads, running operations using IContext.executeTask(task)
in the Server VM runtime for Windows under Java 6 Update 38 at the moment.

If this is a workaround, then I think it means the problem has some relationship to
the Java Web Start classloader, especially for long-running applications. It means
that classes are allowed to be GC'd when they should not, thus causing a series
of problems, especially in long running applications.

Before using this workaround,
I had previously been able to cause the bug by forcing a GC on the Java console,
using the "g" command in the Java console as the app is running. I believe
that GC was reclaiming resources which should not have been allowed to be
collected and that this precipated the problem in my case.

viewtopic.php?f=65&t=48731

As I said earlier, for both the API static main program, and EACH Strategy
module run in the standalone API client, I applied the fix in IStrategy.onStart
which runs the fix to hard link Java Web Start resources and avoid
their being released and GC'd at a later time.

This is an issue which is related to a known bug in the Java Web Start classloader,
specific to Java Web Start in the Java 6 series, starting
at about Java 6 Update 17 from Sun/Oracle (Windows). I do not know
whether it has been fixed, hence the workaround fix procedure.

I am running this version of the VM, note that it is the "server vm"
for high performance.

On a Windows 7 system:
java -server -version
java version "1.6.0_38"
Java(TM) SE Runtime Environment (build 1.6.0_38-b05)
Java HotSpot(TM) Server VM (build 20.13-b02, mixed mode)

Please tell us what you found the root cause to be.

HyperScalper


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Mon 11 Feb, 2013, 16:35 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
Can you confirm whether server updates were made over the weekend,
intended to address this issue?
HyperScalper


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Tue 12 Feb, 2013, 09:00 
User avatar

User rating:
Joined: Fri 31 Aug, 2007, 09:17
Posts: 6139
They are updated. Please check.


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Wed 13 Feb, 2013, 19:27 
User avatar

User rating: 1
Joined: Thu 15 Mar, 2012, 16:30
Posts: 20
For some inexplicable Reason my last Post was deleted without a Comment, so I'am posting it again!

I'am still getting these Errors within the JF-Platform (API Vers.: 2.7.8.4) (Am I the only one?)

Java Web Start 1.6.0_39
Verwendung der JRE-Version 1.6.0_39-b04 Java HotSpot(TM) Client VM
Home-Verzeichnis des Benutzers = C:\Blabla
----------------------------------------------------
c:   Konsole löschen
f:   Objekte in Finalisierungswarteschlange finalisieren
g:   Speicherbereinigung
h:   Diese Hilfemeldung anzeigen
m:   Speicherbelegung anzeigen
o:   Protokollierung auslösen
p:   Proxy-Konfiguration neu laden
q:   Konsole ausblenden
r:   Richtlinien-Konfiguration neu laden
s:   System- und Bereitstellungseigenschaften ausgeben
t:   Threadliste ausgeben
v:   Thread-Stack ausgeben
0-5: Trace-Stufe auf <n> setzen
----------------------------------------------------
13.02.2013 18:01:07.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:01:37.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:03:37.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:05:07.812  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:06:07.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:21:07.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:26:07.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:28:07.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:33:37.796  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:40:07.812  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:43:07.859  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:43:37.859  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:47:08.250  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:48:08.250  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:50:08.250  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:54:38.250  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:55:38.250  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:56:08.265  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:56:38.265  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:57:38.265  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:57:49.078  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key strategies.button.set.parameters
13.02.2013 18:57:53.062  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key strategies.button.set.parameters
13.02.2013 18:58:08.265  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:58:38.265  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key label.jforex
13.02.2013 18:58:40.296  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key strategies.button.set.parameters
13.02.2013 18:58:44.421  WARNUNG       l10n.LocalizationManager ] Can't find resource for bundle com.dukascopy.dds2.greed.gui.l10n.a.a, key strategies.button.set.parameters
13.02.2013 18:59:22.531 SCHWERWIEGEND                            r.d ] Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":187,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":187,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.v.a(Unknown Source)
   at com.dukascopy.charts.data.datacache.v.a(Unknown Source)
   at com.dukascopy.charts.data.datacache.v.b(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pd(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pc(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.oZ(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pa(Unknown Source)
   at com.dukascopy.charts.data.datacache.ai.t(Unknown Source)
   at com.dukascopy.charts.data.datacache.ai.b(Unknown Source)
   at com.dukascopy.dds2.greed.c.f.run(Unknown Source)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
13.02.2013 18:59:26.031  WARNUNG                       client.d ] fireFeedbackMessageReceived: TOO LARGE EXECUTION WAIT TIME: 3125. User application operations is too slow.
13.02.2013 18:59:27.593  WARNUNG                       client.d ] fireFeedbackMessageReceived: TOO LARGE EXECUTION WAIT TIME: 4687. User application operations is too slow.
13.02.2013 18:59:29.156  WARNUNG                       client.d ] fireFeedbackMessageReceived: TOO LARGE EXECUTION WAIT TIME: 6250. User application operations is too slow.
13.02.2013 18:59:30.718  WARNUNG                       client.d ] fireFeedbackMessageReceived: TOO LARGE EXECUTION WAIT TIME: 7812. User application operations is too slow.
13.02.2013 18:59:32.281  WARNUNG                       client.d ] fireFeedbackMessageReceived: TOO LARGE EXECUTION WAIT TIME: 9375. User application operations is too slow.
13.02.2013 18:59:33.531 SCHWERWIEGEND                            r.d ] Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":188,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":188,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.v.a(Unknown Source)
   at com.dukascopy.charts.data.datacache.v.a(Unknown Source)
   at com.dukascopy.charts.data.datacache.v.b(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pd(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pc(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.oZ(Unknown Source)
   at com.dukascopy.charts.data.datacache.r.d.pa(Unknown Source)
   at com.dukascopy.charts.data.datacache.ai.t(Unknown Source)
   at com.dukascopy.charts.data.datacache.ai.b(Unknown Source)
   at com.dukascopy.dds2.greed.c.f.run(Unknown Source)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)


 
 Post subject: Re: TimeManager - Unable to detect server time Post rating: 0   New post Posted: Thu 14 Feb, 2013, 03:48 
User avatar

User rating: 98
Joined: Mon 23 Jul, 2012, 02:02
Posts: 656
Location: United States, Durham, NC
I must also say that although I've greatly reduced the frequency of this error,
that I continue to see it as well. This is with standalone API 2.7.8.

I don't have a workaround for it, so we'll wait for a fix, and I'm not sure that
we have a full diagnosis at this time either...

HyperScalper.

Java Web Start 1.6.0_38
Using JRE version 1.6.0_38-b05 Java HotSpot(TM) Server VM
User home directory = C:\Users\Brent
----------------------------------------------------
c:   clear console window
f:   finalize objects on finalization queue
g:   garbage collect
h:   display this help message
m:   print memory usage
o:   trigger logging
p:   reload proxy configuration
q:   hide console
r:   reload policy configuration
s:   dump system and deployment properties
t:   dump thread list
v:   dump thread stack
0-5: set trace level to <n>
----------------------------------------------------
Calling JNLPClassLoaderFix.fixIt...
after JNLPClassLoaderFix.fixIt...
Version sanity check IClientGUI: 2.7.8
...
2013-02-12 12:07:05.251 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":17,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":17,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getSafeServerTime(TimeManager.java:109)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.addTickToLatency(FeedDataProvider.java:1982)
   at com.dukascopy.charts.data.datacache.FeedDataProvider.tickReceived(FeedDataProvider.java:1486)
   at com.dukascopy.dds2.greed.market.LiveCurrencyMarketProcessingThread$1.run(LiveCurrencyMarketProcessingThread.java:138)
   at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
   at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
   at java.util.concurrent.FutureTask.run(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:93)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:140)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:93)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:140)
   at java.lang.Thread.run(Unknown Source)
2013-02-12 12:07:15.255 ERROR TimeManager - Unable to detect server time, reason <Request to DFS timed out, timeout [10000], request [{"id":18,"type":"ServerTimeRequestMessage"}]>
com.dukascopy.charts.data.datacache.DataCacheException: Request to DFS timed out, timeout [10000], request [{"id":18,"type":"ServerTimeRequestMessage"}]
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:1017)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.processMessage(CurvesJsonProtocolHandler.java:937)
   at com.dukascopy.charts.data.datacache.CurvesJsonProtocolHandler.loadServerTime(CurvesJsonProtocolHandler.java:1037)
   at com.dukascopy.charts.data.datacache.time.TimeManager.loadServerTime(TimeManager.java:75)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getOrLoadServerTime(TimeManager.java:65)
   at com.dukascopy.charts.data.datacache.time.TimeManager.getServerTime(TimeManager.java:44)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.getCurrentTime(IntraperiodCandlesGenerator.java:1208)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator.access$200(IntraperiodCandlesGenerator.java:33)
   at com.dukascopy.charts.data.datacache.IntraperiodCandlesGenerator$1.run(IntraperiodCandlesGenerator.java:71)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:93)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:140)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.PositionCalculator.getNetOpenPositionMillions(PositionCalculator.java:93)
   at com.fs.strategy.DashboardPNLDialog$ExposurePollingTask.run(DashboardPNLDialog.java:140)
   at java.lang.Thread.run(Unknown Source)
java.util.concurrent.TimeoutException
   at java.util.concurrent.FutureTask$Sync.innerGet(Unknown Source)
   at java.util.concurrent.FutureTask.get(Unknown Source)
   at com.fs.jforex.orders.OrderPositionsManager.calculatePositions(OrderPositionsManager.java:68)
   at com.fs.jforex.orders.OrderPositionsManager.run(OrderPositionsManager.java:240)
   at java.lang.Thread.run(Unknown Source)
calculatePositions returned null list.



 

Jump to:  

  © 1998-2024 Dukascopy® Bank SA
On-line Currency forex trading with Swiss Forex Broker - ECN Forex Brokerage,
Managed Forex Accounts, introducing forex brokers, Currency Forex Data Feed and News
Currency Forex Trading Platform provided on-line by Dukascopy.com