Page 1 of 1

JCEF #73 my browserview goes white after hours

PostPosted: Sat May 11, 2019 6:15 am
by hmn
Hi,

After having the browser open and coming back the next day, the browserview has died leaving me a white canvas, but the Java app is still running.

The html5-application receives a graphical update notification via websocket 2 times a seconds, to re-render a layer in the openLayers Map.
Could i be running out of some handles?

It seems to happen after an hour or so.
I found a suspicious entry in the jre/jre/bin/debug.log file:
[0510/133250.934:ERROR:direct_composition_surface_win.cc(1691)] Failed to retrieve video device

and in my Java log (not sure yet if it's related),
May 10, 2019 7:22:30 PM fasttools.jwui.components.webbrowserchromium.handler.WBC_RequestHandler onRenderProcessTerminated
SEVERE: render process terminated: TS_PROCESS_CRASHED


When i initiate loading a new URL, then rendering comes back.

im running on Windows10 ver.1607, inside VMWare workstation 14.1.7 build-12989993,

JCEF Version: 73.1.11.214+g4efdff2
JCEF URL: https://bitbucket.org/chromiumembedded/java-cef.git
@4efdff29d50ee8f6813fa696940922df40b0953a

CEF Version: 73.1.11+ge6986dc+chromium-73.0.3683.75
CEF URL: https://bitbucket.org/chromiumembedded/cef.git

Chromium Verison: 73.0.3683.75
Chromium URL: https://chromium.googlesource.com/chromium/src.git


I'll also try the same page with the JCEF-detailed example, and see if it goes white as well.

I read somewhere about disabling GPU etc.
But i thought it's wiser to first ask the forum.
I'd like some ideas what/where to check first.
Thanks

Re: JCEF #73 my browserview goes white after hours

PostPosted: Sat May 11, 2019 5:31 pm
by magreenblatt
Sounds like one of your sub-processes is crashing. If it’s the renderer process you can implement OnRenderProcessTerminated to reload the page. You can also test in Google Chrome and the cefclient sample application at the same version to see if the problem reproduces there.

Re: JCEF #73 my browserview goes white after hours

PostPosted: Sun May 12, 2019 1:27 pm
by ndesktop
magreenblatt wrote:Sounds like one of your sub-processes is crashing. If it’s the renderer process you can implement OnRenderProcessTerminated to reload the page. You can also test in Google Chrome and the cefclient sample application at the same version to see if the problem reproduces there.

It's the renderer:
SEVERE: render process terminated: TS_PROCESS_CRASHED


I have seen this before, if I remember correctly it's an OOM, but I don't remember now the context.

Re: JCEF #73 my browserview goes white after hours

PostPosted: Mon May 13, 2019 3:07 am
by hmn
ndesktop wrote:..
I have seen this before, if I remember correctly it's an OOM, but I don't remember now the context.

Can it be that the javascript(implementation error in the web-content) claims too many things of some sort, or would it rather be a leak(implementation-error) in the renderer?

Re: JCEF #73 my browserview goes white after hours

PostPosted: Mon May 13, 2019 3:51 am
by ndesktop
I can't tell you for sure. What OOM I saw in some years are usually related to some JPEG/PNG/frame decoder trying to decompress/deflate/alloc/whatever some monstruous size (200MB or more, but I guess that depends on device), ending up in tears either in one of the three scenarios: a DCHECK on some internally allocated buffer, uncaught runtime crash, or TerminateBecauseOOM or whatever is the OOM handler called.
Only a crash dump can tell for sure.