Tango 7 vs Tango 9.4.1 events issues
Hi,
It seems there are some issues with events between a tango 7 server and a tango 9.4 client. The problem I have observed is that the type of the event attribute received in the event is incorrect. It is OK in the first event received immediately after subscription, but it is wrong in the subsequent events.
To reproduce the problem you can use the attached sources events.tgz. Steps to reproduce:
-
Build the server in a tango 7 machine (I used 7.2.6). You will need to use "make CXXFLAGS_USER=-DCOMPAT" in order to build it. Note the server is built in "~/DeviceServers" directory. Run it.
-
Build the client in a tango 9.4.1 machine. A binary "receiver" is built. Run it.
-
Execute the "SwitchState" of the server. The client will print a line per event. Note that in our case after subscription the first one is correct (19, which is OK according to enum CmdArgType in "tango_const.h", but later events are incorrect (I get 2, which is DevShort according to tango_const.h)
Hints:
- The problem does not happen when the client uses 9.3 versions (I tried with 9.3.4 and 9.3.5)
- The problem does not happen if you run both the server and the client in 9.4.1
- I seems that the problem is not only with DevState type: a colleague reported that he has the same issue with a DevDouble attribute.
I am aware that maybe it is not easy to setup a tango 7 environment. So maybe it is easier for me to test the possible solution to this problem. If you give hints on what may be wrong I can try to run the fix in my system.
Thanks. Regards.