[ 
https://issues.apache.org/jira/browse/PLC4X-158?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16991205#comment-16991205
 ] 

Sebastian Wiendl commented on PLC4X-158:
----------------------------------------

[~julian.feinauer]: The updated version has been running fine all weekend long. 
Thats ok for me for the moment. I think forcing/documenting the use of the 
pooled driver manager is sufficient for the moment.

Can i simply resolve this issue?

> Too many open files after less than 24 hours of Scraper use
> -----------------------------------------------------------
>
>                 Key: PLC4X-158
>                 URL: https://issues.apache.org/jira/browse/PLC4X-158
>             Project: Apache PLC4X
>          Issue Type: Bug
>          Components: Util-Scraper
>    Affects Versions: 0.5.0
>            Reporter: Sebastian Wiendl
>            Assignee: Julian Feinauer
>            Priority: Blocker
>
> After less than 24 hours of scraping 9 fields every 100 ms PLC4J starts 
> spewing the following exceptions:{code}2019-12-03 12:35:42.352  WARN 7481 --- 
> [triggeredscraper-scheduling-thread-9] o.a.p.j.s.t.TriggeredScraperTask       
>   : Exception during scraping of Job example, Connection-Alias S7: 
> Error-message: null - for stack-trace change logging to DEBUG
> 2019-12-03 12:35:42.352  INFO 7481 --- [triggeredscraper-executor-thread-5] 
> o.a.p.j.s7.connection.S7PlcConnection    : Setting up S7 Connection with: 
> host-name 172.30.74.65, rack 0, slot 0, pdu-size 1024, max-amq-caller 8, 
> max-amq-callee 8
> 2019-12-03 12:35:42.355  WARN 7481 --- [triggeredscraper-executor-thread-4] 
> o.a.p.j.s.t.TriggeredScraperImpl         : Unable to instantiate connection 
> to s7://172.30.74.65/0/0
> org.apache.plc4x.java.api.exceptions.PlcConnectionException: 
> org.apache.plc4x.java.api.exceptions.PlcConnectionException: Error creating 
> channel.
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager.getConnection(PooledPlcDriverManager.java:117)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager.getConnection(PooledPlcDriverManager.java:100)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.scraper.triggeredscraper.TriggeredScraperImpl.lambda$getPlcConnection$2(TriggeredScraperImpl.java:300)
>  ~[plc4j-scraper-0.5.0.jar!/:0.5.0]
>       at 
> java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)
>  ~[na:1.8.0_201]
>       at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>  ~[na:1.8.0_201]
>       at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>  ~[na:1.8.0_201]
>       at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_201]
> Caused by: org.apache.plc4x.java.api.exceptions.PlcConnectionException: Error 
> creating channel.
>       at 
> org.apache.plc4x.java.tcp.connection.TcpSocketChannelFactory.createChannel(TcpSocketChannelFactory.java:87)
>  ~[plc4j-protocol-driver-base-tcp-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.base.connection.NettyPlcConnection.connect(NettyPlcConnection.java:67)
>  ~[plc4j-protocol-driver-base-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.PlcDriverManager.getConnection(PlcDriverManager.java:73)
>  ~[plc4j-api-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager.access$201(PooledPlcDriverManager.java:37)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager$1.create(PooledPlcDriverManager.java:89)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager$1.create(PooledPlcDriverManager.java:82)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       at 
> org.apache.commons.pool2.BaseKeyedPooledObjectFactory.makeObject(BaseKeyedPooledObjectFactory.java:60)
>  ~[commons-pool2-2.7.0.jar!/:2.7.0]
>       at 
> org.apache.commons.pool2.impl.GenericKeyedObjectPool.create(GenericKeyedObjectPool.java:1041)
>  ~[commons-pool2-2.7.0.jar!/:2.7.0]
>       at 
> org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:342)
>  ~[commons-pool2-2.7.0.jar!/:2.7.0]
>       at 
> org.apache.commons.pool2.impl.GenericKeyedObjectPool.borrowObject(GenericKeyedObjectPool.java:265)
>  ~[commons-pool2-2.7.0.jar!/:2.7.0]
>       at 
> org.apache.plc4x.java.utils.connectionpool.PooledPlcDriverManager.getConnection(PooledPlcDriverManager.java:115)
>  ~[plc4j-connection-pool-0.5.0.jar!/:0.5.0]
>       ... 6 common frames omitted
> Caused by: java.lang.IllegalStateException: failed to create a child event 
> loop
>       at 
> io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:88)
>  ~[netty-common-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:58)
>  ~[netty-common-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.MultithreadEventLoopGroup.<init>(MultithreadEventLoopGroup.java:52)
>  ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:88) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:83) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:64) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:52) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.<init>(NioEventLoopGroup.java:44) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> org.apache.plc4x.java.tcp.connection.TcpSocketChannelFactory.createChannel(TcpSocketChannelFactory.java:58)
>  ~[plc4j-protocol-driver-base-tcp-0.5.0.jar!/:0.5.0]
>       ... 16 common frames omitted
> Caused by: io.netty.channel.ChannelException: failed to open a new selector
>       at 
> io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:181) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at io.netty.channel.nio.NioEventLoop.<init>(NioEventLoop.java:147) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:138) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.channel.nio.NioEventLoopGroup.newChild(NioEventLoopGroup.java:37) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       at 
> io.netty.util.concurrent.MultithreadEventExecutorGroup.<init>(MultithreadEventExecutorGroup.java:84)
>  ~[netty-common-4.1.43.Final.jar!/:4.1.43.Final]
>       ... 24 common frames omitted
> Caused by: java.io.IOException: Too many open files
>       at sun.nio.ch.IOUtil.makePipe(Native Method) ~[na:1.8.0_201]
>       at sun.nio.ch.EPollSelectorImpl.<init>(EPollSelectorImpl.java:65) 
> ~[na:1.8.0_201]
>       at 
> sun.nio.ch.EPollSelectorProvider.openSelector(EPollSelectorProvider.java:36) 
> ~[na:1.8.0_201]
>       at 
> io.netty.channel.nio.NioEventLoop.openSelector(NioEventLoop.java:179) 
> ~[netty-transport-4.1.43.Final.jar!/:4.1.43.Final]
>       ... 28 common frames omitted
> {code}Any ideas whats causing this and how to fix?



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to