Re: [ocamlnet 3.6] SOLVED Netplex broken on Mac OS X 10.4 PPC
Gerd Stolpmann <[email protected]> Sun, 30 Sep 2012 14:22:26 +0200
| Newsgroups | gmane.comp.lang.ocaml.lib.net.devel |
|---|---|
| Message-ID | <1349007746.3117.1@samsung> |
Am 28.09.2012 21:55:39 schrieb(en) Mat=EDas Giovannini: > Well, after a long detour I found and *fixed* the issue. After many = > hours > trying to backport to Ocamlnet 2.x, I found that the root cause is = > the one > identified by Joel Reymont back in 2007: > http://caml.inria.fr/pub/ml-archives/caml-list/2007/05/0a6a0d3113993e5eef= ccb7cc3aa3eebe.en.html > = > Here are my diffs against 3.6: > ~/src/ocamlnet-3.6/src/netsys> diff netsys.ml = > netsys.ml.orig125,127d124 > < | Unix.Unix_error(Unix.EAFNOSUPPORT,_,_) -> > < (* On older Mac OS X, getpeername on a pipe return EAFNOSUPPORT; > assume *) > < `Read_write No, returning `Recv_send_implied is not wrong: We are not using a pipe = here, but a socketpair. The error is in Uq_engines, where at one point = `Recv_send_implied is not supported where it should be. My tentative fix is in svn. Gerd > ~/src/ocamlnet-3.6/src/equeue> diff uq_engines.ml uq_engines.ml.orig > 3132c3132 > < try match Netsys.getpeername s with > --- > > match Netsys.getpeername s with > 3137,3138d3136 > < with Unix.Unix_error (Unix.EAFNOSUPPORT, _, _) > < `Sock_unix(stype, "") > 3143c3141 > < try match Netsys.getpeername s with > --- > > match Netsys.getpeername s with > 3148,3149d3145 > < with Unix.Unix_error (Unix.EAFNOSUPPORT, _, _) > < None > = > = > On Wed, Sep 26, 2012 at 9:15 PM, Mat=EDas Giovannini = > <[email protected]>wrote: > = > > Hi, > > > > I send out in the hopes that, despite the ancient software and = > platform > > I'm having problems with, someone could shed some light on this. = > Currently > > netplex is broken on this machine, failing with errors of the = > following > > sort: > > > > fd style: Recv_send_implied > > fd style: Recv_send_implied > > Netplex Catastrophic Error: Unable to send log message - exception > > Rpc_client.Communication_error(File "uq_engines.ml", line 2576, > > characters 6-12: Assertion failed) > > Log message is: poll: Exception Rpc_client.Communication_error(File = > " > > uq_engines.ml", line 2576, characters 6-12: Assertion failed) > > [Wed Sep 26 21:10:39 2012] [netplex.controller] [alert] Disabling = > service > > after 10 startup failures > > > > (the "fd_style" line is a strategically placed print statement). I = > am at a > > loss in following uq_engines.ml, so I don't know where to look. > > > > I configured ocamlnet with: > > > > ./configure -with-nethttpd -enable-zip -disable-tcl -prefer-netcgi2 > > -enable-pcre > > > > and the result is: > > > > able-tcl -prefer-netcgi2 -enable-pcre > > Welcome to Ocamlnet version 3.6 > > Checking operating system... Generic > > Checking for findlib... found > > Checking multi-threading support... posix (ok) > > Checking word size... 32 bit > > Checking endianess... big > > Checking for GPROF... found > > Checking for PCRE... found > > Checking for win32... no > > Checking whether Ocaml has Printexc.register_printer... found > > Checking for POSIX pthread... found > > Checking whether Ocaml has fancy page tables... found > > Checking for POSIX shared memory... found > > Checking for POSIX semaphores (anonymous)... not found > > Checking for POSIX semaphores (named)... found > > Checking for POSIX spawn... not found > > Checking for POSIX fadvise... not found > > Checking for POSIX fallocate... not found > > Checking for POSIX memalign... not found > > Checking for syslog... found > > Checking for POSIX functions like openat... not found > > Checking for fchdir... found > > Checking for fdopendir... not found > > Checking for realpath... not found > > Checking for grantpt (System V style PTYs)... found > > Checking for posix_openpt (System V style PTYs)... found > > Checking for initgroups...found > > Checking for POSIX clocks...not found > > Checking for POSIX timers...not found > > Checking for eventfd (Linux)...not found > > Checking for timerfd (Linux)...not found > > Checking for epoll (Linux)...not found > > Checking for compare_and_swap (GCC)...not found > > Checking for GPROF... found > > Checking for O_SHARE_DELETE... yes > > Checking for getpeereid... found > > Checking for getpeerucred... not found > > Checking for camlzip... found > > Preprocessor for ocamlrpcgen: cpp > > > > Effective options: > > -enable-pcre > > -disable-gtk > > -disable-gtk2 > > -disable-tcl > > -disable-ssl > > -enable-zip > > -disable-crypto > > -disable-apache > > -with-nethttpd > > -without-rpc-auth-dh > > -bindir /opt/ocaml/bin > > -datadir /opt/ocaml/lib/site-lib/netstring > > -cpp cpp > > > > uname -a is "Darwin Blue.local 8.11.0 Darwin Kernel Version 8.11.0: = > Wed > > Oct 10 18:26:00 PDT 2007; root:xnu-792.24.17~1/RELEASE_PPC Power = > Macintosh > > powerpc", ocaml -version is "The OCaml toplevel, version 4.00.0" = > and gcc > > --version gives: > > > > powerpc-apple-darwin8-gcc-4.0.1 (GCC) 4.0.1 (Apple Computer, Inc. = > build > > 5370) > > Copyright (C) 2005 Free Software Foundation, Inc. > > This is free software; see the source for copying conditions. = > There is NO > > warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR = > PURPOSE. > > > > (prehistoric, I know). If anyone has any ideas, I'd be grateful = > (except > > for suggestions to run Linux! ;-) > > > > Best regards, > > Mat=EDas. > > > = ------Zitierte Anlage------ > -------------------------------------------------------------------------= ----- > Got visibility? > Most devs has no idea what their production app looks like. > Find out how fast your code is with AppDynamics Lite. > http://ad.doubleclick.net/clk;262219671;13503038;y? > http://info.appdynamics.com/FreeJavaPerformanceDownload.html ------Zitierte Anlage------ > _______________________________________________ > Ocamlnet-devel mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/ocamlnet-devel > = -- = ------------------------------------------------------------ Gerd Stolpmann, Darmstadt, Germany [email protected] Creator of GODI and camlcity.org. Contact details: http://www.camlcity.org/contact.html Company homepage: http://www.gerd-stolpmann.de ------------------------------------------------------------ ---------------------------------------------------------------------------= --- Everyone hates slow websites. So do we. Make your web apps faster with AppDynamics Download AppDynamics Lite for free today: http://ad.doubleclick.net/clk;258768047;13503038;j? http://info.appdynamics.com/FreeJavaPerformanceDownload.html