Uploaded image for project: 'Apache Nemo'
  1. Apache Nemo
  2. NEMO-293

OOM exception in streaming

    XMLWordPrintableJSON

Details

    Description

      Nemo throws OOM exceptions when executing Nexmark Q6.

      Nov 18, 2018 10:41:58 AM io.netty.util.internal.logging.Slf4JLogger warn
      WARNING: An exceptionCaught() event was fired, and it reached at the tail of the pipeline. It usually means the last handler in the pipeline did not handle the exception.
      io.netty.util.internal.OutOfDirectMemoryError: failed to allocate 16777216 byte(s) of direct memory (used: 503316485, max: 514850816)
       at io.netty.util.internal.PlatformDependent.incrementMemoryCounter(PlatformDependent.java:640)
       at io.netty.util.internal.PlatformDependent.allocateDirectNoCleaner(PlatformDependent.java:594)
       at io.netty.buffer.PoolArena$DirectArena.allocateDirect(PoolArena.java:764)
       at io.netty.buffer.PoolArena$DirectArena.newChunk(PoolArena.java:740)
       at io.netty.buffer.PoolArena.allocateNormal(PoolArena.java:244)
       at io.netty.buffer.PoolArena.allocate(PoolArena.java:214)
       at io.netty.buffer.PoolArena.allocate(PoolArena.java:146)
       at io.netty.buffer.PooledByteBufAllocator.newDirectBuffer(PooledByteBufAllocator.java:324)
       at io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:181)
       at io.netty.buffer.AbstractByteBufAllocator.directBuffer(AbstractByteBufAllocator.java:172)
       at io.netty.buffer.AbstractByteBufAllocator.ioBuffer(AbstractByteBufAllocator.java:133)
       at io.netty.channel.DefaultMaxMessagesRecvByteBufAllocator$MaxMessageHandle.allocate(DefaultMaxMessagesRecvByteBufAllocator.java:80)
       at io.netty.channel.epoll.EpollRecvByteAllocatorHandle.allocate(EpollRecvByteAllocatorHandle.java:71)
       at io.netty.channel.epoll.AbstractEpollStreamChannel$EpollStreamUnsafe.epollInReady(AbstractEpollStreamChannel.java:786)
       at io.netty.channel.epoll.AbstractEpollChannel$AbstractEpollUnsafe$1.run(AbstractEpollChannel.java:412)
       at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
       at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:403)
       at io.netty.channel.epoll.EpollEventLoop.run(EpollEventLoop.java:309)
       at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:858)
       at io.netty.util.concurrent.DefaultThreadFactory$DefaultRunnableDecorator.run(DefaultThreadFactory.java:138)
       at java.lang.Thread.run(Thread.java:748)

      My guess is that the exception may occur while sending data in streaming way (e.g., in PipeOutputWriter). We should fix the problem.  

      Attachments

        Issue Links

          Activity

            People

              Unassigned Unassigned
              taegeonum Tae-Geon Um
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: