eclipse-oomph / oomph

Eclipse Public License 2.0
6 stars 11 forks source link

"The artifact is already available in the repository " #58

Open jukzi opened 10 months ago

jukzi commented 10 months ago

I was not able to OOmph Platform workspace today on first try. I do not understand the error message: The error message gone when i retried using "back" and "finish"

An error was detected while performing the engine operation and the changes are being rolled back. See the log for details.
ERROR: org.eclipse.pde.core code=0 Problems occurred while resolving the target contents
  at org.eclipse.oomph.util.OomphPlugin.coreException(OomphPlugin.java:296)
  at org.eclipse.oomph.util.pde.TargetPlatformUtil.activateTargetDefinition(TargetPlatformUtil.java:151)
  at org.eclipse.oomph.targlets.internal.core.TargletContainer.forceUpdate(TargletContainer.java:905)
  at org.eclipse.oomph.setup.targlets.impl.TargletTaskImpl$4.run(TargletTaskImpl.java:1232)
  at org.eclipse.oomph.util.pde.TargetPlatformUtil.runWithTargetPlatformService(TargetPlatformUtil.java:120)
  at org.eclipse.oomph.setup.targlets.impl.TargletTaskImpl.perform(TargletTaskImpl.java:1092)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.doPerformNeededSetupTasks(SetupTaskPerformer.java:3864)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer$WorkspaceUtil$1.run(SetupTaskPerformer.java:5200)
  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2448)
  at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2473)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer$WorkspaceUtil.performNeededSetupTasks(SetupTaskPerformer.java:5193)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performNeededSetupTasks(SetupTaskPerformer.java:3798)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.performTriggeredSetupTasks(SetupTaskPerformer.java:3773)
  at org.eclipse.oomph.setup.internal.core.SetupTaskPerformer.perform(SetupTaskPerformer.java:3651)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$9.run(ProgressPage.java:592)
  at org.eclipse.oomph.setup.ui.wizards.ProgressPage$11$1.run(ProgressPage.java:721)
  at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
  ERROR: org.eclipse.equinox.p2.engine code=4 An error occurred while collecting items to be installed
    ERROR: org.eclipse.equinox.p2.engine code=0 session context was:(profile=C__Users_jkubitz_platform-2024-01-10_ws-36f24858156517d7b240931401b63cd369740d13, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
    ERROR: org.eclipse.equinox.p2.artifact.repository code=1201 The artifact is already available in the repository file:/C:/Users/jkubitz/.p2/pool/.

Took 645 seconds.
There are failed tasks.
Press Back to choose different settings or Cancel to abort.

image

merks commented 10 months ago

Yes, this happens occasionally with no known way to reproduce the problem unfortunately. I don't even have a good theory for how the artifact got into the pool while at the same time the p2 seems to think it needs to download the artifact because it's not yet in the pool. Perhaps something put the artifact into the pool folder but failed to update the artifact metadata to reflect that fact.

jukzi commented 10 months ago

related question: why is the pool used at all? I disabled it: image

merks commented 10 months ago

There's always a pool, even if not a shared one. That setting disables it for the p2 director task, i.e., so that the p2 direct creates an installation where its pool is colocated with (nested in) the installation. This has no affect on targlets.