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

Julian Feinauer commented on PLC4X-139:
---------------------------------------

I checked some netty docs and found at least one issue... We create a thread 
pool (worker pool) and never shut it down. I will fix it and see if it helps 
with the bug. 

> PLC4X leaks sockets in case of connection problems
> --------------------------------------------------
>
>                 Key: PLC4X-139
>                 URL: https://issues.apache.org/jira/browse/PLC4X-139
>             Project: Apache PLC4X
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 0.4.0
>            Reporter: Julian Feinauer
>            Assignee: Julian Feinauer
>            Priority: Blocker
>
> See my description on the list: 
> https://lists.apache.org/thread.html/4aa229421668a92275e33643dbc57f2fea29cee7ffcb07891f58c9eb@%3Cdev.plc4x.apache.org%3E
> I created a MWE like that
> {code:java}
> public static void main(String[] args) throws Exception {
>         IntStream.range(0, 100).parallel().forEach(i -> createConnection(i));
>     }
>     private static void createConnection(int i) {
>         System.out.println("trying " + i);
>         try (PlcConnection plcConnection = new 
> PlcDriverManager().getConnection("s7://192.168.167.211/0/0")) {
>         } catch (Exception e) {
>          logger.error("Kann keine Verbindung zu der angegebenen Adresse 
> aufbauen");
>         }
>     }
> {code}
> where the IP is *not reachable*, thus it fails every time.
> When looking at the open sockets with (works on my Mac)
> {code:bash}
> while true; do lsof -p 16843 | wc -l; sleep 10; done
> {code}
> I get the output
> {noformat}
>     1640
>     1640
>     1640
>     1736
>     1736
>     1736
>     1832
>     1832
>     1832
>     1928
>     1928
>     1928
>     2024
>     2024
>     2024
>     2120
>     2120
>     2120
>     2216
>     2216
>     2216
>     2312
>     2312
>     2312
>     2408
>     2408
>     2408
>     2504
>     2504
>     2504
>     2500
> {noformat}
> So this reall sems to be the case.
> I think this could be due to us only propagating the exception but not 
> closing the channel, I will investigate further.



--
This message was sent by Atlassian JIRA
(v7.6.14#76016)

Reply via email to