qtvbwfn commented on issue #1101:
URL: https://github.com/apache/plc4x/issues/1101#issuecomment-1848312047

   > ### What happened?
   > The OPC-UA driver seem to leak memory when closing a connection object. 
This issue sooner or later lead to application crash with OOM error. Workaround 
would be to reuse connection objects, but then we face the issue #1100, which I 
believe renders a fix for this pretty urgent.
   > 
   > ![Screenshot from 2023-09-23 
14-14-10](https://private-user-images.githubusercontent.com/2440418/270109529-17d5329b-e1ed-459c-bd1f-5d3339b22982.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MDIxMDg2ODcsIm5iZiI6MTcwMjEwODM4NywicGF0aCI6Ii8yNDQwNDE4LzI3MDEwOTUyOS0xN2Q1MzI5Yi1lMWVkLTQ1OWMtYmQxZi01ZDMzMzliMjI5ODIucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQUlXTkpZQVg0Q1NWRUg1M0ElMkYyMDIzMTIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyMzEyMDlUMDc1MzA3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YWJhNzhlZjEzM2NlMzMxZjQyZTc2MWY5YzQxNGNjMzU4YzliMjIyNjdiMWZjMTllMmQ1MTZiMzM1MDRhZDRlYSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.Or8mol9RudsyWBXoXcLdNGRsuCZqq7ephJ90EK2hadE)
   > 
   > Example code to reproduce the issue:
   > 
   > ```
   > PlcDriverManager driverManager = new PlcDriverManager();
   > 
   > AtomicBoolean running = new AtomicBoolean(true);
   > Runtime.getRuntime().addShutdownHook(new Thread(() -> running.set(true)));
   > 
   > while (running.get()) {
   >     PlcConnection connection = 
driverManager.getConnection("opcua:tcp://127.0.0.1:40185/milo?discovery=false");
   >     try {
   >         Thread.sleep(100);
   >     } finally {
   >         connection.close();
   >     }
   > }
   > ```
   > 
   > ## Some additional charts
   > ![Screenshot from 2023-09-23 
14-23-14](https://private-user-images.githubusercontent.com/2440418/270109655-1384d3d8-63b8-4abb-ac75-4843d9bf72b2.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MDIxMDg2ODcsIm5iZiI6MTcwMjEwODM4NywicGF0aCI6Ii8yNDQwNDE4LzI3MDEwOTY1NS0xMzg0ZDNkOC02M2I4LTRhYmItYWM3NS00ODQzZDliZjcyYjIucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQUlXTkpZQVg0Q1NWRUg1M0ElMkYyMDIzMTIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyMzEyMDlUMDc1MzA3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9YjJkOTMwOTllZTgzYmZhNTA5Mzc2ZDM4MzkwODVkNjk1YjczZjNhNDJlN2QyNDY1ZDhkOTlkNTdlNTgzMjMxOCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.pnRLv3al4dwtHBIkkc1d7GZhPNJfg0VCbzhDZybdlAI)
   > 
   > ![Screenshot from 2023-09-23 
14-08-05](https://private-user-images.githubusercontent.com/2440418/270109667-0a50afb6-3d8d-436f-afcb-a3bb7253f1f1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MDIxMDg2ODcsIm5iZiI6MTcwMjEwODM4NywicGF0aCI6Ii8yNDQwNDE4LzI3MDEwOTY2Ny0wYTUwYWZiNi0zZDhkLTQzNmYtYWZjYi1hM2JiNzI1M2YxZjEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQUlXTkpZQVg0Q1NWRUg1M0ElMkYyMDIzMTIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyMzEyMDlUMDc1MzA3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MTg4YmU3MmEyNzBhOTBiYTViOWEwNDE3ZGRhNDI0OWEzOTJjNzdjNjIyZTZmZTc5MGQ4OTcyZmY4ZmU2OGY5MyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.aPs8eXTiltN8VRlCpJFGKcmgiufK4R3EnHcbgw4iJyA)
   > 
   > ![Screenshot from 2023-09-23 
14-10-16](https://private-user-images.githubusercontent.com/2440418/270109932-e98e765c-79a5-40bc-b342-4c4acd9c9337.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MDIxMDg2ODcsIm5iZiI6MTcwMjEwODM4NywicGF0aCI6Ii8yNDQwNDE4LzI3MDEwOTkzMi1lOThlNzY1Yy03OWE1LTQwYmMtYjM0Mi00YzRhY2Q5YzkzMzcucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQUlXTkpZQVg0Q1NWRUg1M0ElMkYyMDIzMTIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyMzEyMDlUMDc1MzA3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MjdjNzQ3NWQzYWMyODBkM2M2YzM4N2M1ODhhYmZmODc2OTJlZmM5MjBiZGZkOTc2MTA0M2RlZGRkODQzZGNjYiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.UX_JnzyOxxLhhrS3Sarbn0MYR_Y5KyzIVGXD7Ce2qFI)
   > 
   > ![Screenshot from 2023-09-23 
14-10-25](https://private-user-images.githubusercontent.com/2440418/270109692-913b2138-0571-4cff-a75b-9ebedebb1f56.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTEiLCJleHAiOjE3MDIxMDg2ODcsIm5iZiI6MTcwMjEwODM4NywicGF0aCI6Ii8yNDQwNDE4LzI3MDEwOTY5Mi05MTNiMjEzOC0wNTcxLTRjZmYtYTc1Yi05ZWJlZGViYjFmNTYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQUlXTkpZQVg0Q1NWRUg1M0ElMkYyMDIzMTIwOSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyMzEyMDlUMDc1MzA3WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NDcxYjVjMTBiN2YyYzk3MTIyZmExNWY5ZTZhMjA4N2MxZTk2ZmIxOWI1YzZkYjk3N2I5YjZlNDc1MmY1YTE0MSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.6MuyzqlNR9Fj74qe2hbD5Y2GWbQrgAPZrr_k5bptWfw)
   > 
   > ## Logs
   > 
[logs-before-oom.txt](https://github.com/apache/plc4x/files/12706498/logs-before-oom.txt)
   > 
   > ## Heap dumps
   > * 
[MemoryLeakDemo_1045304_23_09_2023_12_41_27.zip](https://github.com/apache/plc4x/files/12706514/MemoryLeakDemo_1045304_23_09_2023_12_41_27.zip)
   > * 
[MemoryLeakDemo_1045304_23_09_2023_13_02_21.zip](https://github.com/apache/plc4x/files/12706515/MemoryLeakDemo_1045304_23_09_2023_13_02_21.zip)
   > * 
[MemoryLeakDemo_1045304_23_09_2023_14_05_15.zip](https://github.com/apache/plc4x/files/12706519/MemoryLeakDemo_1045304_23_09_2023_14_05_15.zip)
   > 
   > ### Version
   > v0.10.0
   > 
   > ### Programming Languages
   > * [x]  plc4j
   > * [ ]  plc4go
   > * [ ]  plc4c
   > * [ ]  plc4net
   > 
   > ### Protocols
   > * [ ]  AB-Ethernet
   > * [ ]  ADS /AMS
   > * [ ]  BACnet/IP
   > * [ ]  CANopen
   > * [ ]  DeltaV
   > * [ ]  DF1
   > * [ ]  EtherNet/IP
   > * [ ]  Firmata
   > * [ ]  KNXnet/IP
   > * [ ]  Modbus
   > * [x]  OPC-UA
   > * [ ]  S7
   hi:
       It took me about three days, and I have fixed the thread and memory 
overflow issues in the V0.11.0 version. Can you create a new branch 
0.11.1-SNAPSHOT for me to submit my code?
    The main issue is that the keepAlive in SecureChannel causes the channel to 
be occupied for a long time without being released.
   @chrisdutz @takraj @hutcheb 
   
![image](https://github.com/apache/plc4x/assets/5848026/4c6cda1e-4834-43c9-99b5-456f61cd543a)
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: dev-unsubscr...@plc4x.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org

Reply via email to