Ad Widget
Collapse
Timestamp момента генерации item
Collapse
X
-
Т.е. раз в 30 секунд делается запрос вида SELECT itemid, max(clock) FROM history GROUP BY itemid, и результат таки сохраняется куда-то. Вот она и временнАя таблица, существование которой я и предполагал. А по ней уже вычисляется функция. Я всех выведу на чистую воду! :-)
Возвращаемся к описанной ситуации - куча айтемов в очереди на обработку. В процессе обработки срабатывает таймер и обновляет эту временнУю таблицу. И... Ну... Э-э-э... Тогда да, если айтемы обрабатываются строго последовательно, то проблем вроде быть не должно. А они точно строго последовательно обрабатываются? :-)Comment
-
Если уж так хочется добраться до сути процесса, то есть еще такая штука, как value cache. Но это несколько иное. А запрос - это и есть часть работы триггерной функции. Select, анализ результата, и как следствие - возможная смена состояния триггера и генерация события.Comment
-
Да нет, не так чтобы очень. Просто желательно представлять себе - какова вероятность того, что этот прием даст какие-то ложные срабатывания в особых условиях. Практически нулевая, или все-таки вполне вероятно.
Ну, наверное, вопрос можно считать закрытым. Спасибо за помощь!Comment
-
Правда, в нашем случае nodata - не единственное условие, поэтому триггер будет пересчитываться не только раз в 30 с, но и при получении значения, об этом позаботится первое условие триггера. Только nodata посчитает, что значение не новое, ибо timestamp древний. И итоговое условие триггера, таким образом, окажется ложным.Comment
Comment