Hi Kirby,<br><br>rpmbuild completed without any failures on our test machines. Can you send us the output of "uname -a" of the platform on which rpmbuild failed?<br><br>If you don't really need modglusterfs, you can disable it using<br>
<span class="il">rpmbuild</span> --ta glusterfs-2.0.0rc1.tar.gz --without <span class="il">modglfs</span><br><br>regards,<br><div class="gmail_quote">On Thu, Mar 26, 2009 at 7:08 AM, Kirby Zhou <span dir="ltr"><<a href="mailto:kirbyzhou@sohu-rd.com">kirbyzhou@sohu-rd.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div link="blue" vlink="purple" lang="ZH-CN">
<div>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">Build
rpm failed</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US"> </span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">+
/usr/lib/rpm/check-rpaths /usr/lib/rpm/check-buildroot</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*******************************************************************************</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
WARNING: 'check-rpaths' detected a broken RPATH and will cause 'rpmbuild'</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
to fail. To ignore these errors, you can set the '$QA_RPATHS'</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
environment variable which is a bitmask allowing the values</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
below. The current value of QA_RPATHS is 0x0000.</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0001 ... standard RPATHs (e.g. /usr/lib); such RPATHs are a minor</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
issue but are introducing redundant searchpaths without</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
providing a benefit. They can also cause errors in multilib</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
environments.</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0002 ... invalid RPATHs; these are RPATHs which are neither absolute</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
nor relative filenames and can therefore be a SECURITY risk</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0004 ... insecure RPATHs; these are relative RPATHs which are a</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
SECURITY risk</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0008 ... the special '$ORIGIN' RPATHs are appearing after other</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
RPATHs; this is just a minor issue but usually unwanted</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0010 ... the RPATH is empty; there is no reason for such RPATHs</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
and they cause unneeded work while loading libraries</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
0x0020 ... an RPATH references '..' of an absolute path; this will break</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
the functionality when the path before '..' is a symlink</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
Examples:</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">* -
to ignore standard and empty RPATHs, execute 'rpmbuild' like</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
$ QA_RPATHS=$[ 0x0001|0x0010 ] rpmbuild my-package.src.rpm</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">* -
to check existing files, set $RPM_BUILD_ROOT and execute check-rpaths like</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*
$ RPM_BUILD_ROOT=<top-dir> /usr/lib/rpm/check-rpaths</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">* </span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">*******************************************************************************</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">ERROR
0002: file '/usr/lib64/glusterfs/2.0.0rc7/apache/2.2/mod_glusterfs.so' contains
an invalid rpath
'/root/rpmbuild/BUILD/glusterfs-2.0.0rc7/libglusterfsclient/src/.libs' in
[/root/rpmbuild/BUILD/glusterfs-2.0.0rc7/libglusterfsclient/src/.libs]</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US">error:
Bad exit status from /var/tmp/rpm-tmp.14389 (%install)</span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US"> </span></p>
<p><span style="font-size: 10.5pt; color: rgb(31, 73, 125);" lang="EN-US"> </span></p>
<div style="border-style: solid none none; border-color: rgb(181, 196, 223) -moz-use-text-color -moz-use-text-color; border-width: 1pt medium medium; padding: 3pt 0cm 0cm;">
<p><b><span style="font-size: 10pt;" lang="EN-US">From:</span></b><span style="font-size: 10pt;" lang="EN-US"> <a href="mailto:raghavendra.hg@gmail.com" target="_blank">raghavendra.hg@gmail.com</a>
[mailto:<a href="mailto:raghavendra.hg@gmail.com" target="_blank">raghavendra.hg@gmail.com</a>] <b>On Behalf Of </b>Raghavendra G<br>
<b>Sent:</b> Tuesday, March 24, 2009 7:06 PM<br>
<b>To:</b> Kirby Zhou<br>
<b>Cc:</b> <a href="mailto:gluster-users@gluster.org" target="_blank">gluster-users@gluster.org</a><br>
<b>Subject:</b> Re: [Gluster-users] 2.0.0rc4 performance/write-behind seems
broken with flush-behind=on</span></p>
</div><div><div></div><div class="h5">
<p><span lang="EN-US"> </span></p>
<p><span lang="EN-US">Hi Kirby,<br>
<br>
There are some significant changes to write-behind that went into repository
after 2.0.0rc4. Can you check with the latest code from repository or get
2.0.0rc6 from our internal releases at<br>
<a href="http://ftp.gluster.com/pub/gluster/glusterfs/qa-releases/glusterfs-2.0.0rc6.tar.gz" target="_blank">http://ftp.gluster.com/pub/gluster/glusterfs/qa-releases/glusterfs-2.0.0rc6.tar.gz</a><br>
<br>
regards,</span></p>
<div>
<p><span lang="EN-US">On Fri, Mar 20, 2009 at 4:39 PM, Kirby Zhou
<<a href="mailto:kirbyzhou@sohu-rd.com" target="_blank">kirbyzhou@sohu-rd.com</a>> wrote:</span></p>
<p><span lang="EN-US">2.0.0rc4 performance/write-behind seems
broken with flush-behind=on<br>
<br>
If you use flush-behind=on, it is a acceptable result that other client<br>
machines will not see your operations immediately.<br>
But it is not acceptable that the sequentially executed program cannot see<br>
the result immediately caused by the prior one on the same client machine.<br>
<br>
The later situation happens when I run rpmbuild over a glusterfs volume.<br>
<br>
If I run following commands with flush-behind = on, some error happens.<br>
############<br>
[root@xen-727057 BUILD]# ( set -x ; rm -fr openssl-fips-0.9.8e;<br>
/usr/bin/bzip2 -dc /root/rpmbuild/SOURCES/openssl-fips-0.9.8e-usa.tar.bz2 |<br>
tar -xf -; cd openssl-fips-0.9.8e; /root/rpmbuild/SOURCES/hobble-openssl ><br>
/dev/null; patch -p1 -b --suffix .redhat <<br>
/root/rpmbuild/SOURCES/openssl-fips-0.9.8e-redhat.patch; patch -p1 -b<br>
--suffix .defaults < /root/rpmbuild/SOURCES/openssl-0.9.8a-defaults.patch;<br>
patch -p1 -b --suffix .krb5 <<br>
/root/rpmbuild/SOURCES/openssl-0.9.8a-link-krb5.patch; patch -p1 -b --suffix<br>
.soversion < /root/rpmbuild/SOURCES/openssl-0.9.8b-soversion.patch; )<br>
+ rm -i -fr openssl-fips-0.9.8e<br>
+ /usr/bin/bzip2 -dc /root/rpmbuild/SOURCES/openssl-fips-0.9.8e-usa.tar.bz2<br>
+ tar -xf -<br>
+ cd openssl-fips-0.9.8e<br>
+ /root/rpmbuild/SOURCES/hobble-openssl<br>
find: crypto/idea/asm: No such file or directory<br>
find: crypto/mdc2/asm: No such file or directory<br>
+ patch -p1 -b --suffix .redhat<br>
patching file Configure<br>
+ patch -p1 -b --suffix .defaults<br>
patching file apps/openssl.cnf<br>
Hunk #1 succeeded at 107 (offset 8 lines).<br>
Hunk #3 succeeded at 153 (offset 8 lines).<br>
+ patch -p1 -b --suffix .krb5<br>
patching file Makefile.org<br>
Hunk #1 succeeded at 420 (offset 154 lines).<br>
+ patch -p1 -b --suffix .soversion<br>
patching file Makefile.org<br>
Hunk #2 FAILED at 278.<br>
Hunk #3 FAILED at 291.<br>
2 out of 3 hunks FAILED -- saving rejects to file Makefile.org.rej<br>
patching file Configure<br>
Hunk #1 FAILED at 1327.<br>
1 out of 1 hunk FAILED -- saving rejects to file Configure.rej<br>
############<br>
You can see, the last 2 patch operates the same file "Makefile.org".<br>
############<br>
[root@xen-727057 BUILD]# lsdiff<br>
/root/rpmbuild/SOURCES/openssl-0.9.8a-link-krb5.patch<br>
openssl-0.9.8a/Makefile.org<br>
[root@xen-727057 BUILD]# lsdiff<br>
/root/rpmbuild/SOURCES/openssl-0.9.8b-soversion.patch<br>
openssl-0.9.8b/Makefile.org<br>
openssl-0.9.8b/Configure<br>
############<br>
If I run each of the command above manually, everything goes right.<br>
If the flush-behind is turned off, everything goes right too.<br>
<br>
#### client vol spec file<br>
volume 10.10.123.32-brick1<br>
type protocol/client<br>
option transport-type tcp/client<br>
option remote-host 10.10.123.32<br>
option remote-port 6986<br>
option transport-timeout 5<br>
option remote-subvolume brick1<br>
end-volume<br>
volume 10.10.123.32-brick2<br>
....<br>
end-volume<br>
<br>
volume dht0-raw<br>
type cluster/distribute<br>
subvolumes 10.10.123.21-brick1 10.10.123.21-brick2 10.10.123.22-brick1<br>
10.10.123.22-brick2 10.10.123.31-brick1 10.10.123.31-brick2<br>
10.10.123.32-brick1 10.10.123.32-brick2<br>
option lookup-unhashed yes<br>
end-volume<br>
<br>
volume dht0-io-cache<br>
type performance/io-cache<br>
option cache-size 128MB #
default is 32MB<br>
option page-size 128KB # 128KB
is default option<br>
# option priority *.h:3,*.html:2,*:1 # default is '*:0'<br>
# option cache-timeout 2 # default is
1 second<br>
subvolumes dht0-raw<br>
end-volume<br>
<br>
volume dht0-writebehind<br>
type performance/write-behind<br>
option aggregate-size 128KB # default is
0bytes<br>
option window-size 2MB #
default is equal to aggregate-size<br>
option flush-behind on #
default is 'off'<br>
subvolumes dht0-io-cache<br>
end-volume<br>
<br>
volume dht0<br>
type features/filter<br>
option read-only off<br>
#option root-squashing enable<br>
option fixed-uid 99<br>
option fixed-gid 99<br>
#option translate-uid 0=999<br>
#option translate-gid 0=999<br>
subvolumes dht0-writebehind<br>
#subvolumes dht0-io-cache<br>
end-volume<br>
############################<br>
<br>
<br>
<br>
<br>
<br>
_______________________________________________<br>
Gluster-users mailing list<br>
<a href="mailto:Gluster-users@gluster.org" target="_blank">Gluster-users@gluster.org</a><br>
<a href="http://zresearch.com/cgi-bin/mailman/listinfo/gluster-users" target="_blank">http://zresearch.com/cgi-bin/mailman/listinfo/gluster-users</a></span></p>
</div>
<p style="margin-bottom: 12pt;"><span lang="EN-US"><br>
<br clear="all">
<br>
-- <br>
Raghavendra G</span></p>
</div></div></div>
</div>
</blockquote></div><br><br clear="all"><br>-- <br>Raghavendra G<br><br>