nodejs segmentation fault on opensuse 12.1 ( repo ver. ) #3184

Closed
andreisebastianc opened this Issue Apr 28, 2012 · 9 comments

Projects

None yet

5 participants

@andreisebastianc

Since updating to 6.15 node doesn't work for me anymore.
I was previously using another node repo, so I changed that one with :
http://download.opensuse.org/repositories/devel:/languages:/nodejs/openSUSE_12.1/
( from node docs ).
Any debugging or dependency check I might perform in order to figure out what's going on?

andrei@linux-m8e6:> node
Segmentation fault
andrei@linux-m8e6:
> node -v
v0.6.15

Thanks

@Sannis
Sannis commented Apr 28, 2012

I have the same problem with latest build and plan to deep into this on the weekend.

@bnoordhuis
Member

The repo version isn't distributed by us. Do you see the same issue when you download and build the 0.6.15 tarball from nodejs.org? If not, please report this issue to the maintainers of the package.

@andreisebastianc

Node works perfectly after installing from source.
I will raise an issue for the guys who maintain the opensuse repo.

Thanks and sorry for the false alarm.

@Sannis
Sannis commented Apr 29, 2012

I think the reason is V8 versions mismatch in repos (3.10.0.5/3.10.2.1) and node source (3.6.6.24?).

$ gdb node
GNU gdb (GDB) SUSE (7.3-41.1.2)
Copyright (C) 2011 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i586-suse-linux".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/bin/node...Reading symbols from /usr/lib/debug/usr/bin/node.debug...done.
done.
(gdb) run -e "1"
Starting program: /usr/bin/node -e "1"
[Thread debugging using libthread_db enabled]
[New Thread 0xb7fddb70 (LWP 30437)]
[Thread 0xb7fddb70 (LWP 30437) exited]

Program received signal SIGSEGV, Segmentation fault.
0xb7a708c2 in v8::internal::HandleScope::DeleteExtensions(v8::internal::Isolate*) () from /usr/lib/libv8.so.3

BTW, I hope that nodejs will move from devel:languiages:nodejs to Factory in thi month and will be included in main openSUSE repos.

@Sannis
Sannis commented Apr 29, 2012

@andreisebastianc, you can downgrade libv8-3 to 3.9.24.1-1.18.1, it works for me.

@andreisebastianc

@Sannis

  • good news about the main openSUSE repos
  • libv8 downgrade works for me too

Thanks for the help!

@kapouer
kapouer commented Jun 13, 2012

Quick fix on 0.6.19 to avoid that crash, disable call to V8::Dispose() at :
https://github.com/joyent/node/blob/v0.6.19/src/node.cc#L2648

@Sannis
Sannis commented Jun 13, 2012

v8 API docs says:

It should generally not be necessary to dispose v8 before exiting a process, this should happen automatically.
It is only necessary to use if the process needs the resources taken up by v8.

@k0da
k0da commented Jun 21, 2012

I can confirm that with quick fix. Problem gone. I've submitted fixed package to devel:languages:nodejs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment