[BUG] Blank (white) screen after login on admin-ui
🐜 Bug Report
Sometimes the dashboard appears for a moment after login, then the user gets a blank screen and the blank screen remains after the user refreshes the page. After deleting everything from the local and session storages, the user can login to the repo.
📃 Version
latest
🐜 Describe the bug
Sometimes the dashboard appears for a moment after login, then the user gets a blank screen and the blank screen remains after the user refreshes the page. After deleting everything from the local and session storages, the user can login to the repo. The bug cannot be easily reproduced, I've added steps from the last time I faced with this issue, but when I tried to reproduce it with the same steps there was no blank screen 😞
👉 Steps To Reproduce
- Rebuild netcore test repository
- Login to snover test with builtin admin
- Go to /Content/Repositories
- Open netcore teszt repo to edit
- Add you teszt user as the Owner of the repository and save the content
- Execute SyncAdmin action on netcore test repo content
- Check the confirmation email and click on the button
- Give a password
- Login to netcore teszt with your newly synced admin user
😯 Current behavior
There're multiple openid config calles, one returns with success, others with error. It seems like the user who was previously logged in (BuiltIn/admin) is stuck and the new one cannot get its token or something like that.
🤔 Expected behavior
We should catch these type of errors somehow and try to avoid it from happening, or the worst case scenario is that when this type of error is happening, the user should be redirected to the login page of the repo and we should clean the local and session storages
This file below contains the export from chrome's network tab, when the blank screen bug was caught
Same thing started happening in one of my new projects recently (blank page and 400 bad request error after login). After days of debugging in various browsers it turned out that it is happening because of the size of the headers more precisely the size of the JWT token. In our case it was huge because it contained not only stuff (groups, projects, etc.) related to the current user but also all the other users who are members of the same groups as the current user.