Closed jonasrotilli closed 1 year ago
At least I didn't note a problem with service worker, but it might need some old worker there. If this fix doesn't help lets open up a new ticket for looking into service worker problem.
Can you describe what the fix you released here addresses exactly in terms of behavior (seen by the user) ? My feeling tells me I can still be having other issues that are not addressed here.
The application keeps on working after a resync instead of freezing up so that it doesn't take commands anymore.
ok. Does that takes care of the Exception I reported on the client side :
FlowClient.947c8d40.js:1 Uncaught (in promise) Error: Client is resynchronizing at FlowClient.947c8d40.js:1:42744 at Array.forEach (<anonymous>) at Zy (FlowClient.947c8d40.js:1:42719) at by (FlowClient.947c8d40.js:1:34159) at z.db (FlowClient.947c8d40.js:3:76660) at x (FlowClient.947c8d40.js:1:32329) at Map.forEach (<anonymous>) at i2 (FlowClient.947c8d40.js:1:43877) at W1 (FlowClient.947c8d40.js:3:50372) at mf (FlowClient.947c8d40.js:3:37591) at z.Bb (FlowClient.947c8d40.js:3:74625) at z.O (FlowClient.947c8d40.js:3:86799) at XMLHttpRequest.<anonymous> (FlowClient.947c8d40.js:1:25882) at od (FlowClient.947c8d40.js:1:16760) at Z2 (FlowClient.947c8d40.js:3:5692) at XMLHttpRequest.<anonymous> (FlowClient.947c8d40.js:1:28235)
?
Not specifically. Also that is not an error as such as it is noting that the promise is cancelled due to resync:
Now the 23.2-SNAPSHOT should be available.
Thanks, I'll try that and see how it goes !
What is the expected time to be released on Vaadin 14.x version?
Next release.
And do you know when the next official 23.2 will be released ? Will it automatically include this patch ?
@echarlus @tiagomartins91 since this is a blocker issue, we'll do Flow release asap. I've already started Flow 23.2.4
release, so it should be available soon in the maven central, so you can override Flow version in your pom.xml and test it. V14.8 needs the back-porting and validation process to be completed, so we'll release flow version for 14.8 most likely on Monday next week. We will release next Vaadin versions (including mentioned flow versions) for 23.2 and 14.8 next week once we merge other important bug-fixes in.
@mshabarov thanks a lot ! I'll pick-it up as soon as it's available.
@mshabarov can you please confirm I should be looking here : https://mvnrepository.com/artifact/com.vaadin/flow-server ? Thanks
@echarlus no, this is the official one https://search.maven.org/artifact/com.vaadin/flow-bom
@mshabarov thanks. I've updated my repo-source URL.
@mshabarov sorry but I'm not a maven pro and I cannot manage to get the flow version 23.2.4 to get used when compiling ... I've added this in my dependency : `
`
${vaadin.version} is still 23.2.3 since the whole 23.2.4 is not released yet.
Then if I add :
`-
<artifactId>flow</artifactId>
<version>23.2.4</version>
</dependency>-`
it fails, the jar is not found ...
When I build, it's still using 23.2.3, what's the way to make it work ? Thanks.
Try to move the flow-bom dependency before vaadin-bom. The other dependency you added (com.vaadin:flow) is wrong. If you remove it and do a mvn dependency:tree you should see Flow-client at version 23.2.4 If not, add a dependency to com.vaadin:flow-client at version 23.2.4
Thanks now it has picked-up 23.2.4.
@caalador I've been testing the new version and unfortunately I'm still experiencing the issue I had previously :
[http-nio-8080-exec-14] INFO com.vaadin.flow.server.communication.ServerRpcHandler - Ignoring old duplicate message from the client. Expected: 26, got: 25 [http-nio-8080-exec-14] WARN com.vaadin.flow.server.communication.ServerRpcHandler - 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
*The query goes fine on the server (my logs indicate that the server replied faster than the proxy timeout) but the page is never displayed on the client10.1.0.4 - - [08/Oct/2022:16:35:28 +0200] "POST /?v-r=uidl&v-uiId=2 HTTP/1.1" 200 - 10.1.0.4 - - [08/Oct/2022:16:35:28 +0200] "POST /?v-r=heartbeat&v-uiId=2 HTTP/1.1" 200 - 10.1.0.5 - - [08/Oct/2022:16:36:16 +0200] "POST /?v-r=heartbeat&v-uiId=0 HTTP/1.1" 200 - 10.1.0.4 - - [08/Oct/2022:16:36:16 +0200] "POST /?v-r=heartbeat&v-uiId=1 HTTP/1.1" 200 -
Then if I try to go back to the app's root (/) , nothing happens ... the query is not sent and I'm stuck on the same page forever. I'm getting the same behavior on Chrome & Firefox with either Azure AppGateway or Apache as a proxy in front of tomcat.
What I really don't understand is why I cannot even change the URL and go to / when this happens....
I've saved the chrome dev tools logs (console & network activity) as well as server logs. I'll send you a link to them privately so that you can check them out if you like. I'm available if you need more info / debug logs.
Just an idea: if you don't heavily rely on PWA - remove the annotation and deactivate the already locally installed service worker for that domain in your browser and see if that improves your situation
Good idea, I'll try that ...
Flow 2.7.23 (Vaadin 14.8) has been sent to maven-central and should be available there soon.
This ticket/PR has been released with Vaadin 14.8.19.
@caalador I've just experienced the issue again, on a server which did not had any latency issue and did not sent back a 502 response after a timeout. I logged in and then I saw the page starting to refresh itself for a while, I captures both the network & console log on chrome, one can see the exception in the logs (full log available upon request):
vaadinPush-min.js?v=23.2.4:1 Vaadin push loaded
generated-flow-imports.679d9aff.js:7824 WARNING: Since Vaadin 23.1, using <iron-icon> is deprecated. Please use <vaadin-icon> and '@vaadin/vaadin-lumo-styles/vaadin-iconset.js' instead.
(anonyme) @ generated-flow-imports.679d9aff.js:7824
generated-flow-imports.679d9aff.js:11260 The main 'lit-element' module entrypoint is deprecated. Please update your imports to use the 'lit' package: 'lit' and 'lit/decorators.ts' or import from 'lit-element/lit-element.ts'. See https://lit.dev/msg/deprecated-import-path for more information.
(anonyme) @ generated-flow-imports.679d9aff.js:11260
generated-flow-imports.679d9aff.js:11264 WARNING: Since Vaadin 23.2, "@vaadin/vaadin-ordered-layout" is deprecated. Use "@vaadin/vertical-layout" instead.
(anonyme) @ generated-flow-imports.679d9aff.js:11264
generated-flow-imports.679d9aff.js:11498 WARNING: Since Vaadin 23.2, "@vaadin/vaadin-form-layout" is deprecated. Use "@vaadin/form-layout" instead.
(anonyme) @ generated-flow-imports.679d9aff.js:11498
generated-flow-imports.679d9aff.js:11502 WARNING: Since Vaadin 23.2, "@vaadin/vaadin-ordered-layout" is deprecated. Use "@vaadin/horizontal-layout" instead.
(anonyme) @ generated-flow-imports.679d9aff.js:11502
generated-flow-imports.679d9aff.js:11506 WARNING: Since Vaadin 23.2, "@vaadin/vaadin-button" is deprecated. Use "@vaadin/button" instead.
(anonyme) @ generated-flow-imports.679d9aff.js:11506
vaadinPush-min.js?v=23.2.4:1 Invoking executeWebSocket, using URL: wss://test.o-cell.fr/?v-r=push&v-uiId=0&v-pushId=5b3f1338-8707-4ef9-ba2c-d9055e81b859&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=3.1.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&Content-Type=application/json; charset=UTF-8&X-atmo-protocol=true
vaadinPush-min.js?v=23.2.4:1 WebSocket connection to 'wss://test.o-cell.fr/?v-r=push&v-uiId=0&v-pushId=5b3f1338-8707-4ef9-ba2c-d9055e81b859&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=3.1.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&Content-Type=application/json;%20charset=UTF-8&X-atmo-protocol=true' failed:
ax @ vaadinPush-min.js?v=23.2.4:1
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: websocket.onerror
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: websocket.onclose
vaadinPush-min.js?v=23.2.4:1 Websocket closed, reason: Connection was closed abnormally (that is, with no close frame being sent). - wasClean: false
log @ vaadinPush-min.js?v=23.2.4:1
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Firing onClose (closed case)
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Request already closed, not firing onClose (closed case)
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Firing onReconnect
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:01 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Firing onReconnect
(index):1 [DOM] Input elements should have autocomplete attributes (suggested: "username"): (More info: https://goo.gl/9p2vKq) <input type="text" slot="input" id="input-vaadin-text-field-6" required name="username" autocorrect="off" aria-labelledby="label-vaadin-text-field-0"> slot
vaadinPush-min.js?v=23.2.4:1 Invoking executeWebSocket, using URL: wss://test.o-cell.fr/?v-r=push&v-uiId=0&v-pushId=5b3f1338-8707-4ef9-ba2c-d9055e81b859&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=3.1.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&Content-Type=application/json; charset=UTF-8&X-atmo-protocol=true
vaadinPush-min.js?v=23.2.4:1 WebSocket connection to 'wss://test.o-cell.fr/?v-r=push&v-uiId=0&v-pushId=5b3f1338-8707-4ef9-ba2c-d9055e81b859&X-Atmosphere-tracking-id=0&X-Atmosphere-Framework=3.1.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&Content-Type=application/json;%20charset=UTF-8&X-atmo-protocol=true' failed:
ax @ vaadinPush-min.js?v=23.2.4:1
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:06 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: websocket.onerror
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:06 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: websocket.onclose
vaadinPush-min.js?v=23.2.4:1 Websocket closed, reason: Connection was closed abnormally (that is, with no close frame being sent). - wasClean: false
log @ vaadinPush-min.js?v=23.2.4:1
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:06 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Request already closed, not firing onClose (closed case)
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:06 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Request already closed, not firing onClose (closed case)
vaadinPush-min.js?v=23.2.4:1 Websocket failed on first connection attempt. Downgrading to long-polling and resending
logo_16.png:1 Failed to load resource: the server responded with a status of 404 ()
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 2
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 3
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 4
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 2
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Firing onOpen
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: Firing onOpen
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 3
vaadinPush-min.js?v=23.2.4:1 Mon Oct 10 2022 15:16:13 GMT+0200 (heure d’été d’Europe centrale) Atmosphere: ajaxRequest.onreadystatechange, new state: 3
logo_16.png:1 Failed to load resource: the server responded with a status of 404 ()
FlowClient.638236c0.js:1 Uncaught (in promise) Error: Client is resynchronizing
at FlowClient.638236c0.js:1:42744
at Array.forEach (<anonymous>)
at Zy (FlowClient.638236c0.js:1:42719)
at by (FlowClient.638236c0.js:1:34159)
at z.db (FlowClient.638236c0.js:3:76809)
at x (FlowClient.638236c0.js:1:32329)
at Map.forEach (<anonymous>)
at h2 (FlowClient.638236c0.js:1:46370)
at W1 (FlowClient.638236c0.js:3:50514)
at mf (FlowClient.638236c0.js:3:37733)
at z.Bb (FlowClient.638236c0.js:3:74767)
at z.O (FlowClient.638236c0.js:3:86948)
at XMLHttpRequest.<anonymous> (FlowClient.638236c0.js:1:25882)
at od (FlowClient.638236c0.js:1:16760)
at K2 (FlowClient.638236c0.js:3:5540)
at XMLHttpRequest.<anonymous> (FlowClient.638236c0.js:1:28235)
This is a build which includes the flow 23.2.4 build released on friday.
This would seem to be some other issue, probably with push as it fails to connect a websocket connection. Also some pwa icon requests seem to be made, perhaps there is an old service worker trying to fetch things?
If you could open up a new issue (as this one was about not recovering from resync) and if possible have a minimal application that would fail also it would help.
@caalador thanks for the advice. New bug is here : https://github.com/vaadin/flow/issues/14797 FYI the 404 on the image is "normal" it's an image that should be displayed in my header and that is not always present, depending on the context.
This ticket/PR has been released with Vaadin 23.2.4.
Hi! I have the same issue with NGINX, Vaadin 23.2.4 -
2022-10-17 01:26:18.425 WARN 3555474 --- [http-nio-8080-exec-10] c.v.f.s.communication.ServerRpcHandler : 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
more details https://stackoverflow.com/questions/74081025/vaadin23-uncaught-in-promise-error-client-is-resynchronizing
This ticket/PR has been released with Vaadin 23.1.13.
This ticket/PR has been released with Vaadin 14.9.0.beta1 and is also targeting the upcoming stable 14.9.0 version.
This issue has not been resolved. It keeps happening, even in the latest version 23.2.9. Right now I'm seeing this happen, in production, internet ok, 1 hour with the screen open without moving, when changing screens, the problem started.
This is complicated, it's been 6 months since my report and it keeps happening, version comes in, version comes out and there is no solution or definitive explanation.
I've also seen it a few times with 23.3.1 :(
I just updated to 23.2.9, and the finding is that it's much worse. It happened 2 times already, just with me as I'm a system developer.
I will need to go back to the previous version.
This issue has not been resolved. It keeps happening, even in the latest version 23.2.9. Right now I'm seeing this happen, in production, internet ok, 1 hour with the screen open without moving, when changing screens, the problem started.
This is complicated, it's been 6 months since my report and it keeps happening, version comes in, version comes out and there is no solution or definitive explanation.
This item needs to be re-opened, it has not been resolved.
See the browser log messages, when they happen: . . . .
Tue Jan 10 2023 16:00:58 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: Firing onClose (closed case) vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:00:58 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: Request already closed, not firing onClose (closed case)
vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:00:58 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: invoking .close() on WebSocket object
2vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:00:58 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: Firing onReconnect
vaadinPush-min.js?v=23.2.3:1 Invoking executeWebSocket, using URL: wss://portal.upcampo.com.br/?v-r=push&v-uiId=0&v-pushId=c72c1567-11f6-4e9f-81ab-d51fd96ba37e&X-Atmosphere-tracking-id=725954af-eeb4-42ca-94a0-7905083d0fec&X-Atmosphere-Framework=3.1.2-javascript&X-Atmosphere-Transport=websocket&X-Atmosphere-TrackMessageSize=true&Content-Type=application/json; charset=UTF-8&X-atmo-protocol=true vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:01:05 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: websocket.onopen
vaadinPush-min.js?v=23.2.3:1 Websocket successfully opened vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:01:05 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: websocket.onmessage
2vaadinPush-min.js?v=23.2.3:1 Tue Jan 10 2023 16:01:05 GMT-0400 (Horário Padrão do Amazonas) Atmosphere: Firing onReopen
generated-flow-imports.81274417.js:894 WARNING: Since Vaadin 23, notifyResize() is deprecated. The component uses a ResizeObserver internally and doesn't need to be explicitly notified of resizes.
notifyResize @ generated-flow-imports.81274417.js:894
11FlowClient.947c8d40.js:1 Uncaught (in promise) Error: Client is resynchronizing
at FlowClient.947c8d40.js:1:42744
at Array.forEach (
Curious that it happens a lot more on Mac computers. I tested it on more than one mac computer and it happened on both. Already on a Windows, the problem occurs much less frequently. I tested it in Google Chrome browser and Safari, in both the same behavior. If I open the browsers log, it shows an error:
(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.
There are several tickects open for this and no solution:
I am ready to help you by providing information. If anyone wants to connect to my computer and look at the problem happening, if they want my project, anyway, I'm available to help with the definitive resolution.
If you can reproduce the problem locally, that would probably help a lot.
Additionally you can enable trace logging to https://github.com/vaadin/flow/blob/master/flow-server/src/main/java/com/vaadin/flow/component/internal/UIInternals.java which would print all information why the server side count increases (A LOT) to find the cause why / how it happens. (This should not be added to a production env)
@jonasrotilli thanks for willing to help on this issue. Would you be up for a call to discuss and see what is happening on your side? Please email me mikhail@vaadin.com and we can then arrange a meet. We are working on the other issues related to client-server resynchronisation, but since this one is getting worse, we'll work on it asap.
If you can reproduce the problem locally, that would probably help a lot.
Additionally you can enable trace logging to https://github.com/vaadin/flow/blob/master/flow-server/src/main/java/com/vaadin/flow/component/internal/UIInternals.java which would print all information why the server side count increases (A LOT) to find the cause why / how it happens. (This should not be added to a production env)
I don't have the problem locally, only when it's production. What I meant is that we can make a call to view here on my computer occurring in production. There was a time when the problem was random. Now it happens in a pattern: just let the system stand still for a few minutes, it happens.
@jonasrotilli thanks for willing to help on this issue. Would you be up for a call to discuss and see what is happening on your side? Please email me mikhail@vaadin.com and we can then arrange a meet. We are working on the other issues related to client-server resynchronisation, but since this one is getting worse, we'll work on it asap.
I sent my data, so we can talk, thanks!
Se você puder reproduzir o problema localmente, isso provavelmente ajudará muito.
Além disso, você pode ativar o registro de rastreamento em https://github.com/vaadin/flow/blob/master/flow-server/src/main/java/com/vaadin/flow/component/internal/UIInternals.java que imprimiria todos informações por que a contagem do lado do servidor aumenta (MUITO) para encontrar a causa / como isso acontece. (Isso não deve ser adicionado a um ambiente de produção)
Could you help me to put this TRACE? Is there somewhere with an explanation how should I use it?
It would help me a lot, thanks.
In Spring Boot for example add this to your application.yml (you probably already have the top level entries):
logging:
level:
com.vaadin.flow.component.internal.UIInternals: TRACE
No Spring Boot, por exemplo, adicione isso ao seu application.yml (você provavelmente já possui as entradas de nível superior):
logging: level: com.vaadin.flow.component.internal.UIInternals: TRACE
I don't use application.yml, I use application.properties, if you have the lines ready, help me! I'm searching
@jonasrotilli
this works for me
add logging.level.com.vaadin.flow.component.internal = trace
in application.properties
After help from @mshabarov and @mcollovati , they guided me to put version 23.2.13. In this version the problem is gone. No other changes were made, I didn't touch NGINX, anything in the application or anything related to the server, so I believe that something between version 23.2.9 and 23.2.13 solved the problem.
Thanks for the help!
I won't close, so that someone with more knowledge can assess what has been done between these versions.
Closed because the issue is not reproduced for author. If anyone would experience the same issue again, please report it here, so we can re-open and investigate, or make a new issue in Flow.
Intermittently, in PROD environment only, I am seeing: UnsupportedOperationException: Unexpected message id from the client. Expected sync id: 3, got 4
JDK 17 Spring Boot 3.2.0 Vaadin 24.2.4
Please help. Here is most of the stacktrace:
2023-12-17T04:58:32.360Z ERROR 7 --- [dbME] [nio-6386-exec-9] c.v.flow.server.DefaultErrorHandler :
java.lang.UnsupportedOperationException: Unexpected message id from the client. Expected sync id: 3, got 4. more details logged on DEBUG level.
at com.vaadin.flow.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:313) ~[flow-server-24.2.3.jar!/:24.2.3]
at com.vaadin.flow.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:114) ~[flow-server-24.2.3.jar!/:24.2.3]
at com.vaadin.flow.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:40) ~[flow-server-24.2.3.jar!/:24.2.3]
at com.vaadin.flow.server.VaadinService.handleRequest(VaadinService.java:1522) ~[flow-server-24.2.3.jar!/:24.2.3]
at com.vaadin.flow.server.VaadinServlet.service(VaadinServlet.java:398) ~[flow-server-24.2.3.jar!/:24.2.3]
at com.vaadin.flow.spring.SpringServlet.service(SpringServlet.java:106) ~[vaadin-spring-24.2.3.jar!/:na]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:642) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:408) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:313) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:277) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.springframework.web.servlet.mvc.ServletForwardingController.handleRequestInternal(ServletForwardingController.java:141) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.mvc.AbstractController.handleRequest(AbstractController.java:178) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle(SimpleControllerHandlerAdapter.java:51) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1089) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:979) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1014) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:914) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:885) ~[spring-webmvc-6.1.1.jar!/:6.1.1]
at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) ~[tomcat-embed-websocket-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) ~[tomcat-embed-core-10.1.16.jar!/:na]
at org.springframework.security.web.FilterChainProxy.lambda$doFilterInternal$3(FilterChainProxy.java:231) ~[spring-security-web-6.2.0.jar!/
Description of the bug
I am often getting the message in the log of Resynchronizing UI by client's request.
The full message is: Resynchronizing UI by client's request. The 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
It's not connection, apparently it's session related.
I have on the same linux server running another Vaadin 8 application. They have different names, different ports, in different folders and are NGINX-mapped with different subdomains.
I have already evaluated the other problems related to the topic:
12640
There was no clear solution, someone raised some possibilities:
12173
In this problem the user uses long duration push. Not my case, I use simple, default @Push.
11645
In this problem as I understand it was the slow connection. It's not my case, everything is flying here.
12173
In this problem the user uses long duration push. Not my case, I use simple, default @Push.
10096
This is a very similar scenario. But there was no conclusion, the user closed without informing how the issue was resolved and if it was resolved.
9399
This one he solved by changing the server, it is difficult to assess what the problem was
Anyway, this problem is quite recurrent and should be better explained in the documentation. I downloaded the example available from the site, nothing out of the ordinary, little or no extra configuration.
Expected behavior
The expectation is that it doesn't lock the user's screen, it's terrible to have to ask him to refresh the page, because after it's broken it doesn't come back.
Minimal reproducible example
It's hard to simulate, because it doesn't always happen. The impression is that it happens after a while without changes on the page, but sometimes it happens right after logging in or during some slower operation.
Versions
Vaadin / Flow version: 23.2.0.alpha1
Java version: openjdk version "11.0.3" 2019-04-16 OpenJDK Runtime Environment (build 11.0.3+7-Ubuntu-1ubuntu218.10.1) OpenJDK 64-Bit Server VM (build 11.0.3+7-Ubuntu-1ubuntu218.10.1, mixed mode, sharing)
OS version: -Ubuntu
Browser version (if applicable): Chrome