говорит, что current_function: {:gen, :do_call, 4}
Насколько я понял он завис на GenServer.call()
Можно ли как-то вытащить стектрейс, чтобы понять где именно находится этот злополучный call?
Обычно в GenServer.call есть таймаут (только если не указано обратное)
обычно да, но видимо тут не обычно.
Стектрейс, я думаю, нельзя вытащить, потому что внутри gen находится огромный луп Можно посмотреть state и понять что именно делал процесс перед GenServer.call
сам зависший процесс не является генсервером, разве у такого процесса есть state?
А чем он является?
Task.start_link()
Внутри таска GenServer.call(_, _, :infinity) ? Так не должно быть
К сожалению в самом коде нет такого, видимо где-то в вызываемых функциях, понять бы в каких.
element(2, process_info(<сюда PID процесса>, backtrace)).
И? а что мешает в iex это сделать, только вызов оформить "по-эликсировски".
Обсуждают сегодня