[ic] Clustering Interchange
fmueller at adva.de
Wed Feb 25 13:27:31 EST 2004
Mike Heins wrote:
> Quoting Frank (fmueller at adva.de):
>>we are running IC 4.99 on a 4 server cluster. We found we have a problem
>>of customers losing sessions when they accessed us via Proxy servers.
>>So we started working on having the sessions just on one server, but we
>>can't get it to run properly.
>>When trying to share the session directory via NFS, 2 IC servers work
>>fine, the other 2 give us a new session id for each access or hang up.
> The usual cause for this is bad time on the server -- if they are off
> by a large number of minutes they will give a new session ID as if
> the session is expired.
Thanks for the hint Mike, but the servers are within 1 sec in sync.
We tested further along the NFS path and found the following:
The working servers wrote both a <sessionname> and a <sessionname>.lock
file on the NFS filesystem. The bad server did write the
<sessionname>.lock, but not the <sessionname> file. On the browser, the
HTML page got stuck. After cancelling the page loading on the browser,
we got "Died in server spawn: Could not fcntl_lock file: No locks
To test file locking as such, we ran the following test script on the
bad server, which seemed to work and gave no error whatsoever:
use Fcntl qw(:flock);
my $fh = gensym;
open $fh, "+>>/mymountpoint/locktest" or die $!;
# start critical section
flock $fh, LOCK_EX;
seek $fh, 0, 0;
my @add_lines =
my @lines = (@add_lines, <$fh>);
seek $fh, 0, 0;
truncate $fh, 0;
print $fh @lines;
close $fh; # close unlocks the file
# end critical section
More information about the interchange-users