[Gluster-users] Troubles with syscall 'lstat'
Nicolas Greneche
nicolas.greneche at univ-paris13.fr
Tue May 20 09:58:29 UTC 2014
Hello,
I run a glusterfs architecture in 3.3.1 version :
# glusterd -V
glusterfs 3.3.1 built on Apr 29 2013 15:17:28
Repository revision: git://git.gluster.com/glusterfs.git
Copyright (c) 2006-2011 Gluster Inc. <http://www.gluster.com>
GlusterFS comes with ABSOLUTELY NO WARRANTY.
You may redistribute copies of GlusterFS under the terms of the GNU
General Public License.
I have an odd problem when I run a software. When I run it from the
local filesystem it works and when I copy it to a glusterfs share it
produce errors.
Both instance of the program shares the same environement (the run on te
same instance of operating system with the same user).
The only difference I noticed is with the syscall sequence. When It
works I have this sequence :
write(1, "HRType: esh_gain \n", 19) = 19
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
write(1, "TILDE\n", 6) = 6
stat64("/home/ngreneche/ubuntu1204/usr/local/ACE-ilProlog-1.2.20/linux/bin/tilde",
{st_mode=S_IFDIR|0750, st_size=4096, ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
write(1, "Discretization busy...\n", 23) = 23
And when it doesn't work (running from a glusterfs share), I have this
sequence :
write(1, "HRType: esh_gain \n", 19) = 19
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
write(1, "TILDE\n", 6) = 6
stat64("/home/dist/db/ubuntu1204/usr/local/ACE-ilProlog-1.2.20/linux/bin/tilde",
{st_mode=S_IFDIR|0750, st_size=16384, ...}) = 0
mkdir("/home/dist/db/ubuntu1204/usr/local/ACE-ilProlog-1.2.20/linux/bin/tilde",
0755) = -1 EEXIST (File exists)
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
...}) = 0
write(1, "An error occurred during the exe"..., 49) = 49
The only difference is that a mkdir is performed just after the stat.
Whereas the stat check if the directory exists to trigger or not a mkdir.
My underlying filesystem on the brick is ext4.
Do you know if there are some issues with stat in the version of glusterfs ?
Regards,
--
Nicolas Grenèche
URL : http://blog.etcshadow.fr
Tel : 01 49 40 40 35
Fax : 01 48 22 81 50
More information about the Gluster-users
mailing list