redhawk
redhawk copied to clipboard
Timeout when releasing one component vs. all in IDE Sandbox
Steps to reproduce:
- Open the IDE Sandbox
- Add a SigGen and DataConverter, connecting the two together (dataFloat, for example)
- Start the sandbox
- Stop the sandbox
- Enable TRACE -level logging of the DataConverter
- Release only the DataConverter, observe the log:
2020-05-05 12:56:54 TRACE DataConverter_1.user.pushDataService:130 - pushDataService|Types: Port: N6bulkio14OutNumericPortIN6BULKIO10dataDoubleEEE In: f Out: d
2020-05-05 12:56:57 TRACE DataConverter_1.system.PortSupplier:96 - Deactivating port 'dataChar_in'
2020-05-05 12:56:57 TRACE DataConverter_1.system.PortSupplier:96 - Deactivating port 'dataChar_out'
2020-05-05 12:56:57 TRACE DataConverter_1.system.PortSupplier:96 - Deactivating port 'dataDouble_in'
2020-05-05 12:56:57 TRACE DataConverter_1.system.PortSupplier:96 - Deactivating port 'dataDouble_out'
2020-05-05 12:56:57 TRACE DataConverter_1.system.PortSupplier:96 - Deactivating port 'dataFloat_in'
The above line will hang for a long time until the IDE shows Problem Occurred dialog with the explanation that client timeout reached. If you press OK and then attempt to release only the DataConverter again, the remaining ports will be deactivated and the component will ultimately exit (with the log showing SIGABRT or some other non-zero exit code).
If you repeat the above steps but release the sandbox all at once, everything is fine. You can repeat the above steps and delete the connection between the two components before releasing the DataConverter the first time (step 6) and the problem will not appear to exist either. (At least by appearances in each case -- there are no error dialogs, etc. visible to the user.)
Edit: I've observed this behavior on both 2.2.5 and 2.2.6.