tornadoweb / tornadoweb/tornado
on windows sometimes WebSocket messages never received
Nobody has claimed this yet.
- 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
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- 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