Self Heal/Recovery Problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Dear Gluster developers, fans,

as first thing, I want to say big THANK YOU for the work you do. From what I saw and tried out (OCFS2, GFS2, CODA, NFS), your system is the first one I like and in some way understand the logic behind it. The others seems to be too complex, hard to understand and possibly reconfigure in case something wents wrong. I worked like 2 months with my test setup of OCFS (which is the simplest "other" solution of FS clustering) and dont have so nice feeling about it than after few days with GlusterFS...

Well, it wouldn't a good post into devel group w/o questions - so I'm composing in another window few questions regarding performance/tuning of my setup, but recently I run into issue.

I have quite simple setup with two servers doing mirror of data with afr *:2 and unify and io-threads... The setup worked fine for several days of stress testing but recently I found article recommending to use some format parameter of underlaying XFS filesystem... So I stopped glfs and glfsd on one of the servers and formatted the device... have created the exported directories and started the glfsd & glfs again... then I tried to kick start the self heal do remirror the testing data fith the find -mountpoint -type f ... ops, the glfsd segfaults after few seconds - in the log, I have:

The glfs is: mainline--2.5--patch-518

---------
got signal (11), printing backtrace
---------
[0xb7f7f420]
/cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so[0xb7604432]
/cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so[0xb7606a4b]
/cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so(notify+0xe5)[0xb7607666]
/cluster/lib/libglusterfs.so.0(transport_notify+0x62)[0xb7f70a92]
/cluster/lib/libglusterfs.so.0[0xb7f712fc]
/cluster/lib/libglusterfs.so.0(sys_epoll_iteration+0x16b)[0xb7f71642]
/cluster/lib/libglusterfs.so.0(poll_iteration+0x3b)[0xb7f70dce]
[glusterfsd](main+0x4e3)[0x804991d]
/lib/tls/libc.so.6(__libc_start_main+0xc8)[0xb7e27ea8]
[glusterfsd][0x8048e51]
---------

And core file in root directory... the backtrace is:
#0  0xb75574f8 in afr_sync_ownership_permission ()
  from /cluster/lib/glusterfs/1.3.5/xlator/cluster/afr.so
#1  0xb7576432 in client_closedir_cbk ()
  from /cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so
#2  0xb7578a4b in client_protocol_interpret ()
  from /cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so
#3 0xb7579666 in notify () from /cluster/lib/glusterfs/1.3.5/xlator/protocol/client.so #4 0xb7edfa92 in transport_notify (this=0x8053848, event=1) at transport.c:154
#5  0xb7ee02fc in epoll_notify (eevent=1, data=0x8053848) at epoll.c:53
#6  0xb7ee0642 in sys_epoll_iteration (ctx=0xbfb026d4) at epoll.c:155
#7  0xb7edfdce in poll_iteration (ctx=0xbfb026d4) at transport.c:300
#8  0x0804991d in main ()

It seems to be some problem with permissions?

Any hints/help is greatly appreciated!

*glusterfs-server.vol*
volume mailspool-ds
   type storage/posix
   option directory /data/mailspool-ds
end-volume

volume mailspool-ns
   type storage/posix
   option directory /data/mailspool-ns
end-volume

volume mailspool-san1-ds
   type protocol/client
   option transport-type tcp/client
   option remote-host 10.0.0.110
   option remote-subvolume mailspool-ds
end-volume

volume mailspool-san1-ns
   type protocol/client
   option transport-type tcp/client
   option remote-host 10.0.0.110
   option remote-subvolume mailspool-ns
end-volume

volume mailspool-ns-afr
   type cluster/afr
   subvolumes mailspool-ns mailspool-san1-ns
   option replicate *:2
end-volume

volume mailspool-ds-afr
   type cluster/afr
   subvolumes mailspool-ds mailspool-san1-ds
   option replicate *:2
end-volume

volume mailspool-unify
   type cluster/unify
   subvolumes mailspool-ds-afr
   option namespace mailspool-ns-afr
   option scheduler random
end-volume
volume mailspool
   type performance/io-threads
   option thread-count 8
   option cache-size 64MB
   subvolumes mailspool-unify
end-volume

volume server
   type protocol/server
   option transport-type tcp/server
   subvolumes mailspool
   option auth.ip.mailspool-ds.allow 10.0.0.*,127.0.0.1
   option auth.ip.mailspool-ns.allow 10.0.0.*,127.0.0.1
   option auth.ip.mailspool.allow *
end-volume

*glusterfs-client.vol
*volume client
   type protocol/client
   option transport-type tcp/client
   option remote-host 127.0.0.1
   option remote-subvolume mailspool
end-volume

volume writebehind
   type performance/write-behind
   option aggregate-size 131072 # aggregate block size in bytes
   subvolumes client
end-volume

volume readahead
   type performance/read-ahead
   option page-size 131072
   option page-count 2
   subvolumes writebehind
end-volume

volume iothreads    #iothreads can give performance a boost
   type performance/io-threads
   option thread-count 8
   option cache-size 64MB
   subvolumes readahead
end-volume*
*

Best Regards,
--
Kamil





[Index of Archives]     [Gluster Users]     [Ceph Users]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux