RoamUniverse / pyv8

Automatically exported from code.google.com/p/pyv8
0 stars 0 forks source link

Segfault on testMultiPythonThread test #108

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. $ python2.5 PyV8.py -v TestMultithread.testMultiPythonThread
2011-10-12 18:02:34,191 INFO testing PyV8 module 1.0 with V8 v3.6.6
testMultiPythonThread (__main__.TestMultithread) ... Segmentation fault

What is the expected output? What do you see instead?

Expected passed test, got segfault instead.

What version of the product are you using? On what operating system?

Last revision from trunk.

Please provide any additional information below.

Original issue reported on code.google.com by dim...@gmail.com on 12 Oct 2011 at 2:05

GoogleCodeExporter commented 9 years ago

Original comment by flier...@gmail.com on 13 Oct 2011 at 3:55

GoogleCodeExporter commented 9 years ago
Sorry, but I can't reproduce your crash, could you reproduce your issue with a 
clean build of V8 and PyV8, what is your CPU, OS, Python and boost version?

Thanks

Original comment by flier...@gmail.com on 20 Oct 2011 at 2:48

GoogleCodeExporter commented 9 years ago
I'm having the same problem, though peculiarly it doesn't happen if I run each 
test together.

Results below.

~/pyv8# python PyV8.py -v TestMultithread
2012-01-28 20:21:16,793 INFO testing PyV8 module 1.0 with V8 v3.8.9
testLocker (__main__.TestMultithread) ... ok
testMultiJavascriptThread (__main__.TestMultithread) ... ok
testMultiPythonThread (__main__.TestMultithread) ... ok

----------------------------------------------------------------------
Ran 3 tests in 2.011s

OK
~/pyv8# python PyV8.py -v TestMultithread.testMultiPythonThread
2012-01-28 20:21:24,332 INFO testing PyV8 module 1.0 with V8 v3.8.9
testMultiPythonThread (__main__.TestMultithread) ... Segmentation fault

I'm running 2.6.39.1, i686

Original comment by partyona...@gmail.com on 29 Jan 2012 at 1:39

GoogleCodeExporter commented 9 years ago
Thanks, it seems the test case depend on some situation, I will fix it later.

Original comment by flier...@gmail.com on 29 Jan 2012 at 3:34

GoogleCodeExporter commented 9 years ago
It seems caused by google v8 that changed API implementation, added some notes

   In addition to any other synchronization mechanism that may be used, the v8::Locker and v8::Unlocker classes must be used to signal thead switches to V8.

Original comment by flier...@gmail.com on 31 Jan 2012 at 8:21

GoogleCodeExporter commented 9 years ago
Hello,

I've built an example that can consistently crash in both Windows and Linux. 
I'm wondering - should we be using Locker and Unlocker directly, or is that in 
the PyV8 code?

Thanks!

Original comment by partyona...@gmail.com on 31 Jan 2012 at 8:23

Attachments:

GoogleCodeExporter commented 9 years ago
Hello,

Do you have the revision information on the updated Google V8 API? I can try 
and fix it.

Thanks!

Original comment by partyona...@gmail.com on 21 Feb 2012 at 9:33

GoogleCodeExporter commented 9 years ago
The same bug too:

$ python PyV8.py -v TestMultithread.testLocker 
TestMultithread.testMultiPythonThread
2013-01-16 06:59:46,287 INFO testing PyV8 module 1.0 with V8 v3.15.11.2
testLocker (__main__.TestMultithread) ... ok
testMultiPythonThread (__main__.TestMultithread) ... ok

$ python PyV8.py -v TestMultithread.testMultiPythonThread 
TestMultithread.testLocker
2013-01-16 06:59:49,995 INFO testing PyV8 module 1.0 with V8 v3.15.11.2
testMultiPythonThread (__main__.TestMultithread) ... Segmentation fault

Ubuntu Precise x86_64, python2.7, PyV8 458, v8 13261

Original comment by e.generalov on 16 Jan 2013 at 3:06