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

Reply via email to