Created attachment 1710431 [details]
Description of problem:
When trying to load an OpenShift Console cluster using the OSX Safari browser, the console only renders the masthead and a white screen under it.
Version-Release number of selected component (if applicable):
Safari Version 13.1.2 (15609.3.5.1.3)
Steps to Reproduce:
1. Using Safari, load up any 4.6 cluster
See attached image "Safari", main masthead and a white-screen body.
To load the console UI.
It appears to be local storage setting that saves the available API models that exceeds the max available space Safari allows and thus crashes.
Related line: https://github.com/openshift/console/blob/master/frontend/public/module/k8s/swagger.ts#L47
Created attachment 1710433 [details]
DevTools Console Error
We can reproduce with Safari 13.1 on 4.6.0-0.nightly-2020-08-04-210224
The issue is with storing the swagger definitions into localStorage.
Definition size (5.65 MB) exceeds the default size of the localStorage for the Safari on MacOS (5 MB).
Ideally Safari should ask for more space for the localStorage but it's not.
We could potentially:
- compress the swagger definitions that we put into the localStorage ?
- put the definitions into redux ?
Hi, Jakub. I am already working on a fix. I don't think we need to use localStorage at all since we can rely on browser caching. The OpenAPI doc has an Etag.
Note that Safari shows no content aside for the masthead and navigation due to Bug 1859258. That regression was introduced when we added the quick starts sidebar. This bug *only* tracks the runtime error saving the OpenAPI document to `localStorage`. We'll fix the other display problem for Safari under Bug 1859258.
This still reproduces on 4.6.0-0.nightly-2020-08-16-072105
Checked on Safari 13.1.1 (15609.2.9.1.2)
Hi, did you see comment #5? This doesn't fix all display issues on Safari, only the specific localStorage error reported in the description. If that error is not present in the JS console, the bug is fixed. The other display issues are tracked by Bug 1859258.
If this does reproduce, can you include a stack trace or screenshot to help us troubleshoot?
Note that we must track these two bugs separately so we can backport the localStorage fix. The other display issues do not apply to older resources.
Created attachment 1711851 [details]
DevTools Console Errors
"Could not get openAPI definitions and QuotaExceededError" disappears
I can see some other errors like:
Fetch API cannot load https://console-openshift-console.apps.qe-yapei46osp.qe.devcluster.openshift.com/api/prometheus/api/v1/query?query=%28sum%28up%7Bjob%3D%22apiserver%22%7D+%3D%3D+1%29+%2F+count%28up%7Bjob%3D%22apiserver%22%7D%29%29+*+100 due to access control checks.
Fetch API cannot load https://console-openshift-console.apps.qe-yapei46osp.qe.devcluster.openshift.com/api/prometheus/api/v1/query?query=%28sum%28up%7Bjob%3D%22scheduler%22%7D+%3D%3D+1%29+%2F+count%28up%7Bjob%3D%22scheduler%22%7D%29%29+*+100 due
It looks like these errors are expected, could you help confirm?
Hi, Yadan. It depends on the logged-in user's permissions. Is this the Home -> Overview page? Either way, that would be a separate bug if there is a problem.
Note that https://github.com/openshift/console/pull/6252 does fix the other Safari display issue. I'll add a note to Bug 1859258.
Yeah, agree that is different issue.
Moving this bug to verified according to comment 11 and comment 12
Will check if there is other error message after bug 1859258 is fixed and open bugs if needed
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.
For information on the advisory (OpenShift Container Platform 4.6 GA Images), and where to find the updated
files, follow the link below.
If the solution does not work for you, open a new bug report.