Dukascopy Support Board
http://www.dukascopy.com/swiss/english/forex/jforex/forum/

Java heap space error
http://www.dukascopy.com/swiss/english/forex/jforex/forum/viewtopic.php?f=16&t=56895
Page 1 of 1

Author:  FXjuxe [ Sat 12 Jan, 2019, 12:00 ]
Post subject:  Java heap space error

Hi,

I have a strange exception here:

2019-01-12 04:10:34.540 ERROR com.dukascopy.dds4.transport.client.netty.task.FeedbackMessageEventExecutorTask - [DDS2 Standalone Transport Client] Java heap space
java.lang.OutOfMemoryError: Java heap space
   at java.lang.Class.getDeclaredFields0(Native Method)
   at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
   at java.lang.Class.getDeclaredField(Class.java:2068)
   at com.dukascopy.api.instrument.Instrumentarium.setFieldValue(Instrumentarium.java:291)
   at com.dukascopy.api.instrument.Instrumentarium.setInstrumentTradability(Instrumentarium.java:277)
   at com.dukascopy.dds2.greed.model.InstrumentTradability.setInstrumentState(InstrumentTradability.java:42)
   at com.dukascopy.api.impl.connect.DCClientImpl.process(DCClientImpl.java:1118)
   at com.dukascopy.api.impl.connect.DCClientImpl.feedbackMessageReceived(DCClientImpl.java:1041)
   at com.dukascopy.dds4.transport.client.netty.task.FeedbackMessageEventExecutorTask.run(FeedbackMessageEventExecutorTask.java:117)
   at com.dukascopy.dds4.common.orderedExecutor.OrderedThreadPoolExecutor$ChildExecutor.run(OrderedThreadPoolExecutor.java:594)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
   at java.lang.Thread.run(Thread.java:748)
2019-01-12 04:11:06.552 ERROR com.dukascopy.dds4.transport.client.netty.task.FeedbackMessageEventExecutorTask - [DDS2 Standalone Transport Client] Java heap space
java.lang.OutOfMemoryError: Java heap space
   at java.lang.Class.getDeclaredFields0(Native Method)
   at java.lang.Class.privateGetDeclaredFields(Class.java:2583)
   at java.lang.Class.getDeclaredField(Class.java:2068)
   at com.dukascopy.api.instrument.Instrumentarium.setFieldValue(Instrumentarium.java:291)
   at com.dukascopy.api.instrument.Instrumentarium.setInstrumentTradability(Instrumentarium.java:277)
   at com.dukascopy.dds2.greed.model.InstrumentTradability.setInstrumentState(InstrumentTradability.java:42)
   at com.dukascopy.api.impl.connect.DCClientImpl.process(DCClientImpl.java:1118)
   at com.dukascopy.api.impl.connect.DCClientImpl.feedbackMessageReceived(DCClientImpl.java:1041)
   at com.dukascopy.dds4.transport.client.netty.task.FeedbackMessageEventExecutorTask.run(FeedbackMessageEventExecutorTask.java:117)
   at com.dukascopy.dds4.common.orderedExecutor.OrderedThreadPoolExecutor$ChildExecutor.run(OrderedThreadPoolExecutor.java:594)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
   at java.lang.Thread.run(Thread.java:748)
