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

20+ seconds faster Che-Theia startup #20861

Closed
azatsarynnyy opened this issue Dec 1, 2021 · 7 comments
Closed

20+ seconds faster Che-Theia startup #20861

azatsarynnyy opened this issue Dec 1, 2021 · 7 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. new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes severity/P1 Has a major impact to usage or development of the system.
Milestone

Comments

@azatsarynnyy
Copy link
Member

azatsarynnyy commented Dec 1, 2021

Describe the bug

It takes about 10 sec. after Che-Theia is loaded to the browser and before the project tree is rendered.

Che version

next (development version)

Steps to reproduce

Start a new workspace with the following factory URL:
<che-host>#https://github.com/l0rd/spring-petclinic?devfilePath=.devfilev2.yaml

It takes about 10 sec. before the project tree is rendered. During that time the tree is empty. However, the project sources are already cloned.

Expected behavior

The projects tree should be rendered as soon as Che-Theia page is loaded to the browser.

Runtime

OpenShift

Screenshots

Peek 2021-12-01 14-00

Installation method

OperatorHub

Environment

Linux

Release Notes Text

The previous DevWorkspace based Che-Theia used to take more than 20 seconds to load due to some blocking built-in plugins startup. The built-in plugins are not blocking the main Theia process startup anymore.

@azatsarynnyy azatsarynnyy added kind/bug Outline of a bug - must adhere to the bug report template. sprint/current severity/P1 Has a major impact to usage or development of the system. team/editors area/editor/theia Issues related to the che-theia IDE of Che labels Dec 1, 2021
@azatsarynnyy azatsarynnyy added this to the 7.41 milestone Dec 1, 2021
@RomanNikitenko RomanNikitenko added the status/in-progress This issue has been taken by an engineer and is under active development. label Dec 15, 2021
@RomanNikitenko
Copy link
Member

I detected that we have the delay at sync plugins step. It's actual for the dev workspace mode only.
Looking for a cause of the problem...

@benoitf
Copy link
Contributor

benoitf commented Dec 21, 2021

@azatsarynnyy 7.41.0 release will be cut tomorrow. This issue is not yet closed, so please close it if it's done or move it to 7.42

@RomanNikitenko
Copy link
Member

I had a quite long vacation, will come back to the issue today/tomorrow...

@RomanNikitenko
Copy link
Member

RomanNikitenko commented Jan 21, 2022

I detected that the system hangs on getDeployedPluginIds step.
It looks like frontend waits for the backend at that step:

Screenshot 2022-01-21 at 14 00 43

I investigated the problem using minikube locally on my machine. As you can see the delay for my machine is about 40 seconds.

Finally, I found that we are waiting for unpacking che-theia plugins at that delay.
The plugins are unpacked in parallel, but it takes about 30 seconds (in my environment) to unpack some of them.

Screenshot 2022-01-21 at 18 41 31

I tried to put already unpacked che-theia plugins to the corresponding image and added an entity (like PluginTheiaFileHandler) which handles them.
You can see the difference for my environment on the videos bellow.

Behaviour for packed che-theia plugins, so main branch without any changes - the plugins are unpacked at starting backend

start_workspace_packed_plugins.mp4

Behaviour for unpacked che-theia plugins, so with my changes - plugins are unpacked at building images step

unpacked_plugins_2.mp4

@RomanNikitenko RomanNikitenko added status/code-review This issue has a pull request posted for it and is awaiting code review completion by the community. and removed status/in-progress This issue has been taken by an engineer and is under active development. labels Jan 31, 2022
@RomanNikitenko RomanNikitenko removed the status/code-review This issue has a pull request posted for it and is awaiting code review completion by the community. label Feb 1, 2022
@l0rd l0rd changed the title Che-Theia hangs before showing the project sources tree Ten seconds faster Che-Theia startup Feb 3, 2022
@l0rd l0rd added the new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes label Feb 3, 2022
@l0rd l0rd added the status/release-notes-review-needed Issues that needs to be reviewed by the doc team for the Release Notes wording label Feb 3, 2022
@azatsarynnyy
Copy link
Member Author

@l0rd actually, it's > 20 sec. faster for hosted Che instance
and > 30 sec. for the local minikube installation

just FYI 🙂

@l0rd l0rd changed the title Ten seconds faster Che-Theia startup 20+ seconds faster Che-Theia startup Feb 3, 2022
@l0rd
Copy link
Contributor

l0rd commented Feb 3, 2022

@azatsarynnyy thanks. I have updated the title and the release notes.

@devstudio-release
Copy link

sync'd to Red Hat JIRA https://issues.redhat.com/browse/CRW-2712

@max-cx max-cx removed the status/release-notes-review-needed Issues that needs to be reviewed by the doc team for the Release Notes wording label Jan 12, 2023
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. new&noteworthy For new and/or noteworthy issues that deserve a blog post, new docs, or emphasis in release notes severity/P1 Has a major impact to usage or development of the system.
Projects
None yet
Development

No branches or pull requests

6 participants