JunoLab / atom-ink

IDE toolkit for Atom
MIT License
229 stars 40 forks source link

Uncaught Error: write data discarded, use flow control to avoid losing data #263

Open jsun-sun opened 4 years ago

jsun-sun commented 4 years ago

[Enter steps to reproduce:]

  1. ...
  2. ...

Atom: 1.44.0 x64 Electron: 4.2.7 OS: Mac OS X 10.15.3 Thrown From: ink package 0.12.2

Stack Trace

Uncaught Error: write data discarded, use flow control to avoid losing data

At /Users/JoanneSun/.atom/packages/ink/node_modules/xterm/lib/xterm.js:1

Error: write data discarded, use flow control to avoid losing data
    at e.write (/packages/ink/node_modules/xterm/lib/xterm.js:1:264459)
    at t.write (/packages/ink/node_modules/xterm/lib/xterm.js:1:86835)
    at e.write (/packages/ink/node_modules/xterm/lib/xterm.js:1:54799)
    at /packages/ink/lib/console/console.js:227:46)
    at PipeSocket.emit (events.js:187:15)
    at addChunk (_stream_readable.js:283:12)
    at readableAddChunk (_stream_readable.js:260:13)
    at PipeSocket.Readable.push (_stream_readable.js:219:10)
    at Pipe.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

Commands

     -9:11.6.0 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)
     -6:28.7.0 julia-client:run-block (input.hidden-input)
     -6:28.7.0 autocomplete-plus:cancel (atom-text-editor.editor.is-focused.hyperclick)
  2x -5:56.8.0 core:backspace (input.hidden-input)
     -5:53.5.0 julia-client:run-block (input.hidden-input)
     -5:53.5.0 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)
     -5:52 julia-client:run-block (input.hidden-input)
     -5:52 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)
     -5:51.1.0 core:move-down (input.hidden-input)
     -5:50.6.0 julia-client:run-block (input.hidden-input)
     -5:50.6.0 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)
     -5:32 julia-client:run-block (input.hidden-input)
     -5:32 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)
     -5:31.4.0 core:move-down (input.hidden-input)
     -5:24.5.0 julia-client:run-block (input.hidden-input)
     -5:24.5.0 autocomplete-plus:cancel (atom-text-editor.editor.is-focused)

Non-Core Packages

hyperclick 0.1.5 
indent-detective 0.4.0 
ink 0.12.2 
julia-client 0.12.2 
language-julia 0.19.2 
language-weave 0.6.7 
latex 0.50.2 
latex-completions 0.3.6 
tool-bar 1.2.0 
uber-juno 0.3.0 
pfitzseb commented 4 years ago

Why did you close the issue?

jsun-sun commented 4 years ago

Caused by my laptop turned into power-saving mode. Every time when it started showing screensaver, the same error message popped up.

On Mon, 24 Feb 2020 at 04:56, Sebastian Pfitzner notifications@github.com wrote:

Why did you close the issue?

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/JunoLab/atom-ink/issues/263?email_source=notifications&email_token=AGBZNIMEEFJCGVCRDTJLPLDREOKVHA5CNFSM4KZ7UBL2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEMXGI4I#issuecomment-590242929, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGBZNIIAERS3GUMOXFDEEI3REOKVHANCNFSM4KZ7UBLQ .

pfitzseb commented 4 years ago

Ah, good to know. I'll reopen the issue since it seems like we could handle this more gracefully.

jerch commented 4 years ago

Some background on this - the error is actually a safety measure by xterm.js to avoid OOM. This would happen, if xterm.js gets more than 50MB in the write buffer pending, which should never be the case (xterm.js gets unusable much earlier). To avoid it, plz see https://xtermjs.org/docs/guides/flowcontrol/ on how to implement flow control. Sadly we cannot blueprint this in a general way, as it needs backend preparations.