[Gluster-users] gluster v3.0.0 log showing errors

2010-01-17 Thread IQnection Hosting Department

Hello,

Recently we've put a gluster v3.0.0 file system into use for a group of  
apache2/tomcat6 servers.
Today one of those servers started hanging and we noticed a lot of lines  
like the following two in the log file:


1) W [fuse-bridge.c:793:fuse_getattr] glusterfs-fuse: 285653: GETATTR  
140556365266128 (fuse_loc_fill() failed)


2) E [afr.c:179:afr_read_child] mirror-0: invalid argument: inode

I don't think we're doing anything very strange with this setup. I'm at a  
loss as to why we are seeing this "hanging" behavior and these errors in  
the logs.


All machines are running v3.0.0 from the same source build.
We have 3 bricks using jfs for their backend storage setup to replicate to  
all three.
During testing we discovered that we needed to turn off write-behind to  
make things like CVS and xsl transformations more reliable in our setup.  
Write speed of course suffers but that is a compromise we've been willing  
to live with.
There are 7 clients using the file system for web files, java classes, and  
log files.
While this was going on there was an rsync of more images and PDF files  
copying from an old web server onto the new gluster file system using the  
client that was "hanging" as it's receiving side.


If you could shed any light on what might be causing our problems, it  
would be very helpful. Thanks!


Kind regards,
-Chris


--
Chris Ely
Hosting Department
IQnection Internet Services, Inc.
23 Taylor Avenue
Doylestown, PA  18901
Ph. 1-866-400-4678/Fax. 215-489-1872
http://www.iqnection.com/
___
Gluster-users mailing list
Gluster-users@gluster.org
http://gluster.org/cgi-bin/mailman/listinfo/gluster-users


Re: [Gluster-users] open() issues on 3.0.0

2010-01-17 Thread Tejas N. Bhise
Aaron,

Nice piece of information !!  ...

Regards,
Tejas.

- Original Message -
From: "Aaron Knister" 
To: b...@usf.edu
Cc: gluster-users@gluster.org
Sent: Sunday, January 17, 2010 11:42:14 PM GMT +05:30 Chennai, Kolkata, Mumbai, 
New Delhi
Subject: Re: [Gluster-users] open() issues on 3.0.0

I ran into a similar problem when compiling code on a gluster mount with the 
intel compiler. The problem was intermittent and after digging into it further 
it appeared to only happy when compiling from source files that had very high 
inode numbers. There's a command run by icc that's a 32 bit executable and my 
guess is that somewhere internally the extremely large inode number wasn't able 
to be handled and caused the compilation to fail. The "fix" was to upgrade the 
compiler. I can verify that version 11.0.064 works without a hitch (at least in 
this regard).

More Detail:

I can reproduce this error with version 10.0.026 of the intel compiler.

I have file test.c on a glusterfs with inode num 21479794854 (greater than 32 
bits)
21479794854 -rw-r--r-- 1 aaron users 26 Jan 17 12:58 test.c

Running icc fails:
...
$ icc test.c 
Catastrophic error: could not open source file "test.c"

compilation aborted for test.c (code 4)
...

However if I copy the same file to a directory on the same fs that has a 32 bit 
inode number (le 4294967295) (hoping the new file will also have a 32 bit inode 
number):
11889296 -rw-r--r-- 1 aaron users 26 Jan 17 13:02 test.c

Compilation is a success:
...
$ !icc
icc test.c 
$ echo $?
0
...


If you run icc with the -v option you'll see that a program called mcpcom gets 
run and produces the error. At least with version 10.0.026 it was a 32 bit 
program:
$ file /opt/intel/cce/10.0.026/bin/mcpcom
/opt/intel/cce/10.0.026/bin/mcpcom: ELF 32-bit LSB executable, Intel 80386, 
version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), 
for GNU/Linux 2.2.5, not stripped

Anyway I hope that helps.

-Aaron


On Jan 17, 2010, at 11:13 AM, Brian Smith wrote:

