9 Заметки по обновлению для 2.4.1
Проблема конвертации триггеров и вычисляемых элементов данных в новый синтаксис
Патчи обновления базы данных в 2.4.0 автоматически конвертируют существующие триггеры и вычисляемые элементы данных, чтобы использовался новый синтаксис.
Тем не менее, эти патчи имели
проблему, в частности в
макросе низкоуровневого обнаружения символ заменялся "#" на "<>".
Таким образом, {#MACRO} макрос мог быть заменен на {<>MACRO}.
Такая проблема коснулась только тех макросы, которые были независимой
частью выражения, а не частью ключа. Например, выражение
{host:snmp.oid[{#SNMPINDEX}].last()} # {#SNMPVALUE} могло быть
преобразовано в {host:snmp.oid[{#SNMPINDEX}].last()} <> {<>SNMPVALUE}.
В 2.4.1, патчи обновления базы данных исправлены, таким образом обновление с 2.2 на 2.4.1 должно пройти без ошибок. Тем не менее, патчи не исправляют выражения, которые уже были испорчены обновлением с 2.2 на 2.4.0.
Если вы желаете исправить такие поломанные выражения, вы можете начать с поиска какие выражения были повреждены, используя следующие запросы:
select triggerid, expression from triggers where expression like '%{<>%';
select itemid, key_, params from items where type=15 and params like '%{<>%';
Далее вам необходимо заменить в этих выражениях "{<>" на "{#".