MV_DOLLAR_ZERO — control visual display of Interchange processes in the process list
Define what to do with the Perl's $0
variable which contains the system's name of the running process. That process name will appear in commands like ps or top.
Setting the variable to a false value (0 or undefined) leaves the string unchanged. Setting it to 1
displays the process in the form of interchange --> (
. Setting it to a string displays that same string.
CATROOT
)
This is a workaround for a bug in stock Perl that used to ship with FreeBSD
. The bug sometimes
caused a segmentation fault when Interchange daemon was starting.
Example: Setting MV_DOLLAR_ZERO to "1"
Set the following in interchange.cfg
:
Variable MV_DOLLAR_ZERO 1
Note that this variable is set globally once when the Interchange daemon starts. It is pointless to change the variable afterwards in runtime.
This variable will have no effect on BSD kernels.
Interchange 5.9.0:
Source: lib/Vend/Server.pm
Line 3243 (context shows lines 3233-3247 in set_process_name():3241)
unlink $Global::PIDfile; exit 0; } } } } # Set the process name ($0) according to MV_DOLLAR_ZERO and a status indicator. sub set_process_name { my $status = shift; my $base = $Global::Variable->{MV_DOLLAR_ZERO}; # Setting MV_DOLLAR_ZERO to 1 should do the same thing as not setting it for # backwards compatibility. $base = 'interchange' if !$base or $base eq '1';