Google Chrome ran out of memory while trying display this page
Reported by
mikhail....@gmail.com,
Dec 6 2016
|
|||||||||||||
Issue descriptionUserAgent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.14 Safari/537.36 Steps to reproduce the problem: 1. Open https://explain.sy24.ru/ 2. 3. What is the expected behavior? What went wrong? Page not opened in Google Chrome, but successfull opened in Firefox Crashed report ID: How much crashed? Just one tab Is it a problem with a plugin? N/A Did this work before? N/A Chrome version: 56.0.2924.14 Channel: dev OS Version: 6.1 (Windows 7, Windows Server 2008 R2) Flash Version:
,
Dec 7 2016
Able to reproduce the issue on win10 chrome version 56.0.2924.18 and canary 57.0.2943.0 - page not opening and tab crashes But "page unresponsive" warning is seen in firefox browser as well Could you please recheck the same and update the thread.
,
Dec 7 2016
Demonstration: https://youtu.be/ml7IaRwUZ3Q
,
Dec 8 2016
Tested the issue on chrome Stable #55.0.2883.75, Canary 57.0.2944.0 in Windows 10.0 and was able to reproduce the issue. This is a Non-Regression issue since seeing this from M30 #30.0.1549.0, Making the status to Untriaged so that the issue would get addressed. Note : 1.After loading the page crash is happening. 2.Able to reproduce the issue in MAC 10.11.6 and Linux Ubuntu 14.04. Thank you.
,
Dec 8 2016
Adding memory sheriff.
,
Dec 8 2016
,
Dec 15 2016
Assigning to memory sheriff for investigation.
,
Jan 10 2017
here's the log with --trace-gc --trace-gc-verbose [7008:000000C93E0965D0] 30395 ms: Heap growing factor 1.1 based on mu=0.970, speed_ratio=11844 (gc=36118187, mutator=3050) [7008:000000C93E0965D0] 30395 ms: Grow: old size: 2371275 KB, new limit: 2234213 KB (1.1) [7008:000000C93E0965D0] 30395 ms: Mark-sweep 2315.7 (2540.0) -> 2315.7 (2540.0) MB, 24.6 / 0.0 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 35 ms) allocation failure GC in old space requested [7008:000000C93E0965D0] Memory allocator, used: 2600960 KB, available: 0 KB [7008:000000C93E0965D0] New space, used: 0 KB, available: 2014 KB, committed: 4096 KB [7008:000000C93E0965D0] Old space, used: 2369798 KB, available: 199 KB, committed: 2592652 KB [7008:000000C93E0965D0] Code space, used: 1228 KB, available: 0 KB, committed: 1492KB [7008:000000C93E0965D0] Map space, used: 248 KB, available: 0 KB, committed: 532 KB [7008:000000C93E0965D0] Large object space, used: 0 KB, available: 0 KB, committed: 0 KB [7008:000000C93E0965D0] All spaces, used: 2371275 KB, available: 2213 KB, committed: 2598772KB [7008:000000C93E0965D0] External memory reported: 5194 KB [7008:000000C93E0965D0] Total time spent in GC : 5515.0 ms [7008:000000C93E0965D0] 30430 ms: Heap growing factor 1.1 based on mu=0.970, speed_ratio=18598 (gc=36433245, mutator=1959) [7008:000000C93E0965D0] 30431 ms: Grow: old size: 2371242 KB, new limit: 2234197 KB (1.1) [7008:000000C93E0965D0] 30431 ms: Mark-sweep 2315.7 (2540.0) -> 2315.7 (2540.0) MB, 24.6 / 0.0 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 35 ms) allocation failure GC in old space requested [7008:000000C93E0965D0] Memory allocator, used: 2600960 KB, available: 0 KB [7008:000000C93E0965D0] New space, used: 0 KB, available: 2014 KB, committed: 4096 KB [7008:000000C93E0965D0] Old space, used: 2369791 KB, available: 0 KB, committed: 2592652 KB [7008:000000C93E0965D0] Code space, used: 1202 KB, available: 0 KB, committed: 1492KB [7008:000000C93E0965D0] Map space, used: 248 KB, available: 0 KB, committed: 532 KB [7008:000000C93E0965D0] Large object space, used: 0 KB, available: 0 KB, committed: 0 KB [7008:000000C93E0965D0] All spaces, used: 2371242 KB, available: 2014 KB, committed: 2598772KB [7008:000000C93E0965D0] External memory reported: 5194 KB [7008:000000C93E0965D0] Total time spent in GC : 5539.6 ms [7008:000000C93E0965D0] 30475 ms: Heap growing factor 1.1 based on mu=0.970, speed_ratio=20286 (gc=36925376, mutator=1820) [7008:000000C93E0965D0] 30475 ms: Grow: old size: 2371220 KB, new limit: 2234186 KB (1.1) [7008:000000C93E0965D0] 30479 ms: Mark-sweep 2315.7 (2540.0) -> 2315.6 (2536.0) MB, 38.0 / 4.5 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 48 ms) last resort [7008:000000C93E0965D0] Memory allocator, used: 2596864 KB, available: 0 KB [7008:000000C93E0965D0] New space, used: 0 KB, available: 1007 KB, committed: 1024 KB [7008:000000C93E0965D0] Old space, used: 2369784 KB, available: 34864 KB, committed: 2591628 KB [7008:000000C93E0965D0] Code space, used: 1187 KB, available: 0 KB, committed: 1492KB [7008:000000C93E0965D0] Map space, used: 248 KB, available: 0 KB, committed: 532 KB [7008:000000C93E0965D0] Large object space, used: 0 KB, available: 0 KB, committed: 0 KB [7008:000000C93E0965D0] All spaces, used: 2371220 KB, available: 35871 KB, committed: 2594676KB [7008:000000C93E0965D0] External memory reported: 5194 KB [7008:000000C93E0965D0] Total time spent in GC : 5577.6 ms [7008:000000C93E0965D0] 30511 ms: Heap growing factor 1.1 based on mu=0.970, speed_ratio=21574 (gc=36763608, mutator=1704) [7008:000000C93E0965D0] 30512 ms: Grow: old size: 2371204 KB, new limit: 2234178 KB (1.1) [7008:000000C93E0965D0] 30516 ms: Mark-sweep 2315.6 (2536.0) -> 2315.6 (2536.0) MB, 36.1 / 4.4 ms last resort [7008:000000C93E0965D0] Memory allocator, used: 2596864 KB, available: 0 KB [7008:000000C93E0965D0] New space, used: 0 KB, available: 1007 KB, committed: 1024 KB [7008:000000C93E0965D0] Old space, used: 2369783 KB, available: 34478 KB, committed: 2591628 KB [7008:000000C93E0965D0] Code space, used: 1172 KB, available: 0 KB, committed: 1492KB [7008:000000C93E0965D0] Map space, used: 248 KB, available: 0 KB, committed: 532 KB [7008:000000C93E0965D0] Large object space, used: 0 KB, available: 0 KB, committed: 0 KB [7008:000000C93E0965D0] All spaces, used: 2371204 KB, available: 35485 KB, committed: 2594676KB [7008:000000C93E0965D0] External memory reported: 5194 KB [7008:000000C93E0965D0] Total time spent in GC : 5613.6 ms <--- Last few GCs ---> [7008:000000C93E0965D0] 30479 ms: Mark-sweep 2315.7 (2540.0) -> 2315.6 (2536.0) MB, 38.0 / 4.5 ms (+ 0.0 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 48 ms) last resort [7008:000000C93E0965D0] 30516 ms: Mark-sweep 2315.6 (2536.0) -> 2315.6 (2536.0) MB, 36.1 / 4.4 ms last resort <--- JS stacktrace ---> ==== JS stack trace ========================================= Security context: 0000022898D6E741 <String[23]: https://explain.sy24.ru> 1: exec(this=00000281CF5E0359 <JS RegExp>,0000039F84182471 <String[0]: >) 2: gt [https://explain.sy24.ru/Explain%20PostgreSQL_files/jquery.min.js:4] [pc=000000E0EEDE73B1](this=00000201C35F7399 <JS Global Object>,e=000003E0423E5419 <String[11]: TD.expander>,t=0000039F84182311 <undefined>) 3: arguments adaptor frame: 1->2 5: find(aka ot) [https://explai...
,
Jan 10 2017
the point where we crash is pretty random. Sometimes, we're also lucky and just hover at the memory limit.. dunno exactly why we sometimes survive and sometimes don't Hannes, wdyt? WontFix?
,
Jan 11 2017
What the pitiful limits? Chrome can't allocate more that 4Gb for one process on x64 bit system?
,
Jan 19 2017
Assigning to current memory sheriff.
,
Jan 19 2017
kozyatinskiy@: PTAL
The problem here is not with the limits. DevTools (inspector) keeps a strong global handle to the string that is printed on the console. The string is 10M in length and repeatedly printed and the handle is never freed as far as I see.
There are multiple questions here:
(a) do we need to print the string if the console is closed?
(b) do we need to keep a strong reference even after printing (for further inspection)?
==== C stack trace ===============================
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8_libbase.so(v8::base::debug::StackTrace::StackTrace()+0x1e) [0x7f6905077fce]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8::internal::GlobalHandles::Create(v8::internal::Object*)+0x1cb) [0x7f69108ba34b]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8::V8::GlobalizeReference(v8::internal::Isolate*, v8::internal::Object**)+0x7c) [0x7f691014f22c]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x698130) [0x7f691019f130]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x6981bc) [0x7f691019f1bc]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8_inspector::V8ConsoleMessage::createForConsoleAPI(double, v8_inspector::ConsoleAPIType, std::__debug::vector<v8::Local<v8::Value>, std::allocator<v8::Local<v8::Value> > > const&, std::unique_ptr<v8_inspector::V8StackTraceImpl, std::default_delete<v8_inspector::V8StackTraceImpl> >, v8_inspector::InspectedContext*)+0x2d2) [0x7f691102a172]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x152b44d) [0x7f691103244d]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x152a2f1) [0x7f69110312f1]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8_inspector::V8Console::logCallback(v8::FunctionCallbackInfo<v8::Value> const&)+0x27) [0x7f6911031387]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&))+0xeb) [0x7f6910144b6b]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x785b0f) [0x7f691028cb0f]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(+0x784602) [0x7f691028b602]
/usr/local/google/home/mlippautz/ssd/chromium-tot/src/out/Debug/./libv8.so(v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*)+0xe6) [0x7f691028b176]
[0x24c6a410426et str length: 10418889
,
Jan 25 2017
Currently we store last 1000 messages when DevTools is closed. We definitely could be smarter and introduce limit of memory consumption instead of just number of messages. I'll upload CL.
,
Jan 25 2017
,
Jan 30 2017
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/3903817e0eead8f9812ee0e5481379190bfa3410 commit 3903817e0eead8f9812ee0e5481379190bfa3410 Author: kozyatinskiy <kozyatinskiy@chromium.org> Date: Mon Jan 30 17:05:58 2017 [inspector] introduced memory size limit for console message storage Without this CL we have only limit for amount of console messages and if user are dumping a huge messages we pretty soon run out of memory. So let's introduce limit for memory consumption it would help chromium and Node.js as well. BUG= chromium:671489 R=dgozman@chomium.org,alph@chromium.org, hpayer@chromium.org, ulan@chromium.org Review-Url: https://codereview.chromium.org/2653293003 Cr-Commit-Position: refs/heads/master@{#42780} [modify] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/src/api.cc [modify] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/src/debug/debug-interface.h [modify] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/src/inspector/v8-console-message.cc [modify] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/src/inspector/v8-console-message.h [add] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/test/inspector/runtime/console-messages-limits-expected.txt [add] https://crrev.com/3903817e0eead8f9812ee0e5481379190bfa3410/test/inspector/runtime/console-messages-limits.js
,
Feb 1 2017
I was able to open mentioned page in ToT.
,
Feb 1 2017
,
Feb 1 2017
The following revision refers to this bug: https://chromium.googlesource.com/v8/v8.git/+/dd9817937f5e41828d727158f2b968b03946e0b6 commit dd9817937f5e41828d727158f2b968b03946e0b6 Author: Alexey Kozyatinskiy <kozyatinskiy@chromium.org> Date: Wed Feb 01 16:55:58 2017 Merged: [inspector] introduced memory size limit for console message storage Revision: 3903817e0eead8f9812ee0e5481379190bfa3410 BUG= chromium:671489 LOG=N NOTRY=true NOPRESUBMIT=true NOTREECHECKS=true R=kozyatinskiy@chromium.org Review-Url: https://codereview.chromium.org/2667823004 . Cr-Commit-Position: refs/branch-heads/5.7@{#82} Cr-Branched-From: 975e9a320b6eaf9f12280c35df98e013beb8f041-refs/heads/5.7.492@{#1} Cr-Branched-From: 8d76f0e3465a84bbf0bceab114900fbe75844e1f-refs/heads/master@{#42426} [modify] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/src/api.cc [modify] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/src/debug/debug-interface.h [modify] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/src/inspector/v8-console-message.cc [modify] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/src/inspector/v8-console-message.h [add] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/test/inspector/runtime/console-messages-limits-expected.txt [add] https://crrev.com/dd9817937f5e41828d727158f2b968b03946e0b6/test/inspector/runtime/console-messages-limits.js
,
Feb 6 2017
This issue has been approved for a merge. Please merge the fix to any appropriate branches as soon as possible! If all merges have been completed, please remove any remaining Merge-Approved labels from this issue. Thanks for your time! To disable nags, add the Disable-Nags label. For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
,
Feb 9 2017
|
|||||||||||||
►
Sign in to add a comment |
|||||||||||||
Comment 1 by ajha@chromium.org
, Dec 6 2016