| Summary: | [planner] cannot install plugin and patched plugin (via feature patch) at once | ||
|---|---|---|---|
| Product: | [Eclipse Project] Equinox | Reporter: | Jacek Pospychala <jacek.pospychala> |
| Component: | p2 | Assignee: | P2 Inbox <equinox.p2-inbox> |
| Status: | RESOLVED WORKSFORME | QA Contact: | |
| Severity: | major | ||
| Priority: | P3 | CC: | irbull, pascal |
| Version: | 3.6 | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
to narrow down, I also tried basebuilder R36_M7 and it breaks the same way as RC2. R36_M4 still works, so the breaking change must have appeared somewhere between M4 and M7. I forgot about this for a while, because we switched back to basebuilder R36_M4. But other bugs in R36_M4 (related to pack.gz/jar) forced me to move again to R36_RC4. My new take on this issue is that p2 is unable to install a feature with plugin and a patch feature with patched plugin in one run. Or is p2 able to do so? As far as I can see this should work fine since from a resolution point of view p2 treats every install / update / remove as a complete install. Please provide a small test case if this still occurs. |
When creating our product, we're using PDE Build to create big p2 repository of all dependencies and feature that will be included. Finally, in postBuild, we're creating product using following p2.director command line: -application org.eclipse.equinox.p2.director -flavor tooling -installIU com.zend.php.ide/7.3.0.v20100608 -p2.os win32 -p2.ws win32 -p2.arch x86 -roaming -profile studioProfile -profileProperties org.eclipse.update.install.features=true -metadataRepository ${p2.metadata.repo} -artifactRepository ${p2.artifact.repo} -destination ${p2.install.path} -bundlepool ${p2.install.path} -vmargs -Declipse.p2.data.area=${p2.install.path}/p2 -Declipse.p2.MD5Check=false -Declipse.p2.profile=${p2.profile} -Xmx1024m We're patching some of the features using feature patches, so both original features as well as feature patches are in the source repository. Our product includes both, original features as well as a feature that contains all feature patches. Unfortunately, when trying to install the product, director fails with following: !ENTRY org.eclipse.equinox.p2.director 4 1 2010-06-08 12:49:20.146 !MESSAGE Cannot complete the install because of a conflicting dependency. !SUBENTRY 1 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.146 !MESSAGE Software being installed: Zend Studio 7.3.0.v20100608 (com.zend.php.ide 7.3.0.v20100608) !SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2010-06-08 12:49:20.146 !MESSAGE Only one of the following can be installed at once: !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.146 !MESSAGE Eclipse Data Tools Platform SQLite UI Enablement Plug-in 1.0.0.v200906020900 (org.eclipse.datatools.enablement.sqlite.ui 1.0.0.v200906020900) !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.147 !MESSAGE Eclipse Data Tools Platform SQLite UI Enablement Plug-in 1.0.0.v20100607 (org.eclipse.datatools.enablement.sqlite.ui 1.0.0.v20100607) !SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2010-06-08 12:49:20.147 !MESSAGE Cannot satisfy dependency: !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.147 !MESSAGE From: Zend Studio 7.3.0.v20100608 (com.zend.php.ide 7.3.0.v20100608) !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.147 !MESSAGE To: org.eclipse.datatools.enablement.sqlite.ui [1.0.0.v200906020900] !SUBENTRY 1 org.eclipse.equinox.p2.director 4 1 2010-06-08 12:49:20.147 !MESSAGE Cannot satisfy dependency: !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.148 !MESSAGE From: Zend Studio 7.3.0.v20100608 (com.zend.php.ide 7.3.0.v20100608) !SUBENTRY 2 org.eclipse.equinox.p2.director 4 0 2010-06-08 12:49:20.148 !MESSAGE To: org.eclipse.datatools.enablement.sqlite.ui [1.0.0.v20100607] As far as I understand, above error log says that com.zend.php.ide depends on two versions of org.eclipse.datatools.enablement.sqlite.ui. I'm not sure why it claims that. The dependency looks like this: com.zend.php.ide (product) +- org.eclipse.datatools.enablement.feature (feature) | +- org.eclipse.datatools.enablement.sqlite.ui 1.0.0.v200906020900 +- com.zend.php.patches.feature (feature) +- org.eclipse.datatools.enablement.feature.patch (feature patch) +- org.eclipse.datatools.enablement.sqlite.ui 1.0.0.v20090607 We also tried to create our product first without the patches, and install patches later, via p2 GUI. Following is the error log we're getting when installing our patches feature (sorry, this time not JSDT instead of DTP, but it doesn't matter): Software being installed: Zend Studio Patches Feature 7.3.0.v20100608 (com.zend.php.patches.feature.group 7.3.0.v20100608) Software currently installed: Zend Studio 7.3.0.v20100607 (com.zend.php.ide 7.3.0.v20100607) Only one of the following can be installed at once: JSDT Web Support UI 1.0.300.v20100608 (org.eclipse.wst.jsdt.web.ui 1.0.300.v20100608) JSDT Web Support UI 1.0.300.v201005200151 (org.eclipse.wst.jsdt.web.ui 1.0.300.v201005200151) Cannot satisfy dependency: From: Zend Studio 7.3.0.v20100607 (com.zend.php.ide 7.3.0.v20100607) To: org.eclipse.wst.jsdt.web.ui [1.0.300.v201005200151] Cannot satisfy dependency: From: Zend Studio 7.3.0.v20100607 (com.zend.php.ide 7.3.0.v20100607) To: org.eclipse.wst.web_ui.feature.feature.group [3.2.0.v201005241510-7O7CFb3EMf84nOyJKuT05LU72RId] Cannot satisfy dependency: From: Zend Studio Patches Feature 7.3.0.v20100608 (com.zend.php.patches.feature.group 7.3.0.v20100608) To: org.eclipse.wst.web_ui.feature.patch.feature.group [3.2.0.v20100608] Cannot satisfy dependency: From Patch: org.eclipse.wst.web_ui.feature.patch.feature.group 3.2.0.v20100608 Eclipse Web Developer Tools 3.2.0.v201005241510-7O7CFb3EMf84nOyJKuT05LU72RId (org.eclipse.wst.web_ui.feature.feature.group 3.2.0.v201005241510-7O7CFb3EMf84nOyJKuT05LU72RId) To: org.eclipse.wst.jsdt.web.ui [1.0.300.v20100608] So again, p2 claims that there's conflict between product and our feature patch. We also tried to install our feature patches on top of clean Eclipse SDK 36RC3 with required features installed via p2 gui. Without any errors. The issue appeared, after migrating org.eclipse.releng.basebuilder in our build system from R36_M4 to R36_RC2. I couldn't have found any similar issues in bzilla. Any ideas?