Lost device attributes when restart Server

Hello,

I have created a Tango Device Server with 4 devices that have dynamic attributes.

I want to restart all devices in the device server.
According to the doc, that is the function of DevRestartServer.
But when I call:
Tango::Util::instance()->get_dserver_device()->restart_server();
Only my first device gets its attributes back.
The 3 other devices restart with no attributes.

Did I miss something or is there an issue in restart_server function ?
Edited 6 years ago
Hi Marc,

Could you please give us more details on the versions you are using?
How did you install Tango?
What version of the Tango C++ library are you using?
What version of Pogo are you using?
In which part of the code are you creating the dynamic attributes?
If possible, could you please send us a simple piece of code reproducing the problem?
I tried to reproduce the issue with Tango 9.2.5a and POGO 9.6.3 with a simple case (creating the dynamic attributes in add_dynamic_attributes() method) but I did not see the issues you were reporting here.

Kind regards,
Reynald
Rosenberg's Law: Software is easy to make, except when you want it to do something new.
Corollary: The only software that's worth making is software that does something new.
Hello,

I have built the libraries from source code with theses versions :
Zeromq-4.0.5, omniORB-4.2.1-2, tango-9.2.2
For Tango, i used the following option : configure –prefix=/opt/tango –disable-jpegmmx
Pogo is in version 9.2.4.
To create dynamic attribute, i used the example : how-add-dynamic-attributes-device-class

I am trying an alternative: to add attributes dynamically after device creation. It works. But I have a crash when I:
- restart server
- addAttribute to the devices
- device->setState(Tango::RUNNING) : problem of event subscription at this point

So I will update to Tango 9.2.5a and generate again my DynAttr class.
If I still have the issue, I will send you the piece of code.
The loss of my attributes after restarting the server was due to spaces in attribute names.
I have tested also with spaces in device name. My attributes are also lost.

I have noted that pogo remove spaces for attributes. Is it forbidden ?

I will add some checkings for names in my device/attribute editor.
As far as I know, spaces are indeed forbidden in attribute names and device names.
This is why Pogo is removing the spaces.
Rosenberg's Law: Software is easy to make, except when you want it to do something new.
Corollary: The only software that's worth making is software that does something new.
 
Register or login to create to post a reply.