-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Maximum number of Erlang processes and atoms can be configured via environment variables #1528
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This property is essential for nodes that need to handle many connections / channels / queues. Related to #1513
This was the only property in SERVER_ERL_ARGS that was not configurable. Even though it's unlikely that this will need to be increased above the existing 5 million default, we are consistent in allowing all properties in SERVER_ERL_ARGS to be cofigured.
Proposing to add this to |
It can already be done using RABBITMQ_SERVER_ADDITIONAL_ERL_ARGS but I have no objections to these two. |
I'd say apply this to |
If this is driven by the needs of the BOSH release (which is a guess, perhaps @gerhard can elaborate), I have no objections to having this in 3.6.x as well. |
Yes, I was actually thinking about |
The BOSH release supports both |
This will not work in all RabbitMQ versions, use rabbitmq-server.additional_erl_args for greater cross-version compatibility. Related to rabbitmq/rabbitmq-server#1528
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
When I try to run a node on this branch, it fails with
gmake run-broker
GEN /var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/enabled_plugins
All plugins have been disabled.
Applying plugin configuration to rabbit@warp10...
Plugin configuration unchanged.
GEN /var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/test.config
MAKE="gmake" ERL_LIBS="/Users/antares/Development/RabbitMQ/umbrella.git/deps/rabbit/apps:/usr/local/Cellar/elixir/1.6.0_1/bin/../lib/elixir" RABBITMQ_NODENAME="rabbit" RABBITMQ_NODE_IP_ADDRESS="" RABBITMQ_NODE_PORT="" RABBITMQ_PID_FILE="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/rabbit.pid" RABBITMQ_LOG_BASE="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/log" RABBITMQ_MNESIA_BASE="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/mnesia" RABBITMQ_MNESIA_DIR="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/mnesia/rabbit" RABBITMQ_SCHEMA_DIR="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/schema" RABBITMQ_GENERATED_CONFIG_DIR="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/config" RABBITMQ_PLUGINS_DIR="/Users/antares/Development/RabbitMQ/umbrella.git/deps/rabbit/plugins" RABBITMQ_PLUGINS_EXPAND_DIR="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/plugins" RABBITMQ_SERVER_START_ARGS="" RABBITMQ_ENABLED_PLUGINS_FILE="/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/rabbit/enabled_plugins" \
RABBITMQ_ALLOW_INPUT=true \
RABBITMQ_CONFIG_FILE=/var/folders/gp/53t98z011678vk9rkcb_s6ph0000gn/T//rabbitmq-test-instances/test \
/Users/antares/Development/RabbitMQ/umbrella.git/deps/rabbit/scripts/rabbitmq-server
bad number of processes =1048576
Usage: beam.smp [flags] [ -- [init_args] ]
The flags are:
scripts/rabbitmq-env
Outdated
@@ -87,8 +87,14 @@ DEFAULT_SCHEDULER_BIND_TYPE="db" | |||
DEFAULT_DISTRIBUTION_BUFFER_SIZE=128000 | |||
[ "x" = "x$RABBITMQ_DISTRIBUTION_BUFFER_SIZE" ] && RABBITMQ_DISTRIBUTION_BUFFER_SIZE=${DEFAULT_DISTRIBUTION_BUFFER_SIZE} | |||
|
|||
DEFAULT_MAX_NUMBER_OF_PROCESSES=1048576 | |||
[ "x" = "x$RABBITMQ_MAX_NUMBER_OF_PROCESSES" ] && RABBITMQ_MAX_NUMBER_OF_PROCESSES=="${DEFAULT_MAX_NUMBER_OF_PROCESSES}" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
==
seems to be bash-specific and is not available in zsh.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
My bad, definitely a typo.
… with RABBITMQ_, adjust Unix and Windows files accordingly
OK I tested my latest changes by creating a
Then running from this branch with this command:
Testing Windows next. |
I can confirm that @lukebakken's changes make the issue go away. I was also able to config Doing more testing next. |
Tested on Windows 8.1 using this alpha build with all of the
|
We used to have the
Was this incorrect? |
@michaelklishin got it. So we basically need to support both |
Covers the following variables: * RABBITMQ_SCHEDULER_BIND_TYPE & SCHEDULER_BIND_TYPE * RABBITMQ_DISTRIBUTION_BUFFER_SIZE & DISTRIBUTION_BUFFER_SIZE * RABBITMQ_MAX_NUMBER_OF_PROCESSES & MAX_NUMBER_OF_PROCESSES * RABBITMQ_MAX_NUMBER_OF_ATOMS & MAX_NUMBER_OF_ATOMS
@michaelklishin should be ready to merge. |
Proposed Changes
Types of Changes
Checklist
CONTRIBUTING.md
document