[Gluster-devel] lost locks
Emmanuel Dreyfus
manu at netbsd.org
Mon May 9 07:30:14 UTC 2011
Hello
I have been playing with replicate translator on glusterfs 3.1.4,
with high availlability in mind. It works fine, if I kill one server,
the client uses the other one, and vice versa. auto healing works
fine, this is amazing.
However things turn bad when a server die while a client holds a lock
on a file. Following such an event, the file cannot be written anymore
even after all servers came back online. I have to delete it to clear
the situation.
Is it a feature missing in the replication protocol? Or is it just
missing in the implementation? Or is it a bug?
Here is the client volume file:
volume silo1
type protocol/client
option transport-type tcp
option transport.address-family inet
option remote-host silo.example.net
option remote-subvolume wd1lock
end-volume
volume hangar1
type protocol/client
option transport-type tcp
option transport.address-family inet
option remote-host hangar.example.net
option remote-subvolume wd1lock
end-volume
volume replicate
type cluster/replicate
subvolumes silo1 hangar1
data-change-log on
metadata-change-log on
entry-change-log on
end-volume
On the servers side:
volume wd1
type storage/posix
option directory /export/wd1a
end-volume
volume wd1lock
type features/locks
subvolumes wd1
end-volume
volume silo
type protocol/server
option transport-type tcp
option transport.address-family inet
subvolumes wd1lock
option auth.addr.wd1lock.allow * # Allow access to "brick" volume
option client-volume-filename /usr/pkg/etc/glusterfs/afr.vol
end-volume
--
Emmanuel Dreyfus
manu at netbsd.org
More information about the Gluster-devel
mailing list