Skip to content
This repository was archived by the owner on Jul 8, 2022. It is now read-only.
This repository was archived by the owner on Jul 8, 2022. It is now read-only.

events and TangoAccessControl #507

@egorbe

Description

@egorbe

Hello,
We use TangoAccessControl and I had been experiencing problems with events for a long time. C++/Python clients could sucessfully subscribe to events (i used periodic events) but they stopped arriving after 600 seconds.
It turned out that clients should resubscribe every 200 seconds by executing EventConfirmSubscription command on the corresponding administrative device. However, the command was not in the list of allowed commands for class Dserver so it was silently rejected by TangoAccessControl.
After I added the command to the list of allowed commands, everything starts to work just fine.

MySQL [tango]> select * from property_class where value='EventConfirmSubscription';
+---------+------------------+-------+--------------------------+---------------------+---------------------+---------+
| class   | name             | count | value                    | updated             | accessed            | comment |
+---------+------------------+-------+--------------------------+---------------------+---------------------+---------+
| DServer | AllowedAccessCmd |     2 | EventConfirmSubscription | 2018-12-19 10:38:45 | 2018-12-19 10:38:45 | NULL    |
+---------+------------------+-------+--------------------------+---------------------+---------------------+---------+

I think it would be nice if try/catch block in client/eventkeepalive.cpp would report about denied access instead of silent ommision. Also, I guess the dserver EventConfirmSubscription command should be allowed by default in TANGO database by create/update database scripts.

thanks,
Evgeny

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions