paulscherrerinstitute / pcaspy

Portable Channel Access Server in Python
BSD 3-Clause "New" or "Revised" License
32 stars 24 forks source link

Subscribers to alarm state updates are not notified #13

Closed GoogleCodeExporter closed 8 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?

1. Run example/alarm_severity.py.
2. Create an alarm subscriber by running "camonitor -m a MTEST:STATUS".
3. Put the MTEST:STATUS PV into an alarm state with "caput MTEST:STATUS ERROR" 
(this causes the alarm state to be STATE_ALARM and the severity to be 
MAJOR_ALARM).

What is the expected output?

The camonitor process should output the following:

MTEST:STATUS                   2015-01-29 06:47:50.170841 ERROR STATE MAJOR

What do you see instead?

Nothing - the subscriber does not get a notification that the PV is alarming.

What version of the product are you using? On what operating system?

pcaspy v0.5.1 on Mac OS X 10.9 and CentOS release 5.10.

Please provide any additional information below.

This relates to the ca_create_subscription function in libca 
[http://www.aps.anl.gov/epics/base/R3-14/12-docs/CAref.html#ca_add_event]. 
Clients can elect to receive only alarm state changes using the DBE_ALARM mask. 
pcaspy doesn't trigger these events for some reason.

Original issue reported on code.google.com by robbie.c...@gmail.com on 28 Jan 2015 at 8:56

GoogleCodeExporter commented 9 years ago
Currently it only post DBE_VALUE | DBE_LOG. Since alarm/status change is always 
accompanied by a value change, this is never noticed.
Thanks for reporting. I will look for a fix.

Original comment by xiaoqian...@gmail.com on 29 Jan 2015 at 3:01

xiaoqiangwang commented 8 years ago

Fix in 0.6.0