But if I add also database address I start getting EventTimeout errors.
In [2]: PyTango.DeviceProxy("localhost:10000/sys/tg_test/1").subscribe_event("double_scalar", PyTango.EventType.CHANGE_EVENT, PyTango.utils.EventCallBack())
2016-11-25 12:13:10.428639 SYS/TG_TEST/1 DOUBLE_SCALAR CHANGE [ATTR_VALID] 214.699918216
2016-11-25 12:13:22.403601 SYS/TG_TEST/1 DOUBLE_SCALAR CHANGE [API_EventTimeout] Event channel is not responding anymore, maybe the server or event system is down
2016-11-25 12:13:22.404218 SYS/TG_TEST/1 DOUBLE_SCALAR IDL5_CHANGE [ATTR_VALID] 198.949672514
2016-11-25 12:13:32.413914 SYS/TG_TEST/1 DOUBLE_SCALAR CHANGE [API_EventTimeout] Event channel is not responding anymore, maybe the server or event system is down
2016-11-25 12:13:32.414499 SYS/TG_TEST/1 DOUBLE_SCALAR IDL5_CHANGE [ATTR_VALID] 187.226889937
2016-11-25 12:13:42.432173 SYS/TG_TEST/1 DOUBLE_SCALAR CHANGE [API_EventTimeout] Event channel is not responding anymore, maybe the server or event system is down
It’s a problem, since for example Taurus works that way.
I have Tango 9.2.2, omniORB 4.1.7 and ZeroMQ 4.1.4.
I managed to reproduce your problem.
If you set TANGO_HOST environment variable to localhost:<port_number>, and do not use the Tango Fully Qualified Domain Name (FQDN) in your client when you subscribe to events, the events work as expected.
If you use a FQDN starting with localhost:<port_number>, you get the problem.
I think if you use your real machine name in the FQDN, it should work.
It seems like when you set TANGO_HOST to localhost:<port_number> and do not use the FQDN, TANGO is replacing localhost with the real machine name at the time of the subscription. It looks like this step is not done when localhost is used in the FQDN.
This is a problem because the device server will send events with a name containing the real machine name, not localhost.
Then, there is a mismatch between what the client is expecting and what the server is sending, so the heartbeat mechanism does not work as expected in this specific case.
Try using your machine name in the FQDN and please avoid using localhost in the FQDN until we fix this problem.
Hoping this helps.