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

regression: CI build hangs at "loading target platform" #62

Closed
haubi opened this issue May 23, 2022 · 3 comments · Fixed by #63
Closed

regression: CI build hangs at "loading target platform" #62

haubi opened this issue May 23, 2022 · 3 comments · Fixed by #63

Comments

@haubi
Copy link
Member

haubi commented May 23, 2022

When updating our internal IDE (based on Eclipse 2022-03) to ship with eaa541d, our internal CI builds (using TEA tasks) hang somewhere around "loading target platform" when about to set up the workspace for building the IDE.

Some stack dump is available in ldcsl-202205201343-hang-stackdump.txt

This is a regression since 413d2aa.

Before I start trying to reproduce in a local workspace: @szarnekow @jukzi Any idea so far?

@jukzi
Copy link
Contributor

jukzi commented May 23, 2022

looks like the com.wamas.ide.launching.ui.build.LcDslTargetPlatformSupport.uriMap is completed too late - @szarnekow could you please take a look into the stacktrace.

@jukzi
Copy link
Contributor

jukzi commented May 23, 2022

here the code relys on uriMap already initialized while it is currently in the initializeCache():

        at com.google.common.util.concurrent.Futures.getUnchecked(Futures.java:1317)
        at com.wamas.ide.launching.ui.build.LcDslTargetPlatformSupport.stateChanged(LcDslTargetPlatformSupport.java:554) <--use cache
        at org.eclipse.pde.internal.core.PluginModelManager.fireStateChanged(PluginModelManager.java:427)
        at org.eclipse.pde.internal.core.PluginModelManager.initializeTable(PluginModelManager.java:644)
        - locked <0x0000000704146b58> (a org.eclipse.pde.internal.core.PluginModelManager)
        at org.eclipse.pde.internal.core.PluginModelManager.getExternalModels(PluginModelManager.java:1178)
        at com.wamas.ide.launching.ui.build.LcDslTargetPlatformSupport.lambda$11(LcDslTargetPlatformSupport.java:201) <--initializeCache()

@szarnekow
Copy link
Contributor

I'm not at my machine right now but judging from the stack and from what I remember: It looks like we can skip all handling of events if the future is not done yet. The event processing should only be necessary to update the cached information. The update is not necessary if nothing was cached yet.

jukzi pushed a commit to jukzi/lcdsl that referenced this issue May 24, 2022
@jukzi jukzi linked a pull request May 24, 2022 that will close this issue
jukzi pushed a commit to jukzi/lcdsl that referenced this issue May 24, 2022
@jukzi jukzi mentioned this issue May 24, 2022
jukzi pushed a commit to jukzi/lcdsl that referenced this issue May 24, 2022
jukzi pushed a commit to jukzi/lcdsl that referenced this issue May 24, 2022
jukzi pushed a commit to jukzi/lcdsl that referenced this issue May 24, 2022
@haubi haubi closed this as completed in #63 May 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants