Skip to content

invalidateAll() during a navigation causes browser to hang #9354

@austincrim

Description

@austincrim

Describe the bug

Hey Svelte friends, thanks for all you do 👊.

Not sure if this is a bug or if I'm holding something wrong, but I'm building a tiny site to check sports scores and came across this behavior.

After loading data in +page.server.ts, I show a list of scores by league as well as navigation to switch between leagues. On mount, I set up a kind of crude polling by calling invalidateAll() in a setInterval every 5 seconds (in order to get live updating scores).

After clicking a link to switch leagues, sometimes the site would hang indefinitely until a hard refresh. I think the issue is an invalidation during a navigation, but it could be the other way around.

Reproduction

https://stackblitz.com/edit/sveltejs-kit-template-default-fbr4us?file=src/routes/[league]/+page.svelte

try navigating around several times, you should see the browser hang at some point

CleanShot.2023-03-07.at.10.41.13.mp4

Logs

No response

System Info

System:
    OS: macOS 13.2
    CPU: (8) arm64 Apple M1 Pro
    Memory: 364.58 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.14.2 - ~/.nvm/versions/node/v16.14.2/bin/node
    Yarn: 1.22.19 - ~/.nvm/versions/node/v16.14.2/bin/yarn
    npm: 8.5.0 - ~/.nvm/versions/node/v16.14.2/bin/npm
  Browsers:
    Chrome: 110.0.5481.177
    Chrome Canary: 113.0.5636.0
    Firefox: 103.0.2
    Safari: 16.2
  npmPackages:
    @sveltejs/adapter-vercel: ^2.3.0 => 2.3.0 
    @sveltejs/kit: ^1.5.0 => 1.10.0 
    svelte: ^3.54.0 => 3.55.1 
    vite: ^4.0.0 => 4.1.4

Severity

serious, but I can work around it

Additional Information

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-decisionNot sure if we want to do this yet, also design work needed

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions