OpenLiberty / OpenLiberty/liberty-tools-eclipse
Expanding "Source lookup" twistie => slow to populate for large projects with many Maven dependencies
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 16
- Forks
- 20
- Avg merge
- 2d 9h
- Merged PRs (30d)
- 16
Description
I used a fairly-large multimodule project. It seems to involve an EAR, with maybe 15 modules incl. WARs and JARs altogether. There are a bit less than 100 transitive dependencies.
When I expand the twistie under "Default" in the Source Lookup view:
nothing appears to happen. It seems like maybe the mouse click didn't even register and I should click again?
But actually the UI content is simply taking a long time to be calculated and to populate.
Maybe about 15 seconds? (I didn't time it carefully.)
Perhaps we could calculate this proactively in the background once debug is launched, rather than lazily when it's expanded?
We wouldn't want to slow down the Debug startup path too much and lose the benefits of doing things lazily, only-as-needed.
I don't think we'd want to do the calculation too early, say on project import, since then we have to worry about the dependencies having changed.
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
Reproduce the delay by expanding the “Default” twistie in the Source Lookup view for a large multimodule Maven project with many transitive dependencies. Trace when the source lookup content is calculated relative to Debug startup, then verify that the view populates promptly without imposing an unacceptable startup delay or using stale dependency data.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- performance, tooling
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100