ottlukas opened a new issue, #636: URL: https://github.com/apache/plc4x/issues/636
Note: The version is 0.9.1. 1. The document (here)[https://plc4x.apache.org/users/protocols/modbus.html](https://plc4x.apache.org/users/protocols/modbus.html) seems wrong. It tells me the connection string format is: "modbus-tcp:tcp://127.0.0.1:502", but my test code throws exception saying no driver until I change it to "modbus://127.0.0.1". 2. My test code writes (or reads) some value via modbus tcp every 1 second, using short tcp connection (open and close every time). The memory increases every second until out-of-memory. In process monitor I find the thread count increases 1 every time the connection opens, but never releases, althought I consider the `try-block` shall closes it automatically. In fact, I see it calls `connection.close` after the `try-block`. Test code: ``` while (true) { String connectionString = "modbus://127.0.0.1"; try (PlcConnection plcConnection = new PlcDriverManager().getConnection(connectionString)) { PlcWriteRequest.Builder builder = plcConnection.writeRequestBuilder(); builder.addItem("value-1", "holding-register:1:DINT", 30000); builder.addItem("value-2", "holding-register:3:REAL", 3.14); PlcWriteRequest writeRequest = builder.build(); PlcWriteResponse response = writeRequest.execute().get(); for (String fieldName : response.getFieldNames()) { if(response.getResponseCode(fieldName) == PlcResponseCode.OK) { System.out.println("Value[" + fieldName + "]: updated"); } // Something went wrong, to output an error message instead. else { System.out.println("Error[" + fieldName + "]: " + response.getResponseCode(fieldName).name()); } } System.out.println("done"); } Thread.sleep(1000); } ``` It shows the connection is not cleaned properly. I see it's more efficient to do this using long tcp connection (reuse 1 connection or use a pool). But short tcp connection should also work. Imported from Jira [PLC4X-339](https://issues.apache.org/jira/browse/PLC4X-339). Original Jira may contain additional context. Reported by: liangjian. -- 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: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
