Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IDE hangs from time to time #18151

Closed
RomanNikitenko opened this issue Oct 21, 2020 · 11 comments
Closed

IDE hangs from time to time #18151

RomanNikitenko opened this issue Oct 21, 2020 · 11 comments
Assignees
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/bug Outline of a bug - must adhere to the bug report template. severity/blocker Causes system to crash and be non-recoverable or prevents Che developers from working on Che code.
Milestone

Comments

@RomanNikitenko
Copy link
Member

RomanNikitenko commented Oct 21, 2020

Describe the bug

Within dogfooding session I faced with the problem that sometimes Che hangs
Looks like it starts from project tree items hang then IDE hangs in general, finally I get Connection is closed error or Paused before potential out-of-memory state (see screenshots section).
Please see video: https://youtu.be/3na80JGPMdw

Che version

I can reproduce it on dogfooding instance using fresh master of theia and che-theia, so my own images.
Also I tested it for devfile from happy tests for eclipse-che/che-theia#882.

Steps to reproduce

  1. Try to expand tree items a few times

Screenshots

video: https://youtu.be/3na80JGPMdw

connectionIsClosed

out-of-memory

Environment

dogfooding instance

@RomanNikitenko RomanNikitenko added kind/bug Outline of a bug - must adhere to the bug report template. area/editors labels Oct 21, 2020
@che-bot che-bot added the status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. label Oct 21, 2020
@RomanNikitenko
Copy link
Member Author

RomanNikitenko commented Oct 21, 2020

Tested for https://che.openshift.io/

ide_hangs_cheOpenshift

connection

@azatsarynnyy azatsarynnyy added area/editor/theia Issues related to the che-theia IDE of Che and removed area/editors status/need-triage An issue that needs to be prioritized by the curator responsible for the triage. See https://github. labels Oct 21, 2020
@azatsarynnyy azatsarynnyy added this to the 7.21 milestone Oct 21, 2020
@azatsarynnyy azatsarynnyy added severity/P1 Has a major impact to usage or development of the system. status/in-progress This issue has been taken by an engineer and is under active development. labels Oct 21, 2020
@azatsarynnyy azatsarynnyy mentioned this issue Oct 21, 2020
15 tasks
@RomanNikitenko
Copy link
Member Author

Maybe related to upstream changes eclipse-theia/theia@fe4062e

@vitaliy-guliy
Copy link
Contributor

Is it reproducible on local Che deployment?

@RomanNikitenko
Copy link
Member Author

@vitaliy-guliy
I didn't check it

@RomanNikitenko
Copy link
Member Author

I found that commit eclipse-theia/theia@329a3ef brought breaking changes for che.

@azatsarynnyy
Copy link
Member

I'm labeling it as a blocker since it prevents us from consuming the latest upstream Theia commits with the required changes.

@azatsarynnyy azatsarynnyy added severity/blocker Causes system to crash and be non-recoverable or prevents Che developers from working on Che code. and removed severity/P1 Has a major impact to usage or development of the system. labels Oct 22, 2020
@tsmaeder
Copy link
Contributor

@azatsarynnyy +1 on this being a blocker: let's not stay off theia/master too long.
Do we know how the plugin activation changes cause this behaviour?

@RomanNikitenko
Copy link
Member Author

@tsmaeder

Do we know how the plugin activation changes cause this behaviour?

First we had suspicion that watcher related changes brought breaking changes for che, but after investigation I detected that the behavior was broken by eclipse-theia/theia@329a3ef
I'm investigating how the plugin activation changes cause this behaviour right now.

@RomanNikitenko
Copy link
Member Author

RomanNikitenko commented Oct 22, 2020

@tsmaeder
about your question
looks like plugin activation process like endless loop now:

First I see tons of logs:

2020-10-22 08:40:46.301 root ERROR [hosted-plugin: 46] activatePlugin:  editorconfig.editorconfig 
2020-10-22 08:40:46.390 root ERROR [hosted-plugin: 46] activatePlugin:  editorconfig.editorconfig 
2020-10-22 08:40:46.476 root ERROR [hosted-plugin: 46] activatePlugin:  editorconfig.editorconfig 
2020-10-22 08:40:46.800 root ERROR [hosted-plugin: 46] activatePlugin:  editorconfig.editorconfig 
2020-10-22 08:40:47.262 root ERROR [hosted-plugin: 46] activatePlugin:  editorconfig.editorconfig 

