The watchdog module is useful when the responsiveness of the system is important.
The watchdog module spawns a thread and continuously checks the value of an internal variable. The variable is updated periodically by a separate tarantool fiber.
The watchdog observation period is hardcoded to be 200ms.
The fiber update period equals to 1/4 of the timeout parameter.
Depending of precise timings, the real timeout event may occur
from timeout to 1.25 * timeout seconds.
Whenever a problem with an update fiber occurs the watchdog thread
performs exit(6) if coredump is disabled otherwise abort().
The problem may be caused by using blocking signals or
by mistakes in other modules (e.g. while true ... end)
$ tarantoolctl rocks install watchdoglocal watchdog = require('watchdog')
watchdog.start(1) -- timeout in seconds (double)
watchdog.start(1, true) -- timeout in seconds (double) and coredump is enabledSee: https://github.com/tarantool/luajit/blob/tarantool/src/luajit-gdb.py