[Gluster-devel] svn co / cp fail

Anand Avati avati at zresearch.com
Thu Apr 26 16:43:59 UTC 2007


Pooya,
  the bug was in posix-locks. posis-locks is supposed to be loaded on
server side just above the storage/posix trnaslator. loading it on the
client side makes it lock only for processes within the same machine.

the bug has been fixed in posix locks, but nonetheless you need to
load posix-locks on server side for it to be put to use at all. please
tla update to get the fix (or just loading posix-locks on serverside
alone will fix it too)

avati

On Thu, Apr 26, 2007 at 08:31:27AM -0700, Pooya Woodcock wrote:
> 
> On Apr 26, 2007, at 2:51 AM, Anand Avati wrote:
> >Pooya,
> >  the svn was failing because of the same root cause as brent was
> >facing for mtime failures. i have committed some changes to
> >write-behind to use a more 'play safe' flushing policy. I am able to
> >successfully svn co now.
> >
> >  I am still unable to reprodcue the cp issue. please give me your
> >spec files and the commands you executed before you got the bug.
> >
> >regards,
> >avati
> 
> 
> Hi Avati,
>    After upgrading to patch-123, all I did was start copying files  
> around and then noticed that I can't overwrite any file. My shell  
> thinks that the file is a directory when it is not. I just did  
> another test:
> 
> [root at node01 www]# touch hi
> [root at node01 www]# touch hi2
> [root at node01 www]# cp hi2 hi
> cp: overwrite `hi'? yes
> cp: cannot create regular file `hi': No such file or directory
> 
> [root at node01 www]# mv hi2 hi
> mv: overwrite `hi'? yes
> 
> [root at node01 www]# cp hi hi2
> [root at node01 www]# ls -l hi*
> -rw-r--r--  1 root root 0 Apr 26 08:22 hi
> -rw-r--r--  1 root root 0 Apr 26 08:23 hi2
> 
> [root at node01 www]# rm hi
> rm: remove regular empty file `hi'? yes
> [root at node01 www]# rm hi2
> rm: remove regular empty file `hi2'? yes
> [root at node01 www]#
> 
> 
> So you see, it is just the cp/overwrite which fails. This happens on  
> nodes 2-4 also.
> ***After reverting to patch 119, all the above commands work fine***
> 
> Here are the conf files for glusterfs/glusterfsd I am using....
> 
> There are 4 servers and 4 clients.
> ## SERVER.VOL (same on each except for bind-address) ##
> 
> volume brick
>         type storage/posix
>         option directory /GlusterFS
> end-volume
> 
> volume brick-afr
>         type storage/posix
>         option directory /GlusterFS-AFR
> end-volume
> 
> volume server
>         type protocol/server
>         option transport-type tcp/server
>         option bind-address 10.175.175.134
>         option listen-port 6996
>         subvolumes brick brick-afr
>         option auth.ip.brick.allow 10.175.175.*
>         option auth.ip.brick-afr.allow 10.175.175.*
> end-volume
> 
> 
> ### CLIENT.VOL ###
> volume brick1
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.134
> option remote-port 6996
> option remote-subvolume brick
> end-volume
> 
> volume brick1-afr
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.135
> option remote-port 6996
> option remote-subvolume brick-afr
> end-volume
> 
> volume brick2
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.135
> option remote-port 6996
> option remote-subvolume brick
> end-volume
> 
> volume brick2-afr
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.136
> option remote-port 6996
> option remote-subvolume brick-afr
> end-volume
> 
> volume brick3
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.136
> option remote-port 6996
> option remote-subvolume brick
> end-volume
> 
> volume brick3-afr
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.137
> option remote-port 6996
> option remote-subvolume brick-afr
> end-volume
> 
> volume brick4
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.137
> option remote-port 6996
> option remote-subvolume brick
> end-volume
> 
> volume brick4-afr
> type protocol/client
> option transport-type tcp/client
> option remote-host 10.175.175.134
> option remote-port 6996
> option remote-subvolume brick-afr
> end-volume
> 
> volume afr1
> type cluster/afr
> subvolumes brick1 brick1-afr
> option replicate *:2
> end-volume
> 
> volume afr2
> type cluster/afr
> subvolumes brick2 brick2-afr
> option replicate *:2
> end-volume
> 
> volume afr3
> type cluster/afr
> subvolumes brick3 brick3-afr
> option replicate *:2
> end-volume
> 
> volume afr4
> type cluster/afr
> subvolumes brick4 brick4-afr
> option replicate *:2
> end-volume
> 
> volume unify1
> type cluster/unify
> subvolumes afr1 afr2 afr3 afr4
>   option readdir-force-success on
>   option scheduler rr
>   option rr.limits.min-free-disk 10GB
> end-volume
> 
> volume locks
>         type features/posix-locks
>         subvolumes unify1
> end-volume
> 

-- 
ultimate_answer_t
deep_thought (void)
{ 
  sleep (years2secs (7500000)); 
  return 42;
}





More information about the Gluster-devel mailing list