yarp
yarp copied to clipboard
Port/connection left open by python modules
While terminating a yarp module in python with CTRL_C, I noticed a strange situation. Let's consider the following two ports, with a connection from 1 to 2. 1- /audioRecorderWrapper/audio:o (the port opened by a yarp c++ module) 2- /vad/audio:i (the port opened by a python module)
After closing the python module:
yarp ping /audioRecorderWrapper/audio:o
This is "/audioRecorderWrapper/audio:o" at "tcp://192.168.100.30:10388/"
There is an output connection from "/audioRecorderWrapper/audio:o" to "/vad/audio:i" using "fast_tcp+recv.portmonitor+type.dll+file.microphoneFilter"
There is an input connection from "<ping>" to "/audioRecorderWrapper/audio:o" using text_ack
yarp ping /vad/audio:i
This is "/vad/audio:i" at "tcp://192.168.100.177:10394/"
There are no outgoing connections
There is an input connection from "<ping>" to "/vad/audio:i" using text_ack
you can notice that even if the python module is terminated, /vad/audio:i is still active. Additionally, the report on the connection is asymmetric (pinging the two ports gives different results), which something that should not happen. Additionally, and more importantly, yarpmanager gui which is based on the output yarp ping (i suppose) still marks the two ports connected. This may cause a lof of problems!!
After a couple of minutes, the port is correctly removed (maybe bay a python garbage collector running in background?)
yarp ping /audioRecorderWrapper/audio:o
This is "/audioRecorderWrapper/audio:o" at "tcp://192.168.100.30:10388/"
There are no outgoing connections
There is an input connection from "<ping>" to "/audioRecorderWrapper/audio:o" using text_ack
This is issue a preliminary observation on a potential problem about controlling yarp connections via yarpmanager. Additionally Investigations on this topic will be reported.