mod_neko issue

classic Classic list List threaded Threaded
7 messages Options
Reply | Threaded
Open this post in threaded view
|

mod_neko issue

Ian Martins
For some reason mod_neko is hanging on an allocation while reading the
debug info for the index.n module.  the neko executable, however, reads
and executes index.n without a problem.  everything else appears to be
the same between them until that allocation.  mod_neko hangs on the same
line every time.  since it gets that far it must be true that apache is
finding mod_neko.  since mod_neko is able to access the file the problem
can't be file permissions or that index.n is missing.  below is the
stack trace showing where it gets when it hangs.

I'm not sure where to go from here.  any ideas?


stack trace (first call at top):

mod_neko.c:255.  
val_callEx(mload,val_field(mload,val_id("loadmodule")),args,2,&exc);
callback.c:77.    ret =
((c_prim2)((vfunction*)f)->addr)(args[0],args[1]);
load.c:387.       m = neko_read_module(r,p,vthis);
module.c:389.     if( !read_debug_infos(r,p,tmp,m) ) {
module.c:270.     positions = alloc_array(2 + (npos / 20)); /* 2 + (npos
/ 20) = 523 */
alloc.c:193.      v = (value)gc_alloc_big(sizeof(varray)+(n -
1)*sizeof(value)); /* 2096 */

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Nicolas Cannasse
Ian Martins a écrit :

> For some reason mod_neko is hanging on an allocation while reading the
> debug info for the index.n module.  the neko executable, however, reads
> and executes index.n without a problem.  everything else appears to be
> the same between them until that allocation.  mod_neko hangs on the same
> line every time.  since it gets that far it must be true that apache is
> finding mod_neko.  since mod_neko is able to access the file the problem
> can't be file permissions or that index.n is missing.  below is the
> stack trace showing where it gets when it hangs.
>
> I'm not sure where to go from here.  any ideas?

Seems like a GC issue, make sure that you have latest libgc installed.

Nicolas

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Ian Martins
On Wed, 28 Jul 2010 09:46 +0200, "Nicolas Cannasse"
<[hidden email]> wrote:

> Ian Martins a écrit :
> > For some reason mod_neko is hanging on an allocation while reading the
> > debug info for the index.n module.  the neko executable, however, reads
> > and executes index.n without a problem.  everything else appears to be
> > the same between them until that allocation.  mod_neko hangs on the same
> > line every time.  since it gets that far it must be true that apache is
> > finding mod_neko.  since mod_neko is able to access the file the problem
> > can't be file permissions or that index.n is missing.  below is the
> > stack trace showing where it gets when it hangs.
> >
> > I'm not sure where to go from here.  any ideas?
>
> Seems like a GC issue, make sure that you have latest libgc installed.
>

I had the latest ubuntu package (ver 6.8).  I tried compiling a bunch of
different versions (6.4, 6.8, 7.1, 7.2alpha4) and re-linking libneko to
them, but all gave the same result.  I traced it to the line in the
libgc code where it hangs (it's in some thread controlling code) and
left a message on their mailing list.


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Randy Stauner
here's my current setup (which works)

Ubuntu 10.04

Server version: Apache/2.2.14 (Ubuntu)
Server built:   Apr 13 2010 19:28:27

haxe-2.05-linux (installed from the auto-install hxinst-linux script)

libgc1c2        1:6.8-1.2ubuntu1

$ ldd /usr/lib/neko/{mod_neko2.ndll,libneko.so}
/usr/lib/neko/mod_neko2.ndll:
linux-gate.so.1 =>  (0x007d1000)
libneko.so => /usr/lib/libneko.so (0x00f42000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc2000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00110000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00e04000)
libgc.so.1 => /usr/lib/libgc.so.1 (0x00579000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0026a000)
/lib/ld-linux.so.2 (0x00725000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00669000)
/usr/lib/neko/libneko.so:
linux-gate.so.1 =>  (0x0040b000)
libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x007f6000)
libgc.so.1 => /usr/lib/libgc.so.1 (0x00c1f000)
libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00110000)
libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc5000)
libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00e09000)
/lib/ld-linux.so.2 (0x00f6a000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00136000)

