On Wed, Dec 02, 2009 at 01:57:44AM +0000, Carlo Marcelo Arenas Belon wrote:
> On Tue, Dec 01, 2009 at 10:20:32PM +0000, Daniel Pocock wrote:
> > - Can you easily re-compile APR with a different poll implementation? I
> > think you can change it from configure.
>
> Which option?, --enable-other-child doesn't make a difference and considering
> how many different versions of APR are installed in all affected systems I
> would be surprised this to be an APR issue.
and surprised I am, as the problem goes away if APR is forced to use poll
instead of kqueue.
but that of course requires a patched version of apr (including bootstrapping)
and is probably not an option, unless we go back to the dark ages of including
all dependencies statically.
if anyone is interested I am attaching a patch for apr-1.3.9 which could be
used to "fix" this problem in {Free,Net,Open}BSD and which will also require
that ganglia be linked with the patched library by doing something like (using
/opt/ganglia to avoid clashing with the system provided packages and ignoring
the fact that you would need to be root with a bourne shell to execute the
following incantation, and that is very unlikely to be a good idea anyway) :
# mkdir -p /opt/ganglia
# tar -xvzf apr-1.3.9.tar.gz
# cd apr-1.3.9
# patch -p1 < apr-1.3.9-configure-disablekqueue.patch
# ./confgure --prefix=/opt/ganglia
# make
# make install
# cd ..
# tar -xvzf ganglia-3.1.5.tar.gz
# cd ganglia-3.1.5
# ./configure --prefix=/opt/ganglia
--with-libapr=/opt/ganglia/bin/apr-1-config
# make
# make install
# LD_LIBRARY_PATH=/opt/ganglia/lib /opt/ganglia/bin/gmond
Carlo
PS. DragonFlyBSD will be still affected and MacOS X was probably luckily not
--- apr-1.3.9/configure Mon Sep 21 14:59:34 2009
+++ apr-1.3.9/configure Wed Dec 2 01:45:45 2009
@@ -5762,6 +5762,10 @@
ac_cv_o_nonblock_inherited="yes"
fi
+ if test -z "$ac_cv_func_kqueue"; then
+ test "x$silent" != "xyes" && echo " setting ac_cv_func_kqueue to \"no\""
+ ac_cv_func_kqueue="no"
+ fi
;;
*-netbsd*)
@@ -5792,6 +5796,10 @@
ac_cv_o_nonblock_inherited="yes"
fi
+ if test -z "$ac_cv_func_kqueue"; then
+ test "x$silent" != "xyes" && echo " setting ac_cv_func_kqueue to \"no\""
+ ac_cv_func_kqueue="no"
+ fi
;;
*-freebsd*)
@@ -5838,15 +5846,12 @@
fi
fi
- # prevent use of KQueue before FreeBSD 4.8
- if test $os_version -lt "480000"; then
-
+ # prevent use of KQueue
if test -z "$ac_cv_func_kqueue"; then
test "x$silent" != "xyes" && echo " setting ac_cv_func_kqueue to \"no\""
ac_cv_func_kqueue="no"
fi
- fi
;;
*-k*bsd*-gnu)
------------------------------------------------------------------------------
Join us December 9, 2009 for the Red Hat Virtual Experience,
a free event focused on virtualization and cloud computing.
Attend in-depth sessions from your desk. Your couch. Anywhere.
http://p.sf.net/sfu/redhat-sfdev2dev
_______________________________________________
Ganglia-developers mailing list
Ganglia-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/ganglia-developers