> Hi,
> 
> I'm new to Gluster, so please forgive any ignorance on my part.  I've
> tried reading over everything I could find to resolve this myself.
> 
> I'm having an issue building executables on our gluster volume (there
> are some other similar issues as well, but we'll deal with this one
> first).  I have the presta infiniband utilities extracted into a
> directory in my glusterfs volume and I'm attempting to build them.  One
> of the source files, util.c (coincidentally, the first one referenced in
> the make file) fails to build.  I get an error message:
> 
> Catastrophic error: could not open source file "util.c"
> 
> Some further investigating reveals the command that causes the issue:
> 
> icc -I/opt/priv/openmpi-1.4.1/intel-10.1.018/include -pthread
> -L/opt/priv/mx/lib -L/opt/priv/openmpi-1.4.1/intel-10.1.018/lib -lmpi
> -lopen-rte -lopen-pal -lmyriexpress -libverbs -lpsm_infinipath -lnuma
> -ldl -Wl,--export-dynamic -lnsl -lutil -c util.c 
> Catastrophic error: could not open source file "util.c"
> 
> compilation aborted for util.c (code 4)
> 
> And further, we see an strace of the command:
> ...
> 2717 6601  brk(0x957b000)= 0x957b000
> 2718 6601  open("util.c", O_RDONLY)  = 3
> 2719 6601  stat64("util.c", {st_mode=S_IFREG|0600, st_size=14370, ...})
> = 0
> 2720 6601  close(3)  = 0
> 2721 6601  fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136,
> 1), ...}) = 0
> 2722 6601  mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
> MAP_ANONYMOUS, -1, 0x1000) = 0xf0bce000
> 2723 6601  write(2, "Catastrophic error: could not open source file
> \"util.c\"\n", 56) = 56
> 2724 6601  write(2, "\n", 1) = 1
> 2725 6601  exit_group(4)
> ...
> 
> We can also see that the file is indeed present:
> 
> $ ls -l util.c
> -rw--- 1 brs users 14370 Apr  8  2002 util.c
> $ stat util.c
>  File: `util.c'
>  Size: 14370  Blocks: 32 IO Block: 4096   regular file
> Device: 18h/24d   Inode: 4295774314  Links: 1
> Access: (0600/-rw---)  Uid: (1229806/ brs)   Gid: (10001/
> users)
> Access: 2010-01-17 00:27:43.0 -0500
> Modify: 2002-04-08 21:13:57.0 -0400
> Change: 2010-01-17 00:27:43.0 -0500
> 
> If I extract the tar-ball in /tmp, a local ext3 fs, the compile line
> above works correctly.
> 
> diff /work/b/brs/presta1.2/util.c /tmp/presta1.2/util.c
> 
> also appears clean.  Any ideas what is happening here?  Is there an
> issue with mmap2() and glusterfs?
> 
> Many thanks in advance,
> 
> -Brian
> 
> 
> 
> -- 
> Brian Smith
> Senior Systems Administrator
> IT Research Computing, University of South Florida
> 4202 E. Fowler Ave. ENB308
> Office Phone: +1 813 974-1467
> Organization URL: http://rc.usf.edu
> 
> 
> 
> ___
> Gluster-users mailing list
> Gluster-users@gluster.org
> http://gluster.org/cgi-bin/mailman/listinfo/gluster-users


___

Re: [Gluster-users] open() issues on 3.0.0

2010-01-17 Thread Brian Smith
Good find!  That seems to be exactly the issue.  My inode numbers for
the files in that directory are literally just 100k away from the 32-bit
cut-off.  I've rm'ed and re-extraced to get lesser inode values and
voila!  I guess intel must have thought that 2^32 inodes outta be enough
for everyone.

Many thanks,
-Brian

-- 
Brian Smith
Senior Systems Administrator
IT Research Computing, University of South Florida
4202 E. Fowler Ave. ENB308
Office Phone: +1 813 974-1467
Organization URL: http://rc.usf.edu


On Sun, 2010-01-17 at 13:12 -0500, Aaron Knister wrote:
> I ran into a similar problem when compiling code on a gluster mount
> with the intel compiler. The problem was intermittent and after
> digging into it further it appeared to only happy when compiling from
> source files that had very high inode numbers. There's a command run
> by icc that's a 32 bit executable and my guess is that somewhere
> internally the extremely large inode number wasn't able to be handled
> and caused the compilation to fail. The "fix" was to upgrade the
> compiler. I can verify that version 11.0.064 works without a hitch (at
> least in this regard).
> 
> 
> More Detail:
> 
> 
> I can reproduce this error with version 10.0.026 of the intel
> compiler.
> 
> 
> I have file test.c on a glusterfs with inode num 21479794854 (greater
> than 32 bits)
> 21479794854 -rw-r--r-- 1 aaron users 26 Jan 17 12:58 test.c
> 
> 
> Running icc fails:
> ...
> $ icc test.c 
> Catastrophic error: could not open source file "test.c"
> 
> 
> compilation aborted for test.c (code 4)
> ...
> 
> 
> However if I copy the same file to a directory on the same fs that has
> a 32 bit inode number (le 4294967295) (hoping the new file will also
> have a 32 bit inode number):
> 11889296 -rw-r--r-- 1 aaron users 26 Jan 17 13:02 test.c
> 
> 
> Compilation is a success:
> ...
> $ !icc
> icc test.c 
> $ echo $?
> 0
> ...
> 
> 
> 
> 
> If you run icc with the -v option you'll see that a program called
> mcpcom gets run and produces the error. At least with version 10.0.026
> it was a 32 bit program:
> $ file /opt/intel/cce/10.0.026/bin/mcpcom
> /opt/intel/cce/10.0.026/bin/mcpcom: ELF 32-bit LSB executable, Intel
> 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses
> shared libs), for GNU/Linux 2.2.5, not stripped
> 
> 
> Anyway I hope that helps.
> 
> 
> -Aaron
> 
> 
> 
> On Jan 17, 2010, at 11:13 AM, Brian Smith wrote:
> 
> > Hi,
> > 
> > I'm new to Gluster, so please forgive any ignorance on my part.
> >  I've
> > tried reading over everything I could find to resolve this myself.
> > 
> > I'm having an issue building executables on our gluster volume
> > (there
> > are some other similar issues as well, but we'll deal with this one
> > first).  I have the presta infiniband utilities extracted into a
> > directory in my glusterfs volume and I'm attempting to build them.
> >  One
> > of the source files, util.c (coincidentally, the first one
> > referenced in
> > the make file) fails to build.  I get an error message:
> > 
> > Catastrophic error: could not open source file "util.c"
> > 
> > Some further investigating reveals the command that causes the
> > issue:
> > 
> > icc -I/opt/priv/openmpi-1.4.1/intel-10.1.018/include -pthread
> > -L/opt/priv/mx/lib -L/opt/priv/openmpi-1.4.1/intel-10.1.018/lib
> > -lmpi
> > -lopen-rte -lopen-pal -lmyriexpress -libverbs -lpsm_infinipath
> > -lnuma
> > -ldl -Wl,--export-dynamic -lnsl -lutil -c util.c 
> > Catastrophic error: could not open source file "util.c"
> > 
> > compilation aborted for util.c (code 4)
> > 
> > And further, we see an strace of the command:
> > ...
> > 2717 6601  brk(0x957b000)= 0x957b000
> > 2718 6601  open("util.c", O_RDONLY)  = 3
> > 2719 6601  stat64("util.c", {st_mode=S_IFREG|0600,
> > st_size=14370, ...})
> > = 0
> > 2720 6601  close(3)  = 0
> > 2721 6601  fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136,
> > 1), ...}) = 0
> > 2722 6601  mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
> > MAP_ANONYMOUS, -1, 0x1000) = 0xf0bce000
> > 2723 6601  write(2, "Catastrophic error: could not open source file
> > \"util.c\"\n", 56) = 56
> > 2724 6601  write(2, "\n", 1) = 1
> > 2725 6601  exit_group(4)
> > ...
> > 
> > We can also see that the file is indeed present:
> > 
> > $ ls -l util.c
> > -rw--- 1 brs users 14370 Apr  8  2002 util.c
> > $ stat util.c
> >  File: `util.c'
> >  Size: 14370  Blocks: 32 IO Block: 4096   regular file
> > Device: 18h/24d Inode: 4295774314  Links: 1
> > Access: (0600/-rw---)  Uid: (1229806/ brs)   Gid: (10001/
> > users)
> > Access: 2010-01-17 00:27:43.0 -0500
> > Modify: 2002-04-08 21:13:57.0 -0400
> > Change: 2010-01-17 00:27:43.0 -0500
> > 
> > If I extract the tar-ball in /tmp, a local ext3 fs, the compile line
> > above works correctly.
> > 
> > diff /work/b/brs/presta1.2/util.c /tmp/presta1.2/util.c
> > 
> > also appears cle