2019-01-12 04:11:26.054 ERROR com.dukascopy.dds4.transport.client.netty.task.AbstractEventExecutorChannelTask - [DDS2 Standalone Transport Client] Event did not execute in timeout time [1000] and is still executing, CRITICAL EXECUTION WAIT TIME: 30070ms, possible application problem or deadLock, message [<InstrumentStatusUpdateMessage(instrument=EUR/USD,state=TRADING_TEMPORARY_BLOCKED,timestamp=15472626]
2019-01-12 04:11:29.516 ERROR com.dukascopy.dds4.transport.client.netty.task.AbstractEventExecutorChannelTask - [DDS2 Standalone Transport Client] Event execution took 60709ms, critical timeout time 1000ms, possible application problem or deadLock, message [<InstrumentStatusUpdateMessage(instrument=EUR/USD,state=TRADING_TEMPORARY_BLOCKED,timestamp=15472626]
2019-01-12 04:11:38.168 ERROR com.dukascopy.dds4.transport.client.netty.ClientProtocolHandler - Java heap space
java.lang.OutOfMemoryError: Java heap space
2019-01-12 04:17:18.905 ERROR io.netty.util.concurrent.DefaultPromise.rejectedExecution - Failed to submit a listener notification task. Event loop shut down?
java.util.concurrent.RejectedExecutionException: event executor terminated
   at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:842)
   at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:328)
   at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:321)
   at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:765)
   at io.netty.util.concurrent.DefaultPromise.safeExecute(DefaultPromise.java:764)
   at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:432)
   at io.netty.util.concurrent.DefaultPromise.setFailure(DefaultPromise.java:112)
   at io.netty.channel.DefaultChannelPromise.setFailure(DefaultChannelPromise.java:89)
   at io.netty.channel.AbstractChannelHandlerContext.safeExecute(AbstractChannelHandlerContext.java:1010)
   at io.netty.channel.AbstractChannelHandlerContext.write(AbstractChannelHandlerContext.java:825)
   at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:794)
   at io.netty.channel.AbstractChannelHandlerContext.writeAndFlush(AbstractChannelHandlerContext.java:831)
   at io.netty.channel.DefaultChannelPipeline.writeAndFlush(DefaultChannelPipeline.java:1071)
   at io.netty.channel.AbstractChannel.writeAndFlush(AbstractChannel.java:300)
   at com.dukascopy.dds4.transport.client.netty.ClientProtocolHandler.writeMessage(ClientProtocolHandler.java:364)
   at com.dukascopy.dds4.transport.client.netty.ClientConnector.processOnline(ClientConnector.java:518)
   at com.dukascopy.dds4.transport.client.netty.ClientConnector.run(ClientConnector.java:318)
2019-01-12 04:17:19.529 ERROR io.netty.util.concurrent.DefaultPromise.rejectedExecution - Failed to submit a listener notification task. Event loop shut down?
java.util.concurrent.RejectedExecutionException: event executor terminated
   at io.netty.util.concurrent.SingleThreadEventExecutor.reject(SingleThreadEventExecutor.java:842)
   at io.netty.util.concurrent.SingleThreadEventExecutor.offerTask(SingleThreadEventExecutor.java:328)
   at io.netty.util.concurrent.SingleThreadEventExecutor.addTask(SingleThreadEventExecutor.java:321)
   at io.netty.util.concurrent.SingleThreadEventExecutor.execute(SingleThreadEventExecutor.java:765)
   at io.netty.util.concurrent.DefaultPromise.safeExecute(DefaultPromise.java:764)
   at io.netty.util.concurrent.DefaultPromise.notifyListeners(DefaultPromise.java:432)
   at io.netty.util.concurrent.DefaultPromise.addListener(DefaultPromise.java:162)
   at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:95)
   at io.netty.channel.DefaultChannelPromise.addListener(DefaultChannelPromise.java:30)
   at com.dukascopy.dds4.transport.client.netty.ClientProtocolHandler.writeMessage(ClientProtocolHandler.java:366)
   at com.dukascopy.dds4.transport.client.netty.ClientConnector.processOnline(ClientConnector.java:518)
   at com.dukascopy.dds4.transport.client.netty.ClientConnector.run(ClientConnector.java:318)


What could be the reason here?
I d not have a strategy here, since this runs as an application plugin for another software.

Author:  API Support [ Tue 29 Jan, 2019, 16:35 ]
Post subject:  Re: Java heap space error

Hello,

Unfortunately, there isn't possible to determine problem only by stack trace. If problem appears again and repeats with a some frequency - let us know and we try investigate this problem deeper.
You can increase heap space manually by passing VM arguments
Quote:
-Xms4096m
-Xmx4096m

  Page 1 of 1