-
Notifications
You must be signed in to change notification settings - Fork 167
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
Vaadin 23 Resynchronizing UI by client's request - If you are using push with a proxy, make sure the push timeout smaller proxy connection timeout #15205
Comments
I'm hoping to deploy my project to production in about 2 weeks, and this issue is bugging me a lot. I will be very grateful if you can take a look at it. I've been struggling with this problem for about a month or more with no success. I am ready to provide you with any necessary logs. Please let me know what I need to enable to debug the app, and I'll collect the logs. |
This is what I have so far with
|
also, I may reproduce the following issue https://stackoverflow.com/questions/74418180/vaadin-23-websockets-iphone-updates-with-delays by simply switching on my iPhone the WI-FI connection to LTE. Right after that - XHR requests - work, but WS stop working. WS start working after the full page refresh |
@alexanoid to address the whole resynchronisation issue we are going to start fixing the following issues: |
@mshabarov thanks for the update! |
Issue reported by me last July and still having it: #14232 and other: #14797 (in promise) Error: Client is resynchronizing at FlowClient.42a5821f.js:1:42438 We need an urgent solution for this, the situation is becoming unsustainable, many customers are complaining. |
For me it was resolved with version 23.2.13. |
@alexanoid could you please upgrade to 23.2.15 and verify if the issue still exists for your setup? |
@mshabarov I'm on 23.3.4. Right now the application works much more stable than previously |
…15764) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) (#15820) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Marco Collovati <marco@vaadin.com> Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) (#15819) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Marco Collovati <marco@vaadin.com> Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
This ticket/PR has been released with Vaadin 23.2.16. |
…15764) (#15829) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
…15764) (#15826) Atmospehere caches messages when the client is disconnected, but unfortunately it may happen that a message does not reach the client because of network disconnection during async response write operation. In this case the message is not cached and will be completely lost, causing a UI resynchronization request. This change preserves messages in broadcaster cache until the client confirms that they have been processed, by sending the last seen server sync identifier on reconnection. This should prevent the need for a UI resynchronization. It may happen in some cases, e.g. back to online after being offline, that messages already seen will be sent to the client, but Flow will discard them. Part of #15281 Fixes #15205 Co-authored-by: Teppo Kurki <teppo.kurki@vaadin.com>
This ticket/PR has been released with Vaadin 23.3.6. |
This ticket/PR has been released with Vaadin 14.9.6. |
This ticket/PR has been released with Vaadin 24.0.0.beta2 and is also targeting the upcoming stable 24.0.0 version. |
This issue came up again working with Vaadin 24.2.2. Previously in 24.1.4 was not recurring but now is constant. |
I'm also experiencing this issue in Vaadin version 24.3.4. |
"Resynchronizing UI by client's request. A network message was lost before reaching the client and the client is reloading the full UI state. This typically happens because of a bad network connection with packet loss or because of some part of the network infrastructure (load balancer, proxy) terminating a push (websocket or long-polling) connection. If you are using push with a proxy, make sure the push timeout is set to be smaller than the proxy connection timeout" This issue is happening again with vaadin 23.3.7. can someone help? |
Description of the bug
Mostly on my iPhone I still receive the following error and my applications shows infinitive bold blue progress bar at the top of the page:
I understand that this issue maybe related to flaky mobile internet connection, but unfortunately it will be really hard to explain the same to every single user of my application. The application should be able to restore from such situation.
I use NGINX as a proxy and Spring Boot (Tomcat or Undertow) with Vaadin application.
In Vaadin application I use:
My configs:
SpringBoot application.properties:
NGINX:
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_read_timeout 300;
proxy_connect_timeout 300;
proxy_send_timeout 300;
Atmosphere:
Related SO questions:
https://stackoverflow.com/questions/74350932/vaadin-23-resynchronizing-ui-by-clients-request-if-you-are-using-push-with-a
https://stackoverflow.com/questions/74418180/vaadin-23-websockets-iphone-updates-with-delays
Expected behavior
Application should not freeze and continue to operate normally
Minimal reproducible example
Try my application to use for some time on iPhone for example
Versions
The text was updated successfully, but these errors were encountered: