tbonelee opened a new pull request, #5116:
URL: https://github.com/apache/zeppelin/pull/5116

   ### What is this PR for?
   This PR adds automatic WebSocket reconnection for non-normal connection 
closures to the Angular UI (`zeppelin-web-angular`), matching the behavior of 
the legacy AngularJS UI.
   
   Previously, when the WebSocket connection was closed abnormally (e.g., due 
to network issues, server timeouts, or browser tab throttling), the Angular UI 
would not attempt to reconnect, leaving users with a broken connection and 
requiring a manual page refresh.
   
   This fix monitors WebSocket close events and automatically reconnects when 
the close code is not 1000 (Normal Closure).
   
   ### What type of PR is it?
   Bug Fix
   
   ### Todos
   * [x] - Add reconnection logic for non-normal close codes
   
   ### What is the Jira issue?
   https://issues.apache.org/jira/browse/ZEPPELIN-6375
   - Another related issue: 
https://issues.apache.org/jira/browse/ZEPPELIN-6374?atlLinkOrigin=c2xhY2staW50ZWdyYXRpb258aXNzdWU%3D
   
   ### How should this be tested?
   
   1. Start Zeppelin server locally
   2. Open a notebook in the new UI
   3. Test abnormal closure scenarios:
     - e.g., **Tab throttling**: Leave the tab inactive for 2+ minutes (If you 
could watch the logs for `ZeppelinServer`, then you could check the timeout 
disconnect right away.).
   4. Verify that:
     - WebSocket automatically reconnects after idle timeout.
     - Console shows "WebSocket closed unexpectedly. Reconnecting...".
     - Notebook operations work after reconnection and connection status icon 
remain green color.
   
   ### Questions:
   * Does the license files need to update? No
   * Is there breaking changes for older versions? No
   * Does this needs documentation? No
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to