Dear Tango experts!
At Alba we plan to upgrade our beamlines to Tango 9. Currently, in two of them, we use Tango 8 and in the rest Tango 7 (at the end of the message you can find the exact stack).
Our plan is to do it gradually, following this order:
(below Tango7/8 means that in the case of some beamlines this will be Tango 7 and in the case of other beamlines Tango 8, but never a mix of both)
- Migrate the Tango DB to Tango 9 and run it with Tango 9 maintaining all servers and clients with Tango 7/8.
- Run Sardana server and Sardana clients (Taurus GUIs) with Tango 9 maintaining the rest of the servers and clients with Tango 7/8
- Gradually migrate the rest of the control system (Vacuum, Alarms, DAQ, Detectors… ) servers and clients to Tango 9.
The above plan assumes running a mix of Tango versions. To our opinion the critical points are:
- In point 1 we run Tango 7/8 servers and clients against the Tango 9 database
- In point 2 we have:
[list] - Tango 9 Sardana server which creates DeviceProxies to Tango 7/8 devices and may read/write/subscribe attributes. The same server will create proxies to Tango 9 devices as well.
- Tango 9 Sardana clients (Taurus GUIs) which creates DeviceProxies to Tango 7/8 devices and may read/write/subscribe attributes. The same clients will create proxies to Tango 9 devices as well.
[/list]
In principle this should work cause Tango 9 is backwards compatible but, just in case, we would like to ask if you have some advices, or maybe you run such a hybrid systems? What is your experience about it? If yes please report the exact stack. Our stack is:
Tango 7:
- libtango 7.2.6 (with the official patches applied)
- liblog4tango.so 4.0.3
- libCOS4 1.5
- libCOSDynamic4 1.5
- libomniCodeSets4 1.5
- libomniConnectionMgmt4 1.5
- libomniDynamic4 1.5
- libomniORB4 1.5
- libomniThread 3.4
- libCOSNotify4.so 0
- libAttNotification4.so 0
- notifd 2.1
- PyTango 7.2.3
- Jive 4.19
- Astor 5.4.1
Tango 8:
- libtango 8.1.2 (with the official patches applied)
- liblog4tango.so 5.0.0
- libCOS4 1.6
- libCOSDynamic4 1.6
- libomniCodeSets4 1.6
- libomniConnectionMgmt4 1.6
- libomniDynamic4 1.6
- libomniORB4 1.6
- libomniThread 3.4
- libzmq 3.0.0
- PyTango 8.1.4
- Jive 4.31
- Astor 6.4.6
Tango 9:
- libtango 9.2.5 (with patches for tangoCpp #354, #415, #444)
- liblog4tango.so 5.0.1
- libCOS4 1.6
- libCOSDynamic4 1.6
- libomniCodeSets4 1.6
- libomniConnectionMgmt4 1.6
- libomniDynamic4 1.6
- libomniORB4 1.6
- libomnisslTP4.so 1.6
- libomniThread 3.4
- libzmq 5.1.1
- PyTango 9.2.0
- Jive 7.10
- Astor 7.0.9
Thanks in advance for sharing your opinion!