-
-
Notifications
You must be signed in to change notification settings - Fork 640
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Website is missing documentation because 2.10 seems to produce a white start page after a few hours when deployed #4270
Comments
Hi @natankeddem, We're currently experiencing an issue with nicegui.io, which sometimes shows up as a blank page. To narrow down the problem, and to keep the documentation up and running, we reverted it back to version 2.9.1. But we hope to find the root cause as soon as possible so that we can serve the latest version of the documentation. A few more details:
|
Hi @falkoschindler, Is this blank page issue only reproducible when you run the website in the production servers or if you run it locally as well? Is it mentioned in any previous issues with more details? I could take a look and see if I can find anything... |
Thats worth a thought. But it's not straight forward. The version is written into the
We have not found a way to reproduce it locally. And it only happens in the production environment after a few hours. There are no logs shown on the server. The html also seems to load fine. Only there is no elements when |
I just deployed 2.10.0 with almost all code reverted to https://nicegui-preview.fly.dev/. It's only a single instance in Frankfurt, Germany. But the same code produced the "white start page" after a few hours on https://nicegui.io yesterday. Feel free to test and try to break it. |
I am brainstorming how we can get more data on this issue. Can you host the site using a different method? Then for a day or so you could implement a redirect mechanism to see if the problem can be recreated in a different environment. I can volunteer to host something if you want via docker or even as a debug instance... |
@natankeddem https://nicegui.io is currently running 32 instances around the globe with fly.io. I do not see an easy way to change that. I hope that we can reproduce it with a single instance on https://nicegui-preview.fly.dev/. But so far it is not broken. Maybe we need to put it under stress? Maybe you can setup a selenium monkey test? |
You can't temporarily change the DNS entry to the alternative host? That seems like the most straightforward thing although I userstand DNS propagation doesn't exactly turn on a dime so things might be in flux for a few days. I could try to build something to exercise the site. It is rather expansive though so unless i get lucky or it is something generic going on it might be hard to trigger. Could you somehow narrow down the scope of the problem? Maybe, temporarily disable the 'See more' links as a start. |
Of course we can do that. But as I said, the alternative "host" must be a global swarm of instances which can take the load. And I am not sure what we would gain from it. The experiments so far show that the issue appears only if 2.10 is deployed. So I do not think it's a matter of the server hosting.
We have tried a lot. Almost all changes from 2.10.0 are reverted and still the error appears after a few hours. We are reluctant to deploy to production again because everytime the main page is white which is a quite bad experience for users looking into NiceGUI. |
Can you get more parity with production on the 'nicegui-preview' site? Maybe spin up 4 total globally diverse instances? Since you haven't seen the problem there yet perhaps that is part of the equation somehow. |
Sure. Desperate times ;-) |
Perhaps a docker based utility that would interact with the site that a few people around the world could run concurrently? |
Yes. That would be great. But I have another idea. I just added another health-check to "preview":
This seems to pass. All six instances are running and showing the main page -- as they should. |
The health check is a good idea to get things working for production in the short term. Can you disable the health check on the on the pip3 install locust Create a simple from locust import HttpUser, task
class User(HttpUser):
@task
def root(self):
self.client.get("/") they just run I got a bit overzealous on my user count and seemed to have DDOSed https://nicegui-preview.fly.dev/ site, it is throwing a |
Ok. I deployed a stripped down variant of 2.10.0 to nicegui.io. It includes the new health check. The preview is also updated to not resurrect when the error appears. |
Oh wow. That was fast. https://nicegui.io already shows a white page for me:
But it should start like this:
And later in the same line having the string |
Super strange. The health check passes on a broken server
While curl on the same machine says there is not such a text:
|
I just deployed the same version as is running on preview and was failing before to https://nicegui.io with only one small alternation: I added @chriswi93's suggested fix #4253 (comment) for #4253. Just a feeling 🤷♂️ |
No, the applying of #4253 had not fixed the issue. In hindsight I feel stupid. The reproduction is very simple:
A new documentation example demonstrates how to alter the maximum age of tab storage. But it also re-defined the |
This PR fixes #4270 by altering the documentation of storage. There was some new code which replaced the root-route with an empty page.
I apologize for posting a closed issue but I thought I would throw out one idea. Does it make sense to make a test to hit each endpoint on the nicegui website and then verify some basic functionality on the root and or other metric? Maybe this is just testing for the sake of testing and couldn't be built to do actual fault finding now that you know the fault. |
Thanks for the idea @natankeddem! The test would be quite long in execution and it's not clear to me for what kind of errors we are looking. Spending the resources (mainly electricity) is not worth the small safety net it would provide. |
Description
Hello,
I noticed that the documentation website is not showing the new event example (https://nicegui.io/documentation/dialog#events). Is it missing the latest updates or is there some weird caching I am experiencing?
The text was updated successfully, but these errors were encountered: