It appears that during the conversion to rabbit.schema (and the new cuttlefish config) that total_memory_available_override_value got lost (from https://github.com/rabbitmq/rabbitmq-server/pull/1234).
I _believe_ the following is roughly the schema block necessary, but saying that my Erlang is rusty would be a massive understatement: :sweat_smile:
{mapping, "total_memory_available_override_value", "rabbit.total_memory_available_override_value", [
{datatype, [integer, string]}]}.
(With both integer and string because it supports both a raw bytes value or a unit-ed value like 100M, as noted in the PR which was merged and the docs snippet which describes this value: https://github.com/rabbitmq/rabbitmq-website/blob/12939a7168e268b6ad3df7330b427e7fa27d552f/site/configure.xml#L887-L902, https://github.com/rabbitmq/rabbitmq-server/blob/cbb34bbc93b8353a30739cc5f04a5cda20b727f6/docs/rabbitmq.config.example#L298-L300)
BOOT FAILED
===========
Config file generation failed 02:01:54.539 [error] You've tried to set total_memory_available_override_value, but there is no setting with that name.
02:01:54.539 [error] Did you mean one of these?
02:01:54.572 [error] memory_monitor_interval
02:01:54.573 [error] vm_memory_calculation_strategy
02:01:54.573 [error] vm_memory_high_watermark.absolute
02:01:54.574 [error] Error generating configuration in phase transform_datatypes
02:01:54.574 [error] Conf file attempted to set unknown variable: total_memory_available_override_value
BOOT FAILED
===========
Error description:
rabbit:start_it/1 line 458
rabbit:boot_error/2 line 858
rabbit_lager:log_locations/0 line 43
rabbit_lager:ensure_lager_configured/0 line 144
rabbit_lager:lager_configured/0 line 151
lager:list_all_sinks/0 line 317
lager_config:get/2 line 71
ets:lookup(lager_config, {'_global',handlers})
exit:generate_config_file
Log file(s) (may contain more information):
{"init terminating in do_boot",generate_config_file}
init terminating in do_boot (generate_config_file)
Crash dump is being written to: /var/log/rabbitmq/erl_crash.dump...done
$ grep total /etc/rabbitmq/rabbitmq.conf
total_memory_available_override_value = 2147483648
@tianon thanks for reporting, it should be available in the next alpha (3.8.0-alpha.13 or later) once it goes through the Concourse pipeline.
3.7.1 will take another week or two but you should be able to make progress on the new style config support in the Docker image using the aforementioned build :)
Nice, sounds good! I left total_memory_available_override_value commented out as a TODO for now. :+1: :heart:
I'm having the same issue with 3.7.1, 3.7.2 and 3.7.3-rc.1. The key
total_memory_available_override_value is there since it was commented out from the entrypoint, see https://github.com/docker-library/rabbitmq/blob/master/3.7/docker-entrypoint.sh#L285-L288
From what @michaelklishin mentioned, maybe we should keep these lines commented until 3.8.0 is out?
Configuration used:
## RabbitMQ configuration
## Ref: https://github.com/rabbitmq/rabbitmq-server/blob/master/docs/rabbitmq.conf.example
## Clustering
cluster_formation.peer_discovery_backend = rabbit_peer_discovery_k8s
cluster_formation.k8s.host = kubernetes.default.svc.cluster.local
cluster_formation.k8s.address_type = ip
cluster_formation.node_cleanup.interval = 10
cluster_formation.node_cleanup.only_log_warning = false
cluster_partition_handling = autoheal
## The default "guest" user is only permitted to access the server
## via a loopback interface (e.g. localhost)
loopback_users.guest = false
## Memory-based Flow Control threshold
##vm_memory_high_watermark.absolute = 512MB
total_memory_available_override_value = 1073741824
listeners.tcp.default = 5672
default_pass = guest
default_user = guest
default_vhost = /
hipe_compile = false
management.listener.port = 15672
management.listener.ssl = false
Logs:
BOOT FAILED
===========
Config file generation failed 11:44:08.187 [error] You've tried to set total_memory_available_override_value, but there is no setting with that name.
11:44:08.187 [error] Did you mean one of these?
11:44:08.305 [error] memory_monitor_interval
11:44:08.305 [error] vm_memory_calculation_strategy
11:44:08.305 [error] vm_memory_high_watermark.absolute
11:44:08.305 [error] Error generating configuration in phase transform_datatypes
11:44:08.305 [error] Conf file attempted to set unknown variable: total_memory_available_override_value
BOOT FAILED
===========
Error description:
rabbit:start_it/1 line 458
rabbit:boot_error/2 line 858
rabbit_lager:log_locations/0 line 43
rabbit_lager:ensure_lager_configured/0 line 144
rabbit_lager:lager_configured/0 line 151
lager:list_all_sinks/0 line 317
lager_config:get/2 line 71
ets:lookup(lager_config, {'_global',handlers})
exit:generate_config_file
Log file(s) (may contain more information):
init terminating in do_boot (generate_config_file)
{"init terminating in do_boot",generate_config_file}
I cannot reproduce:
# total_memory_available_override_value.conf
total_memory_available_override_value = 500 MB
RABBITMQ_CONFIG_FILE=$HOME/Downloads/total_memory_available_override_value.conf rabbitmq-server
## ##
## ## RabbitMQ 3.7.2. Copyright (C) 2007-2017 Pivotal Software, Inc.
########## Licensed under the MPL. See http://www.rabbitmq.com/
###### ##
########## Logs: /Users/antares/Tools/rabbitmq/generic/var/log/rabbitmq/[email protected]
/Users/antares/Tools/rabbitmq/generic/var/log/rabbitmq/rabbit@mercurio_upgrade.log
Starting broker...
completed with 14 plugins.
This was addressed in 3.7.1.
Hi All,
we have upgraded the rabbitmq to 3.7.3 in our existing application.
On running RMQ, I don't see any logs file generated.
## ##
## ## RabbitMQ 3.7.3. Copyright (C) 2007-2018 Pivotal Software, Inc.
########## Licensed under the MPL. See http://www.rabbitmq.com/
###### ##
########## Logs: (none)
Starting broker...
completed with 4 plugins.
Help Sought.
@michaelklishin could you please help here?
This is not a support forum. Please take your questions to rabbitmq-users and provide more details.
Most helpful comment
@tianon thanks for reporting, it should be available in the next alpha (3.8.0-alpha.13 or later) once it goes through the Concourse pipeline.
3.7.1 will take another week or two but you should be able to make progress on the new style config support in the Docker image using the aforementioned build :)