Re: [Gluster-users] open() issues on 3.0.0

2010-01-17 Thread Aaron Knister
I ran into a similar problem when compiling code on a gluster mount with the 
intel compiler. The problem was intermittent and after digging into it further 
it appeared to only happy when compiling from source files that had very high 
inode numbers. There's a command run by icc that's a 32 bit executable and my 
guess is that somewhere internally the extremely large inode number wasn't able 
to be handled and caused the compilation to fail. The "fix" was to upgrade the 
compiler. I can verify that version 11.0.064 works without a hitch (at least in 
this regard).

More Detail:

I can reproduce this error with version 10.0.026 of the intel compiler.

I have file test.c on a glusterfs with inode num 21479794854 (greater than 32 
bits)
21479794854 -rw-r--r-- 1 aaron users 26 Jan 17 12:58 test.c

Running icc fails:
...
$ icc test.c 
Catastrophic error: could not open source file "test.c"

compilation aborted for test.c (code 4)
...

However if I copy the same file to a directory on the same fs that has a 32 bit 
inode number (le 4294967295) (hoping the new file will also have a 32 bit inode 
number):
11889296 -rw-r--r-- 1 aaron users 26 Jan 17 13:02 test.c

Compilation is a success:
...
$ !icc
icc test.c 
$ echo $?
0
...


