Hello Jakob,

Thank you for the quick response. Can you please help me fetch the latest 
*stable* release? (I can't seem to find the instructions in the V8 docs)

D.

On Wednesday, February 10, 2016 at 11:36:41 AM UTC+2, Jakob Kummerow wrote:
>
> Version "3.31" doesn't really exist. Yes we once created a branch of that 
> name, but it was abandoned right after because it was in such a bad state 
> that we gave up trying to stabilize it. It was never used in a Chrome 
> stable channel release, which would have been your hint that it's ready for 
> production.
>
> I'd guess that your string has nothing to do with the failure, it just so 
> happens to be the allocation that triggers a GC round. Somehow spinning up 
> the sweeper threads fails. If this were happening on the 4.8 or 4.9 branch, 
> I'd investigate further... ;-)
>
> On Wed, Feb 10, 2016 at 9:59 AM, Danny Dorfman <wilder...@gmail.com 
> <javascript:>> wrote:
>
>> Hello there,
>>
>> I am running with V8 3.31, the debug version, and I get this crash upon 
>> allocating a large string:
>>
>> #0  0x00007f0a6b0efb4b in v8::base::OS::Abort () at 
>> ../src/base/platform/platform-posix.cc:210
>> 210  if (g_hard_abort) {
>> (gdb) bt
>> #0  0x00007f0a6b0efb4b in v8::base::OS::Abort () at 
>> ../src/base/platform/platform-posix.cc:210
>> #1  0x00007f0a6b0ec208 in V8_Fatal (file=0x7f0a6b3c0c28 
>> ".././src/base/platform/mutex.h", line=77, format=0x7f0a6b0f0e38 
>> "CHECK_EQ(%s, %s) failed\n#   Expected: %i\n#   Found: %i") at 
>> ../src/base/logging.cc:87
>> #2  0x00007f0a6aaa1b12 in CheckEqualsHelper (file=0x7f0a6b3c0c28 
>> ".././src/base/platform/mutex.h", line=77, expected_source=0x7f0a6b3c0c26 
>> "1", expected=1, value_source=0x7f0a6b3c0c1f "level_", value=2) at 
>> .././src/base/logging.h:51
>> #3  0x00007f0a6b0ed084 in v8::base::Mutex::AssertHeldAndUnmark 
>> (this=0x7f0ad84971a0) at .././src/base/platform/mutex.h:77
>> #4  0x00007f0a6b0ed934 in v8::base::Mutex::Unlock (this=0x7f0ad84971a0) 
>> at ../src/base/platform/mutex.cc:134
>> #5  0x00007f0a6ad57df2 in 
>> v8::internal::MarkCompactCollector::StartSweeperThreads 
>> (this=0x7f0ad872ac68) at ../src/heap/mark-compact.cc:461
>> #6  0x00007f0a6ad625a2 in v8::internal::MarkCompactCollector::SweepSpaces 
>> (this=0x7f0ad872ac68) at ../src/heap/mark-compact.cc:4134
>> #7  0x00007f0a6ad573de in 
>> v8::internal::MarkCompactCollector::CollectGarbage (this=0x7f0ad872ac68) at 
>> ../src/heap/mark-compact.cc:313
>> #8  0x00007f0a6ad297ad in v8::internal::Heap::MarkCompact 
>> (this=0x7f0ad8725d80) at ../src/heap/heap.cc:1205
>> #9  0x00007f0a6ad29182 in v8::internal::Heap::PerformGarbageCollection 
>> (this=0x7f0ad8725d80, collector=v8::internal::MARK_COMPACTOR, 
>> gc_callback_flags=v8::kNoGCCallbackFlags) at ../src/heap/heap.cc:1095
>> #10 0x00007f0a6ad2851c in v8::internal::Heap::CollectGarbage 
>> (this=0x7f0ad8725d80, collector=v8::internal::MARK_COMPACTOR, 
>> gc_reason=0x7f0a6b166db4 "last resort gc", collector_reason=0x0, 
>> gc_callback_flags=v8::kNoGCCallbackFlags) at ./src/heap/heap.cc:843
>> #11 0x00007f0a6ad2819c in v8::internal::Heap::CollectAllAvailableGarbage 
>> (this=0x7f0ad8725d80, gc_reason=0x7f0a6b166db4 "last resort gc") at 
>> ../src/heap/heap.cc:762
>> #12 0x00007f0a6acc31ed in v8::internal::Factory::NewRawTwoByteString 
>> (this=0x7f0ad8725d60, length=431158, pretenure=v8::internal::NOT_TENURED) 
>> at ../src/factory.cc:385
>> #13 0x00007f0a6acc0ff0 in v8::internal::Factory::NewStringFromUtf8 
>> (this=0x7f0ad8725d60, string=..., pretenure=v8::internal::NOT_TENURED) at 
>> ../src/factory.cc:247
>> #14 0x00007f0a6aada0fa in v8::(anonymous namespace)::NewString 
>> (factory=0x7f0ad8725d60, type=v8::String::kNormalString, string=...) at 
>> ../src/api.cc:5452
>> #15 0x00007f0a6aaeaad6 in v8::(anonymous namespace)::NewString<char> 
>> (v8_isolate=0x7f0ad8725d60, location=0x7f0a6b0f8ed4 
>> "v8::String::NewFromUtf8()", env=0x7f0a6b0f8ec0 "String::NewFromUtf8", 
>>  data=0x7f0ad853f660 '/' <repeats 74 times>, "\n// xxxxxxxxx \n// ", '-' 
>> <repeats 75 times>, "\n\n//"..., type=v8::String::kNormalString, 
>> length=431185)  at ../src/api.cc:5496
>> #16 0x00007f0a6aada20b in v8::String::NewFromUtf8 
>> (isolate=0x7f0ad8725d60, data=0x7f0ad853f660 '/' <repeats 74 times>, 
>> "\n// xxxxxxxxx \n// ", '-' <repeats 75 times>, "\n\n//"..., 
>> type=v8::String::kNormalString, length=431185) at ../src/api.cc:5515
>> - - - - - - 
>>
>> My code appears in the next frame, and says something like:
>> v8::Local<v8::String> vSource = v8::String::NewFromUtf8(isolate, src, 
>> v8::String::kNormalString, len);
>>
>> As you can see, the string is quite large (431185 bytes long). Any idea 
>> why this is happening? What can I do about this?
>>
>> Regards,
>> Danny
>>
>>
>> -- 
>> -- 
>> v8-users mailing list
>> v8-u...@googlegroups.com <javascript:>
>> http://groups.google.com/group/v8-users
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "v8-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to v8-users+u...@googlegroups.com <javascript:>.
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
-- 
v8-users mailing list
v8-users@googlegroups.com
http://groups.google.com/group/v8-users
--- 
You received this message because you are subscribed to the Google Groups 
"v8-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to v8-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to