qt-kiosk-browser icon indicating copy to clipboard operation
qt-kiosk-browser copied to clipboard

Recover after subprocess crashes/dies

Open septatrix opened this issue 1 year ago • 6 comments

When a subprocess of the browser crashes the behaviors can differ depending on which subprocess crashed, however, there is no mechanism to recover from this or show this to the user. Chromium for example shows the "Aww snap" page when something goes awry. Cog (another popular kiosk browser based on Webkit) has a flag --webprocess-failure=restart which automatically restarts crashed processes. Alternatively one can tell cog to exit and handle it manually.

qt-kiosk-browser has none of these mechanisms or indicators. We are currently investigating switching from cog to this project, however, having no way to gracefully recover (or at least be able to configure the whole browser to terminate) is currently a showstopper as some crashes are inevitable after a certain scale (and in some rare circumstances we have also seen out-of-memory kills which similarly lead to a browser without e.g. a render process)

septatrix avatar Aug 18 '24 00:08 septatrix

I found the link below. Although we can't restart or load the page right now, it would be great if you could consider moving to our browser. We currently don't have any customers who need this feature, so please prepare a request for the scenario you want to support.

https://lists.qt-project.org/pipermail/qtwebengine/2016-March/000336.html

otavio avatar Aug 19 '24 11:08 otavio

I filed https://bugreports.qt.io/browse/QTBUG-128257

septatrix avatar Aug 21 '24 15:08 septatrix

I subscribed to watch for any comments and feedback in the issue that you reported. I hope they send something back soon.

otavio avatar Aug 21 '24 16:08 otavio

Have you tried to implement some workaround as suggested in the comment that I sent before?

otavio avatar Aug 21 '24 16:08 otavio

Have you tried to implement some workaround as suggested in the comment that I sent before?

No, I have not worked with QT/QML and am not sure where I would put that code. The only reference to a QWebEngineView is in the QML file and I do not know how to add the handler to it as that must be done in C++(?)

septatrix avatar Aug 21 '24 16:08 septatrix

I am confident that incorporating support for that feature will require two to three hours of work. Would you be open to discussing the financial investment required for this development?

otavio avatar Aug 22 '24 00:08 otavio