On Wed, Jul 28, 2010 at 3:03 PM, Ian Martins <[hidden email]> wrote:
On Wed, 28 Jul 2010 09:46 +0200, "Nicolas Cannasse"
<[hidden email]> wrote:
> Ian Martins a écrit :
> > For some reason mod_neko is hanging on an allocation while reading the
> > debug info for the index.n module.  the neko executable, however, reads
> > and executes index.n without a problem.  everything else appears to be
> > the same between them until that allocation.  mod_neko hangs on the same
> > line every time.  since it gets that far it must be true that apache is
> > finding mod_neko.  since mod_neko is able to access the file the problem
> > can't be file permissions or that index.n is missing.  below is the
> > stack trace showing where it gets when it hangs.
> >
> > I'm not sure where to go from here.  any ideas?
>
> Seems like a GC issue, make sure that you have latest libgc installed.
>

I had the latest ubuntu package (ver 6.8).  I tried compiling a bunch of
different versions (6.4, 6.8, 7.1, 7.2alpha4) and re-linking libneko to
them, but all gave the same result.  I traced it to the line in the
libgc code where it hangs (it's in some thread controlling code) and
left a message on their mailing list.


--
haXe - an open source web programming language
http://haxe.org


--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Ian Martins
thanks for the info.  my system is identical, except that my apache was
apparently built 61 seconds after yours.
I think I should purge and reinstall haxe, neko, libgc, and apache2.

On Wed, 28 Jul 2010 18:37 -0700, "Randy Stauner"
<[hidden email]> wrote:

> here's my current setup (which works)
>
> Ubuntu 10.04
>
> Server version: Apache/2.2.14 (Ubuntu)
> Server built:   Apr 13 2010 19:28:27
>
> haxe-2.05-linux (installed from the auto-install hxinst-linux script)
>
> libgc1c2        1:6.8-1.2ubuntu1
>
> $ ldd /usr/lib/neko/{mod_neko2.ndll,libneko.so}
> /usr/lib/neko/mod_neko2.ndll:
> linux-gate.so.1 =>  (0x007d1000)
>  libneko.so => /usr/lib/libneko.so (0x00f42000)
> libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc2000)
>  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00110000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00e04000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00579000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0026a000)
>  /lib/ld-linux.so.2 (0x00725000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00669000)
> /usr/lib/neko/libneko.so:
> linux-gate.so.1 =>  (0x0040b000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x007f6000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00c1f000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00110000)
>  libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc5000)
> libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00e09000)
>  /lib/ld-linux.so.2 (0x00f6a000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00136000)
>
> On Wed, Jul 28, 2010 at 3:03 PM, Ian Martins <[hidden email]> wrote:
>
> > On Wed, 28 Jul 2010 09:46 +0200, "Nicolas Cannasse"
> > <[hidden email]> wrote:
> > > Ian Martins a écrit :
> > > > For some reason mod_neko is hanging on an allocation while reading the
> > > > debug info for the index.n module.  the neko executable, however, reads
> > > > and executes index.n without a problem.  everything else appears to be
> > > > the same between them until that allocation.  mod_neko hangs on the
> > same
> > > > line every time.  since it gets that far it must be true that apache is
> > > > finding mod_neko.  since mod_neko is able to access the file the
> > problem
> > > > can't be file permissions or that index.n is missing.  below is the
> > > > stack trace showing where it gets when it hangs.
> > > >
> > > > I'm not sure where to go from here.  any ideas?
> > >
> > > Seems like a GC issue, make sure that you have latest libgc installed.
> > >
> >
> > I had the latest ubuntu package (ver 6.8).  I tried compiling a bunch of
> > different versions (6.4, 6.8, 7.1, 7.2alpha4) and re-linking libneko to
> > them, but all gave the same result.  I traced it to the line in the
> > libgc code where it hangs (it's in some thread controlling code) and
> > left a message on their mailing list.
> >
> >
> > --
> > haXe - an open source web programming language
> > http://haxe.org
> >
>

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Ian Martins
In reply to this post by Randy Stauner
Randy,

which mpm are you using?  run "apache2 -l" to find out.

I was using worker.c.  apache's site says that the unix default is
prefork and that it is more stable, so I recompiled apache with prefork
and now mod_neko works.

I just noticed that there's an ubuntu package for apache2 with prefork.
I bet it was built 61 seconds after the default package...

-Ian

On Wed, 28 Jul 2010 18:37 -0700, "Randy Stauner"
<[hidden email]> wrote:

> here's my current setup (which works)
>
> Ubuntu 10.04
>
> Server version: Apache/2.2.14 (Ubuntu)
> Server built:   Apr 13 2010 19:28:27
>
> haxe-2.05-linux (installed from the auto-install hxinst-linux script)
>
> libgc1c2        1:6.8-1.2ubuntu1
>
> $ ldd /usr/lib/neko/{mod_neko2.ndll,libneko.so}
> /usr/lib/neko/mod_neko2.ndll:
> linux-gate.so.1 =>  (0x007d1000)
>  libneko.so => /usr/lib/libneko.so (0x00f42000)
> libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc2000)
>  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00110000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00e04000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00579000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0026a000)
>  /lib/ld-linux.so.2 (0x00725000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00669000)
> /usr/lib/neko/libneko.so:
> linux-gate.so.1 =>  (0x0040b000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x007f6000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00c1f000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00110000)
>  libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc5000)
> libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00e09000)
>  /lib/ld-linux.so.2 (0x00f6a000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00136000)
>
> On Wed, Jul 28, 2010 at 3:03 PM, Ian Martins <[hidden email]> wrote:
>
> > On Wed, 28 Jul 2010 09:46 +0200, "Nicolas Cannasse"
> > <[hidden email]> wrote:
> > > Ian Martins a écrit :
> > > > For some reason mod_neko is hanging on an allocation while reading the
> > > > debug info for the index.n module.  the neko executable, however, reads
> > > > and executes index.n without a problem.  everything else appears to be
> > > > the same between them until that allocation.  mod_neko hangs on the
> > same
> > > > line every time.  since it gets that far it must be true that apache is
> > > > finding mod_neko.  since mod_neko is able to access the file the
> > problem
> > > > can't be file permissions or that index.n is missing.  below is the
> > > > stack trace showing where it gets when it hangs.
> > > >
> > > > I'm not sure where to go from here.  any ideas?
> > >
> > > Seems like a GC issue, make sure that you have latest libgc installed.
> > >
> >
> > I had the latest ubuntu package (ver 6.8).  I tried compiling a bunch of
> > different versions (6.4, 6.8, 7.1, 7.2alpha4) and re-linking libneko to
> > them, but all gave the same result.  I traced it to the line in the
> > libgc code where it hangs (it's in some thread controlling code) and
> > left a message on their mailing list.
> >
> >
> > --
> > haXe - an open source web programming language
> > http://haxe.org
> >
>

--
haXe - an open source web programming language
http://haxe.org
Reply | Threaded
Open this post in threaded view
|

Re: mod_neko issue

Randy Stauner
oh.  no i use prefork.  I remember when Apache 2 came out and they were trying to convince people to get off of 1.3 and use 2 and their suggestion was that prefork was the stable replacement for 1.3

*$ apache2 -l
Compiled in modules:
  core.c
  mod_log_config.c
  mod_logio.c
  prefork.c
  http_core.c
  mod_so.c

*$ dpkg --get-selections | grep -i apache
apache2-mpm-prefork                             install
apache2-utils                                   install
apache2.2-bin                                   install
apache2.2-common                                install
libapache2-mod-fcgid                            install
libapache2-mod-php5                             install

mpm_prefork_module does show up in the `apache2 -M` output that i mailed earlier
but obviously i didn't think much of it.

I bet you're right about the 61 seconds :-)

Glad you figured it out, and 'good to know' regarding the worker mpm (not playing nice with all modules).

On Fri, Jul 30, 2010 at 12:31 PM, Ian Martins <[hidden email]> wrote:
Randy,

which mpm are you using?  run "apache2 -l" to find out.

I was using worker.c.  apache's site says that the unix default is
prefork and that it is more stable, so I recompiled apache with prefork
and now mod_neko works.

I just noticed that there's an ubuntu package for apache2 with prefork.
I bet it was built 61 seconds after the default package...

-Ian

On Wed, 28 Jul 2010 18:37 -0700, "Randy Stauner"
<[hidden email]> wrote:
> here's my current setup (which works)
>
> Ubuntu 10.04
>
> Server version: Apache/2.2.14 (Ubuntu)
> Server built:   Apr 13 2010 19:28:27
>
> haxe-2.05-linux (installed from the auto-install hxinst-linux script)
>
> libgc1c2        1:6.8-1.2ubuntu1
>
> $ ldd /usr/lib/neko/{mod_neko2.ndll,libneko.so}
> /usr/lib/neko/mod_neko2.ndll:
> linux-gate.so.1 =>  (0x007d1000)
>  libneko.so => /usr/lib/libneko.so (0x00f42000)
> libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc2000)
>  libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00110000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x00e04000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00579000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x0026a000)
>  /lib/ld-linux.so.2 (0x00725000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00669000)
> /usr/lib/neko/libneko.so:
> linux-gate.so.1 =>  (0x0040b000)
> libdl.so.2 => /lib/tls/i686/cmov/libdl.so.2 (0x007f6000)
>  libgc.so.1 => /usr/lib/libgc.so.1 (0x00c1f000)
> libm.so.6 => /lib/tls/i686/cmov/libm.so.6 (0x00110000)
>  libpthread.so.0 => /lib/tls/i686/cmov/libpthread.so.0 (0x00fc5000)
> libc.so.6 => /lib/tls/i686/cmov/libc.so.6 (0x00e09000)
>  /lib/ld-linux.so.2 (0x00f6a000)
> libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00136000)
>
> On Wed, Jul 28, 2010 at 3:03 PM, Ian Martins <[hidden email]> wrote:
>
> > On Wed, 28 Jul 2010 09:46 +0200, "Nicolas Cannasse"
> > <[hidden email]> wrote:
> > > Ian Martins a écrit :
> > > > For some reason mod_neko is hanging on an allocation while reading the
> > > > debug info for the index.n module.  the neko executable, however, reads
> > > > and executes index.n without a problem.  everything else appears to be
> > > > the same between them until that allocation.  mod_neko hangs on the
> > same
> > > > line every time.  since it gets that far it must be true that apache is
> > > > finding mod_neko.  since mod_neko is able to access the file the
> > problem
> > > > can't be file permissions or that index.n is missing.  below is the
> > > > stack trace showing where it gets when it hangs.
> > > >
> > > > I'm not sure where to go from here.  any ideas?
> > >
> > > Seems like a GC issue, make sure that you have latest libgc installed.
> > >
> >
> > I had the latest ubuntu package (ver 6.8).  I tried compiling a bunch of
> > different versions (6.4, 6.8, 7.1, 7.2alpha4) and re-linking libneko to
> > them, but all gave the same result.  I traced it to the line in the
> > libgc code where it hangs (it's in some thread controlling code) and
> > left a message on their mailing list.
> >
> >
> > --
> > haXe - an open source web programming language
> > http://haxe.org
> >
>


--
haXe - an open source web programming language
http://haxe.org