-
Notifications
You must be signed in to change notification settings - Fork 70
Description
We're not entirely sure yet and still digging through the code (both calimero and ours), but it seems there is a synchronization issue in calimero-core 2.5.1. It happens only occasionally and definitely depends on timing.
Please see attached log file for a DEBUG log in HTML format that includes all messages that led up to the problem in an instance last week. We use ManagementClientImpl over a Tunneling connection via a certified IP interface to a DIY device. After a few successful message exchanges, the log contains:
00:17:20.449calimero sends T_ACK message to the device ✔️00:17:20.453calimero sends T_DATA_CONNECTED message to the device ✔️00:17:20.470+00:17:20.471calimero receives confirmation of the T_ACK message ✔️00:17:20.514calimero receives confirmation of the T_DATA_CONNECTED message ✔️00:17:20.526calimero receives T_ACK in response of message sent in step 2 ✔️00:17:20.549calimero receives T_DATA_CONNECTED (some response message from device) ✔️00:17:23.549device repeats the message from step 6 as it did not get an answer within 3 seconds⚠️ Should not have happened, but just a consequence of the underlying issue, see next00:17:24.467calimero throws aKNXTimeoutExceptionsaying "no confirmation reply received for" the message sent in step 2 ❌ This is strange as it logged reception of the confirmation right there in step 4.
To sum it up, calimero writes a log entry about having successfully received the confirmation, but then throws an exception because it thinks it did not receive the confirmation.
Or are we reading the log file incorrectly, missing something else, or just don't get it...? It would be great if you could take a look and help us pinpoint the root cause. Many thanks in advance!