If you run icc with the -v option you'll see that a program called mcpcom gets 
run and produces the error. At least with version 10.0.026 it was a 32 bit 
program:
$ file /opt/intel/cce/10.0.026/bin/mcpcom
/opt/intel/cce/10.0.026/bin/mcpcom: ELF 32-bit LSB executable, Intel 80386, 
version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), 
for GNU/Linux 2.2.5, not stripped

Anyway I hope that helps.

-Aaron


On Jan 17, 2010, at 11:13 AM, Brian Smith wrote:

> Hi,
> 
> I'm new to Gluster, so please forgive any ignorance on my part.  I've
> tried reading over everything I could find to resolve this myself.
> 
> I'm having an issue building executables on our gluster volume (there
> are some other similar issues as well, but we'll deal with this one
> first).  I have the presta infiniband utilities extracted into a
> directory in my glusterfs volume and I'm attempting to build them.  One
> of the source files, util.c (coincidentally, the first one referenced in
> the make file) fails to build.  I get an error message:
> 
> Catastrophic error: could not open source file "util.c"
> 
> Some further investigating reveals the command that causes the issue:
> 
> icc -I/opt/priv/openmpi-1.4.1/intel-10.1.018/include -pthread
> -L/opt/priv/mx/lib -L/opt/priv/openmpi-1.4.1/intel-10.1.018/lib -lmpi
> -lopen-rte -lopen-pal -lmyriexpress -libverbs -lpsm_infinipath -lnuma
> -ldl -Wl,--export-dynamic -lnsl -lutil -c util.c 
> Catastrophic error: could not open source file "util.c"
> 
> compilation aborted for util.c (code 4)
> 
> And further, we see an strace of the command:
> ...
> 2717 6601  brk(0x957b000)= 0x957b000
> 2718 6601  open("util.c", O_RDONLY)  = 3
> 2719 6601  stat64("util.c", {st_mode=S_IFREG|0600, st_size=14370, ...})
> = 0
> 2720 6601  close(3)  = 0
> 2721 6601  fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136,
> 1), ...}) = 0
> 2722 6601  mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
> MAP_ANONYMOUS, -1, 0x1000) = 0xf0bce000
> 2723 6601  write(2, "Catastrophic error: could not open source file
> \"util.c\"\n", 56) = 56
> 2724 6601  write(2, "\n", 1) = 1
> 2725 6601  exit_group(4)
> ...
> 
> We can also see that the file is indeed present:
> 
> $ ls -l util.c
> -rw--- 1 brs users 14370 Apr  8  2002 util.c
> $ stat util.c
>  File: `util.c'
>  Size: 14370  Blocks: 32 IO Block: 4096   regular file
> Device: 18h/24d   Inode: 4295774314  Links: 1
> Access: (0600/-rw---)  Uid: (1229806/ brs)   Gid: (10001/
> users)
> Access: 2010-01-17 00:27:43.0 -0500
> Modify: 2002-04-08 21:13:57.0 -0400
> Change: 2010-01-17 00:27:43.0 -0500
> 
> If I extract the tar-ball in /tmp, a local ext3 fs, the compile line
> above works correctly.
> 
> diff /work/b/brs/presta1.2/util.c /tmp/presta1.2/util.c
> 
> also appears clean.  Any ideas what is happening here?  Is there an
> issue with mmap2() and glusterfs?
> 
> Many thanks in advance,
> 
> -Brian
> 
> 
> 
> -- 
> Brian Smith
> Senior Systems Administrator
> IT Research Computing, University of South Florida
> 4202 E. Fowler Ave. ENB308
> Office Phone: +1 813 974-1467
> Organization URL: http://rc.usf.edu
> 
> 
> 
> ___
> Gluster-users mailing list
> Gluster-users@gluster.org
> http://gluster.org/cgi-bin/mailman/listinfo/gluster-users

___
Gluster-users mailing list
Gluster-users@gluster.org
http://gluster.org/cgi-bin/mailman/listinfo/gluster-users


[Gluster-users] open() issues on 3.0.0

2010-01-17 Thread Brian Smith
Hi,

I'm new to Gluster, so please forgive any ignorance on my part.  I've
tried reading over everything I could find to resolve this myself.

I'm having an issue building executables on our gluster volume (there
are some other similar issues as well, but we'll deal with this one
first).  I have the presta infiniband utilities extracted into a
directory in my glusterfs volume and I'm attempting to build them.  One
of the source files, util.c (coincidentally, the first one referenced in
the make file) fails to build.  I get an error message:

Catastrophic error: could not open source file "util.c"

Some further investigating reveals the command that causes the issue:

icc -I/opt/priv/openmpi-1.4.1/intel-10.1.018/include -pthread
-L/opt/priv/mx/lib -L/opt/priv/openmpi-1.4.1/intel-10.1.018/lib -lmpi
-lopen-rte -lopen-pal -lmyriexpress -libverbs -lpsm_infinipath -lnuma
-ldl -Wl,--export-dynamic -lnsl -lutil -c util.c 
Catastrophic error: could not open source file "util.c"

compilation aborted for util.c (code 4)

And further, we see an strace of the command:
...
2717 6601  brk(0x957b000)= 0x957b000
2718 6601  open("util.c", O_RDONLY)  = 3
2719 6601  stat64("util.c", {st_mode=S_IFREG|0600, st_size=14370, ...})
= 0
2720 6601  close(3)  = 0
2721 6601  fstat64(2, {st_mode=S_IFCHR|0620, st_rdev=makedev(136,
1), ...}) = 0
2722 6601  mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|
MAP_ANONYMOUS, -1, 0x1000) = 0xf0bce000
2723 6601  write(2, "Catastrophic error: could not open source file
\"util.c\"\n", 56) = 56
2724 6601  write(2, "\n", 1) = 1
2725 6601  exit_group(4)
...

We can also see that the file is indeed present:

$ ls -l util.c
-rw--- 1 brs users 14370 Apr  8  2002 util.c
$ stat util.c
  File: `util.c'
  Size: 14370   Blocks: 32 IO Block: 4096   regular file
Device: 18h/24d Inode: 4295774314  Links: 1
Access: (0600/-rw---)  Uid: (1229806/ brs)   Gid: (10001/
users)
Access: 2010-01-17 00:27:43.0 -0500
Modify: 2002-04-08 21:13:57.0 -0400
Change: 2010-01-17 00:27:43.0 -0500

If I extract the tar-ball in /tmp, a local ext3 fs, the compile line
above works correctly.

diff /work/b/brs/presta1.2/util.c /tmp/presta1.2/util.c

also appears clean.  Any ideas what is happening here?  Is there an
issue with mmap2() and glusterfs?

Many thanks in advance,

-Brian



-- 
Brian Smith
Senior Systems Administrator
IT Research Computing, University of South Florida
4202 E. Fowler Ave. ENB308
Office Phone: +1 813 974-1467
Organization URL: http://rc.usf.edu



___
Gluster-users mailing list
Gluster-users@gluster.org
http://gluster.org/cgi-bin/mailman/listinfo/gluster-users