What is the criticality of rabbit_disk_monitor / could_not_determine_disk_free?

178 views
Skip to first unread message

Itay Angel

unread,
Oct 21, 2023, 7:28:45 AM10/21/23
to rabbitmq-users
Hi all,
We are using RMQ v 3.8.35 (Erland  v 23.2.5) which is installed on a windows server machine. 

I have seen the discussions & commits around  rabbit_disk_monitor / could_not_determine_disk_free but am still wondering : what is it criticality ?

The reason I'm asking is that upgrading on customers' environments is a long process of numerous types of validation vs. our software (and specifically for that version we started developing & deployed while this version was supported).

On our next version we are using 3.11.7 and hopefully it won't happen there.

The terminology seems harsh ('terminating' / 'crash report') yet I believe that an inability to infer disk state shouldn't cause the service itself to crash or lag and a critical outcome could occur only if the disk has a real problem (currently our disk state is fine).

adding a logs lines for emphasis :

2023-10-20 05:33:17.578 [error] <0.21026.8> ** Generic server rabbit_disk_monitor terminating
** Last message in was update
** When Server state == {state,"...../RabbitMQ/data/db/rabbit@XYZ-mnesia",.....................}
** Reason for termination ==
** {could_not_determine_disk_free,[{rabbit_disk_monitor,get_disk_free,2,[{file,"src/rabbit_disk_monitor.erl"},{line,258}]},{rabbit_disk_monitor,internal_update,1,[{file,"src/rabbit_disk_monitor.erl"},{line,217}]},{rabbit_disk_monitor,handle_info,2,[{file,"src/rabbit_disk_monitor.erl"},{line,167}]},{gen_server,try_dispatch,4,[{file,"gen_server.erl"},{line,689}]},{gen_server,handle_msg,6,[{file,"gen_server.erl"},{line,765}]},{proc_lib,init_p_do_apply,3,[{file,"proc_lib.erl"},{line,226}]}]}
2023-10-20 05:33:17.578 [error] <0.21026.8> CRASH REPORT Process rabbit_disk_monitor with 0 neighbours exited with reason: could_not_determine_disk_free in rabbit_disk_monitor:get_disk_free/2 line 258
2023-10-20 05:33:17.578 [error] <0.488.0> Supervisor rabbit_disk_monitor_sup had child rabbit_disk_monitor started with rabbit_disk_monitor:start_link("5GB") at <0.21026.8> exit with reason could_not_determine_disk_free in context child_terminated
2023-10-20 05:33:18.944 [info] <0.9459.17> Enabling free disk space monitoring
2023-10-20 05:33:18.944 [info] <0.9459.17> Disk free limit set to 5000MB
2023-10-20 05:50:16.349 [info] <0.19128.17> accepting AMQP connection <0.19128.17> (1.2.3.4:55102 -> 1.2.3.5:5671)
2023-10-20 05:50:16.349 [error] <0.19128.17> closing AMQP connection <0.19128.17> (1.2.3.4:55102 -> 1.2.3.5:5671):
{bad_header,<<"GET / HT">>}
2023-10-20 05:50:16.393 [info] <0.19133.17> Closing all channels from connection '1.2.3.4:55102 -> 1.2.3.5:5671' because it has been closed

Luke Bakken

unread,
Oct 21, 2023, 11:41:09 AM10/21/23
to rabbitmq-users
Hello,

We can't spend time answering questions about unsupported versions of RabbitMQ. Please upgrade. If you're going to use 3.11.x, use the latest version in that series (3.11.24).

There have been fixes for the disk monitor on Windows.

In your case, no, a "crash" in the disk monitor should not affect RabbitMQ's normal operation.

Itay Angel

unread,
Oct 22, 2023, 2:59:08 AM10/22/23
to rabbitmq-users
Hi Luke, thanks for your quick and informative reply.
Reply all
Reply to author
Forward
0 new messages