then

2020-10-22 08:40:47.562 root INFO [hosted-plugin: 46] <--- Last few GCs --->
e [46:0x55d9dccc1020]   802260 ms: Mark-sweep 383.2 (387.9) -> 380.7 (386.7) MB, 65.9 / 0.0 ms  (+ 279.2 ms in 404 steps since start of marking, biggest step 7.0 ms, walltime since start of marking 357 ms) (average mu = 0.158, current mu = 0.035) finalize i[46:0x55d9dccc1020]   802774 ms: Mark-sweep 381.3 (386.9) -> 380.0 (385.2) MB, 4.9 / 0.0 ms  (+ 224.1 ms in 446 steps since start of marking, biggest step 7.6 ms, walltime since start of marking 366 ms) (average mu = 0.355, current mu = 0.555) finalize in

<--- JS stacktrace --->

==== JS stack trace =========================================

Security context: 0x0b414b3c08d1 <JSObject>
    0: builtin exit frame: writeUtf8String(this=0x31ba51c8b661 <Pipe map = 0xfd504559399>,0x1bdede0004b1 <undefined>,0x24d72d61bfc9 <Very long string[17741]>,0x24d72d6198a1 <WriteWrap map = 0x3119db13c079>,0x31ba51c8b661 <Pipe map = 0xfd504559399>)

    1: _send [0x86e90326b59] [internal/child_process.js:~688] [pc=0x27ca8e042f95](this=0x2448f643fd41 <process map = 0x3119db135fe9>,0x24d72d6197d9 ... 
2020-10-22 08:40:47.562 root ERROR [hosted-plugin: 46] FATAL ERROR: Ineffective mark-compacts near heap limit Allocation failed - JavaScript heap out of memory 
2020-10-22 08:40:48.395 root ERROR [hosted-plugin: 46] IPC exited, with signal: SIGABRT, and exit code: null 

Pay attention on JavaScript heap out of memory ^^

then tons of logs like:

2020-10-22 08:40:48.407 root ERROR Error from plugin host: Channel closed 
2020-10-22 08:40:48.500 root ERROR Error from plugin host: Channel closed 
2020-10-22 08:40:48.591 root ERROR Error from plugin host: Channel closed 
2020-10-22 08:40:49.166 root ERROR Error from plugin host: Channel closed 

then

2020-10-22 09:11:54.791 root ERROR Error: Connection got disposed.
    at Object.dispose (/home/theia/node_modules/vscode-jsonrpc/lib/main.js:904:25)
    at /home/theia/node_modules/vscode-ws-jsonrpc/lib/socket/connection.js:14:41
    at CallbackList.invoke (/home/theia/node_modules/vscode-jsonrpc/lib/events.js:62:39)
    at Emitter.fire (/home/theia/node_modules/vscode-jsonrpc/lib/events.js:121:36)
    at closeHandler (/home/theia/node_modules/vscode-jsonrpc/lib/main.js:240:26)
    at CallbackList.invoke (/home/theia/node_modules/vscode-jsonrpc/lib/events.js:62:39)
    at Emitter.fire (/home/theia/node_modules/vscode-jsonrpc/lib/events.js:121:36)
    at WebSocketMessageReader.fireClose (/home/theia/node_modules/vscode-jsonrpc/lib/messageReader.js:111:27)
    at WebSocketMessageReader.fireClose (/home/theia/node_modules/vscode-ws-jsonrpc/lib/socket/reader.js:67:19)
    at /home/theia/node_modules/vscode-ws-jsonrpc/lib/socket/reader.js:24:18 

and
crash_plugins

@tsmaeder
Copy link
Contributor

That makes sense: plugin activation should be a no-op after the first time, the referenced commit broke that behaviour, obviously.

@azatsarynnyy
Copy link
Member

fixed by eclipse-che/che-theia#891

@azatsarynnyy azatsarynnyy removed the status/in-progress This issue has been taken by an engineer and is under active development. label Oct 24, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/editor/theia Issues related to the che-theia IDE of Che kind/bug Outline of a bug - must adhere to the bug report template. severity/blocker Causes system to crash and be non-recoverable or prevents Che developers from working on Che code.
Projects
None yet
Development

No branches or pull requests

5 participants