diff options
author | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2004-03-15 18:45:05 +0000 |
---|---|---|
committer | hugetoad <hugetoad@97f52cf1-0a1b-0410-bd0e-c28be96e8082> | 2004-03-15 18:45:05 +0000 |
commit | e1c7208663b030ba141463b317db95014282cd82 (patch) | |
tree | a3a6a6df494bd06112bda7bf1cb136d02cb1f036 /include/functions.c | |
parent | 18e3f391e24c5924076f55e2ae1c3ab6c48ba922 (diff) | |
download | zabbix-e1c7208663b030ba141463b317db95014282cd82.tar.gz zabbix-e1c7208663b030ba141463b317db95014282cd82.tar.xz zabbix-e1c7208663b030ba141463b317db95014282cd82.zip |
- fixed serious issue with sending of alerts (Alexei)
git-svn-id: svn://svn.zabbix.com/trunk@1297 97f52cf1-0a1b-0410-bd0e-c28be96e8082
Diffstat (limited to 'include/functions.c')
-rw-r--r-- | include/functions.c | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/include/functions.c b/include/functions.c index 6a084b89..acf88b7c 100644 --- a/include/functions.c +++ b/include/functions.c @@ -1156,9 +1156,9 @@ void update_triggers(int itemid) DB_RESULT *result; int i; -/* int prevvalue;*/ + int prevvalue; - zabbix_log( LOG_LEVEL_DEBUG, "In update_triggers (%d)", itemid); + zabbix_log( LOG_LEVEL_DEBUG, "In update_triggers [%d]", itemid); /* Does not work for PostgreSQL */ /* sprintf(sql,"select t.triggerid,t.expression,t.status,t.dep_level,t.priority,t.value from triggers t,functions f,items i where i.status<>3 and i.itemid=f.itemid and t.status=%d and f.triggerid=t.triggerid and f.itemid=%d group by t.triggerid,t.expression,t.dep_level",TRIGGER_STATUS_ENABLED,sucker_num);*/ @@ -1184,7 +1184,10 @@ void update_triggers(int itemid) } /* Oprimise a little bit */ -/* prevvalue=DBget_prev_trigger_value(trigger.triggerid);*/ +/* Comment! */ + prevvalue=DBget_prev_trigger_value(trigger.triggerid); + + zabbix_log( LOG_LEVEL_DEBUG, "b trigger.value prevvalue [%d] [%d] [%d]", b, trigger.value, prevvalue); if(TRIGGER_VALUE_TRUE == b) { @@ -1197,9 +1200,9 @@ void update_triggers(int itemid) || ( (trigger.value == TRIGGER_VALUE_UNKNOWN) && -/* Oprimise a little bit */ -/* (prevvalue == TRIGGER_VALUE_FALSE)*/ - (DBget_prev_trigger_value(trigger.triggerid) == TRIGGER_VALUE_FALSE) +/* Optimise a little bit. This optimisation does not work because DBupdate_trigger_value may add alarm! */ + (prevvalue == TRIGGER_VALUE_FALSE) +/* (DBget_prev_trigger_value(trigger.triggerid) == TRIGGER_VALUE_FALSE)*/ )) { now = time(NULL); @@ -1211,6 +1214,7 @@ void update_triggers(int itemid) update_services(trigger.triggerid, trigger.priority); } + } if(TRIGGER_VALUE_FALSE == b) @@ -1220,14 +1224,13 @@ void update_triggers(int itemid) now = time(NULL); DBupdate_trigger_value(trigger.triggerid,TRIGGER_VALUE_FALSE,now); } - if((trigger.value == TRIGGER_VALUE_TRUE) || ( (trigger.value == TRIGGER_VALUE_UNKNOWN) && -/* Oprimise a little bit */ -/* (prevvalue == TRIGGER_VALUE_TRUE)*/ - (DBget_prev_trigger_value(trigger.triggerid) == TRIGGER_VALUE_TRUE) +/* Optimise a little bit. This optimisation does not work because DBupdate_trigger_value may add alarm! */ + (prevvalue == TRIGGER_VALUE_TRUE) +/* (DBget_prev_trigger_value(trigger.triggerid) == TRIGGER_VALUE_TRUE)*/ )) { /* apply_actions(trigger.triggerid,0);*/ |