When multiple alarms are shelved at the same time there is an entry in the alarm journal alarm_event_data table that records the following value in the strvalue column:
(path_or_disppath:matches_any [* (…)
where * is a list of paths for all the alarms that were shelved. In my case it only takes shelving three alarms together for the strvalue of this entry to go beyond the default 255 characters allowed in the database for this column. Thus the write to the database fails and the update query sits in the quarantine.
It is very reasonable to expect users to shelve more than one alarm simultaneously and that this could be a regular occurring problem. Rather than having to manually modify the datatype of the strvalue column in the database is it possible to adjust how this event is recorded in the alarm_event_data table or at least have ignition use a larger datatype when creating this table in the first place?