Comment #1 on issue 3060 by yang...@chromium.org: V8 3.23.1 and later do
not honor v8::V8::IgnoreOutOfMemoryException()
http://code.google.com/p/v8/issues/detail?id=3060
Unfortunately, I would say this is working as intended. We actually need to
reconsider whether IgnoreOutOfMemoryException is a good idea at all.
To encourage further discussion, I'll briefly explain the status quo:
The original idea was that if V8 encounters an OOM condition, we unwind the
stack until the API function that initiated execution. If we chose to not
ignore, we then would call the FatalErrorCallback. If we ignore, then we
expect the embedder to handle this correctly. Note that we honor ignore
only in API calls. So ignore only works if we unwind the stack down to the
API call.
Ever since we started handlifying V8's runtime code, this is no longer
possible. If a factory method calling an allocation method of the heap runs
into OOM, it's caught by the CALL_HEAP_FUNCTION wrapper. We then directly
call v8::internal::V8::FatalProcessOutOfMemory. If the OOM condition
happens in handlified code directly (opposed to being hidden by the
CALL_HEAP_FUNCTION crutch), we call FatalProcessOutOfMemory directly. That
means that IgnoreOutOfMemoryException has no effect.
As we proceed with handlifying code, IgnoreOutOfMemoryException will make
less and less sense.
--
You received this message because this project is configured to send all
issue notifications to this address.
You may adjust your notification preferences at:
https://code.google.com/hosting/settings
--
--
v8-dev mailing list
v8-dev@googlegroups.com
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to v8-dev+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.