Абстракт: при возникновении ошибки в callback-функции теряется сообщение об ошибке.
Баг: подключаем mqtt, подключаемся к серверу, регистрируем функцию как callback, подписываемся на уведомления. Уведомление приходит, функция вызывается. Если в функции ошибка или вызов error, то сообщение об ошибке попадет в лог тарантула в виде "tarantool> 2018-07-03 21:25:30.715 [61663] main/109/lua utils.c:923 E> LuajitError: ", т.е. без текста ошибки.
Код:
local function mqtt_callback(message_id, topic, payload, gos, retain)
error('test')
end
mqtt.wb = mqtt.new("id", true)
local mqtt_ok, mqtt_err = mqtt.wb:connect({host="localhost"})
mqtt.wb:on_message(mqtt_callback)
mqtt.wb:subscribe('/#', 0)
Абстракт: при возникновении ошибки в callback-функции теряется сообщение об ошибке.
Баг: подключаем mqtt, подключаемся к серверу, регистрируем функцию как callback, подписываемся на уведомления. Уведомление приходит, функция вызывается. Если в функции ошибка или вызов error, то сообщение об ошибке попадет в лог тарантула в виде "tarantool> 2018-07-03 21:25:30.715 [61663] main/109/lua utils.c:923 E> LuajitError: ", т.е. без текста ошибки.
Код: