mobile-shell / mobile-shell/mosh

Long delays or stalls when refreshing terminals with lots of static text over a slow link

Open
#832 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C++
Stars
14.5k
Forks
865
PR merge metrics
No merged PRs in 30d

Description

There are sometimes excessively long refresh delays with a slow link and a terminal with lots of unchanging text. When switching between tmux windows with lots of static text on a 475x125 character console, it can take many seconds to hours to refresh the terminal. Sometimes it completely stalls with the terminal partially refreshed, and while refreshing it saturates the server-to-client connection. Neither the client nor server are taking excessive CPU. The client indicates a lost connection, but if I type a hot key on the client to switch tmux at the far end to a sparsely populated window, the whole thing recovers. It fails again as soon as tmux is switched to a window with lots of text.
An ssh connection at the same time to the same tmux window refreshes in a couple of seconds.

Contributor guide

No contributing guide indexed for this repository

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

Start by reproducing the refresh using a slow link, a 475x125 terminal, and tmux windows with lots of static text; compare it with the reported SSH behavior. Trace the refresh path and connection traffic while switching windows. Done means the populated window refreshes reliably without stalling, falsely reporting a lost connection, or saturating the server-to-client link.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
networking, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.