diff options
| -rwxr-xr-x[-rw-r--r--] | scripts/rabbitmq-defaults | 1 | ||||
| -rwxr-xr-x | scripts/rabbitmq-server | 16 | ||||
| -rw-r--r-- | src/rabbit_disk_monitor.erl | 2 |
3 files changed, 17 insertions, 2 deletions
diff --git a/scripts/rabbitmq-defaults b/scripts/rabbitmq-defaults index bccd0d7435..1505ce0f00 100644..100755 --- a/scripts/rabbitmq-defaults +++ b/scripts/rabbitmq-defaults @@ -43,6 +43,5 @@ ADVANCED_CONFIG_FILE=${SYS_PREFIX}/etc/rabbitmq/advanced SCHEMA_DIR=${RABBITMQ_HOME}/priv/schema PLUGINS_DIR="${RABBITMQ_HOME}/plugins" -IO_THREAD_POOL_SIZE=64 CONF_ENV_FILE=${SYS_PREFIX}/etc/rabbitmq/rabbitmq-env.conf diff --git a/scripts/rabbitmq-server b/scripts/rabbitmq-server index b5c39337a8..1d464a43f3 100755 --- a/scripts/rabbitmq-server +++ b/scripts/rabbitmq-server @@ -151,7 +151,23 @@ fi # there is no other way of preventing their expansion. set -f +# Lazy initialization of threed pool size - if it wasn't set +# explicitly. This parameter is only needed when server is starting, +# so it makes no sense to do this calculations in rabbitmq-env or +# rabbitmq-defaults scripts. +ensure_thread_pool_size() { + if [ -z "${RABBITMQ_IO_THREAD_POOL_SIZE}" ]; then + RABBITMQ_IO_THREAD_POOL_SIZE=$( + ${ERL_DIR}erl -pa "$RABBITMQ_EBIN_ROOT" \ + -boot "${CLEAN_BOOT_FILE}" \ + -noinput \ + -s rabbit_misc report_default_thread_pool_size + ) + fi +} + start_rabbitmq_server() { + ensure_thread_pool_size check_start_params && RABBITMQ_CONFIG_FILE=$RABBITMQ_CONFIG_FILE \ exec ${ERL_DIR}erl \ diff --git a/src/rabbit_disk_monitor.erl b/src/rabbit_disk_monitor.erl index 124306487e..88a8096fd4 100644 --- a/src/rabbit_disk_monitor.erl +++ b/src/rabbit_disk_monitor.erl @@ -235,7 +235,7 @@ parse_free_win32(CommandResult) -> list_to_integer(lists:reverse(Free)). interpret_limit({mem_relative, Relative}) - when is_float(Relative), Relative < 1 -> + when is_float(Relative) -> round(Relative * vm_memory_monitor:get_total_memory()); interpret_limit(Absolute) -> case rabbit_resource_monitor_misc:parse_information_unit(Absolute) of |
