Fixes https://emqx.atlassian.net/browse/EMQX-9864 Setting a very large interval can cause `erlang:start_timer` to crash. Also, setting auto_restart_interval or health_check_interval to "0s" causes the state machine to be in loop as time 0 is handled separately: | state_timeout() = timeout() | integer() | (...) | If Time is relative and 0 no timer is actually started, instead the the | time-out event is enqueued to ensure that it gets processed before any | not yet received external event. from "https://www.erlang.org/doc/man/gen_statem.html#type-state_timeout" Therefore, both fields are now validated against the range [1ms, 1h], which doesn't cause above issues.
95 B
95 B
Validate Health Check Interval and Auto Restart Interval against the range from 1ms to 1 hour.