Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 361619

Summary: [performance] Dependency-only publisher zips entire project directory
Product: z_Archived Reporter: Tobias Oberlies <t-oberlies>
Component: TychoAssignee: Tobias Oberlies <t-oberlies>
Status: RESOLVED FIXED QA Contact:
Severity: minor    
Priority: P2    
Version: unspecified   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on:    
Bug Blocks: 356888    

Description Tobias Oberlies CLA 2011-10-21 04:38:14 EDT
I just stumbled over this by coincidence: While pre-publishing the project metadata (as starting point for dependency resolution and for inter-module dependencies), each project directory (including the target folder from a previous builds!) is zipped and written into a /dev/null output stream.

In projects with a large target folder, this significantly affects the time between "Scanning for projects" and "Resolving target platform for project (...)". In my case (an unpacked JEE distribution in the target folder as test data), this bug caused a delay of ~20s.

Steps to reproduce:
- Get the Tycho sources of Tycho 0.13.0 (or up to the fix)
- Launch a build with mvnDebug using that Tycho version
- Place method entry breakpoints in the publishArtifact methods in BundlesAction
- Create a remote debugging launch configuration from the project org.eclipse.tycho.p2.tools.impl (to get the needed sources)
- From the breakpoint, watch the publisher zip the entire project directory
Comment 1 Tobias Oberlies CLA 2011-10-21 04:45:46 EDT
From looking at the history, it seems that this bug has been introduced with the root files support in 0.11.0 (see aace2c9). I am not too surprised to see something like this happen, and it affirms my plans to get rid of the dependency-only publisher by postponing dependency resolution to the module build when the real metadata publishing can be done (see bug 353889 and [1])

[1] http://wiki.eclipse.org/Tycho/Ideas/Deferring_Dependency_Resolution
Comment 2 Tobias Oberlies CLA 2011-10-21 04:58:34 EDT
Fixed with commit a10a55a.