Name

MV_BAD_LOCK — work around a problem in systems with broken locking mechanism

SYNOPSIS

{ 0 | 1 }

DESCRIPTION

The variable allows systems with broken locking mechanism to still work properly. If the variable is set, it makes sure the PIDFile lock is not destroyed when the lock file is read. interchange -stop will then work properly.

VARIABLE TYPE

Global variable

EXAMPLES

Example: Turn around the workaround

Add the following to interchange.cfg:

Variable MV_BAD_LOCK 1

NOTES

Thanks to Daniel Hutchinson for reporting this problem.

AVAILABILITY

MV_BAD_LOCK is available in Interchange versions:

4.6.0-5.9.0 (git-head)

SOURCE

Interchange 5.9.0:

Source: lib/Vend/Server.pm
Line 1754 (context shows lines 1744-1758 in server_start_message():1745)


sub server_start_message {
my ($fmt, $reverse) = @_;
$fmt = 'START server (%s) (%s)' unless $fmt; 
my @types;
push (@types, 'INET') if $Global::Inet_Mode;
push (@types, 'UNIX') if $Global::Unix_Mode;
push (@types, 'SOAP') if $Global::SOAP;
push (@types, 'mod_perl') if $Global::mod_perl;
my $server_type = join(" and ", @types);
my $pid = ( $Global::PreFork || $Global::Variable->{MV_BAD_LOCK} )
      ? $$
      : read_pidfile();
my @args = $reverse ? ($server_type, $pid) : ($pid, $server_type);
return ::errmsg ($fmt , @args );

AUTHORS

Mike Heins, Interchange Development Group

SEE ALSO

DocBook! Interchange!