In some cases, when an event is terminated before all notifications have been resolved, xMatters creates notifications that will be resent indefinitely; how do I prevent this?
If this is occurring in your deployment, run the following database query to remove the notifications:
update live_ntfn set state = 'DELINKED' where ntfn_id in (select n.ntfn_id from live_ntfn ln, ntfn n, evs e where ln.ntfn_id = n.ntfn_id and ln.state not like 'DELINKED' and e.status like 'TERMINATE%' and e.ev_id = n.ev_id ); commit;
If you are using an Oracle database, you can schedule the query to be run periodically by executing the following SQL:
--begin -- dbms_scheduler.drop_job('CHECK_TERMINATED_EVS'); --end; --/ BEGIN DBMS_SCHEDULER.CREATE_JOB ( job_name => 'CHECK_TERMINATED_EVS', job_type => 'PLSQL_BLOCK', job_action => 'BEGIN update live_ntfn set state = ''DELINKED'' where ntfn_id in (select n.ntfn_id from live_ntfn ln, ntfn n, evs e where ln.ntfn_id = n.ntfn_id and ln.state not like ''DELINKED'' and e.status like ''TERMINATE%'' and e.ev_id = n.ev_id ); commit; END;', start_date => current_timestamp, repeat_interval => 'FREQ=MINUTELY;INTERVAL=2', enabled => TRUE, comments => 'Ensure that notifications for terminated events are not resent or queried.'); END; / set lin 150 COL JOB_NAME FORMAT a20 col last_start_date format a40 col next_run_date format a40 select job_name, run_count, failure_count, last_start_date, next_Run_Date from user_scheduler_jobs;
JDN-1119 Originally created by Don Clark