Skip to content

Pre-saving objects frontend synchronization can wait forever (spinning saving indicator) #527

Description

@JerryI
  1. Autosave requests every frontend object separately in [FrontendObjectSync.wl (line 157)]. One missing or rejected response leaves the parent promise unresolved. Several rejection handlers only print an error and never reject/resolve that promise ([line 239 (line 239)].
  2. WebUIFetch has no timeout or socket-close handling ([WebUI.wlx (line 226)].

The save spinner and Electron close protection are removed only after Notebook:Saving:Finished, that event is never reached when synchronization stalls.

Another low-level issue:

  1. The native socket layer has a global fixed 1024-entry write FIFO with no bounds check ([usockets.c (line 603)], [push implementation (line 645)]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions