You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
If the environment size is greater than half of ARG_MAX, the spring server, as well as other processes will spawn without spring but fail with spring because of an Argument list too long error.
Potential solutions:
have specific environmental variables to watch rather than everything
pass SPRING_ORIGINAL_ENV via a tempfile rather than another environmental variable
fail gracefully / loudly if SPRING_ORIGINAL_ENV > 1/2 ARG_MAX(perhaps suggesting user increases ulimit) (ARG_MAX is hard-coded in OS X)
The text was updated successfully, but these errors were encountered:
have specific environmental variables to watch rather than everything
The idea is to be agnostic to the existing environment, so everything Just Works from Spring users' point of view.
Some additional possibilities to pursue:
Spawned processes inherit the environment by default, so perhaps passing the original env is not strictly necessary. If we can deduce the original env from the inherited env.
Process.spawn can wipe the environment as well, with the unsetenv_others: true option. That'd limit env size. Not sure about support in older Ruby versions.
Spring::ApplicationManager and Spring::Application could pass the original environment over their UNIX socket pair after the process is spawned, sidestepping the environment entirely.
Spring is great! You are great!
When spring spawns new processes, it passes in a copy of the original spring env,
SPRING_ORIGINAL_ENV
as an environmental variable.spring/lib/spring/application_manager.rb
Line 102 in a85d32e
If the environment size is greater than half of
ARG_MAX
, the spring server, as well as other processes will spawn without spring but fail with spring because of anArgument list too long
error.Potential solutions:
SPRING_ORIGINAL_ENV
via a tempfile rather than another environmental variableSPRING_ORIGINAL_ENV
> 1/2ARG_MAX
(perhaps suggesting user increases(ARG_MAX is hard-coded in OS X)ulimit
)The text was updated successfully, but these errors were encountered: