possible process_info(Pid, message_queue_len) degradation
Max Lapshin
max.lapshin@REDACTED
Wed Apr 15 23:16:10 CEST 2020
Hi.
We have a piece of code that does (a bad) thing:
case process_info(whereis(?MODULE), message_queue_len) of
{_, Len} when Len > 150 ->
{error, overloaded};
On 22.1.4 it was working without any visible problems.
On 22.3 we are getting problems. Process that does it is hanging in:
pulsedb_appender:28 delay in writing to wal:
[{erts_internal,await_result,1,[{file,"erts_internal.erl"},{line,122}]},
{pulsedb_wal_writer,write,1,[{file,"pulsedb_wal_writer.erl"},{line,14}]},
Timeout of 3000 milliseconds that was not hit before, now is expired
very often and we see that the calling process is in this new
function.
Question is: could checking process_info message_queue_len become
more expensive in 22.1.3 -> 22.3 update?
More information about the erlang-questions
mailing list