tornadoweb / tornadoweb/tornado

on windows sometimes WebSocket messages never received

Open
#2,596 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

websocket windows
Dominant language
Python
Stars
22.2k
Forks
5.6k
Avg merge
3h 42m
Merged PRs (30d)
16

Description

hi,

we use tornado in our desktop application, and we do have super-obscure issues on windows machines from time to time (this was an earlier one for example: https://github.com/tornadoweb/tornado/issues/2347)

the latest one is that on a couple of machines on_message() of WebSocket is never called. at a js console i go:

let ws = new WebSocket('ws://127.0.0.1:XX/coms')

and open() in WebSocket is called (and returns)

but ws.send('fred') does not result in on_message() being called (the message fred does appear in the frames of the connection in the js dev tools however)

if at the js console i go:

ws.close()

on_close() is called, but not for a while ... so it looks like it times out.

i appreciate this is almost definitely a "yeah, windows is sometimes weird" issue, but i did wonder if you had any suggestions for debugging this. these issues are ultra-rare, i'd guess they affect < 1 in 1000 of our windows users.

with thanks

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No source file, test, or reproducible environment is named. Start by examining the WebSocket path serving ws://127.0.0.1:XX/coms and reproduce the Windows-only case while comparing browser frames with on_message() and on_close(); done means identifying a reproducible cause or a documented debugging result.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.