Skip to content

Coder Connect hangs if you sign out and sign into a different deployment #69

Closed
@spikecurtis

Description

@spikecurtis

Reproduction steps:

  1. Sign into a deployment
  2. Turn on Coder Connect and wait for it to start
  3. Turn off Coder Connect
  4. Sign out
  5. Sign into a different deployment (different URL)
  6. Turn on Coder Connect

Coder Connect spinner will spin indefinitely and never come up.

We've traced it to Downloader.cs which maintains a ConcurrentDictionary called _downloads, which tracks in-progress download tasks keyed off destination path. We don't ever clear tasks out of this dictionary when they complete, so a new download, for a different URL gets stuck in a loop looking up the task in the dictionary, waiting for it (which returns instantly because it's done), and then noticing it's for a different URL, and retrying in a loop.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions