Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 323319 - [planner] Non greedy handling in the slicer brings in complete repositories
Summary: [planner] Non greedy handling in the slicer brings in complete repositories
Status: CLOSED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.6   Edit
Hardware: PC Mac OS X - Carbon (unsup.)
: P3 normal (vote)
Target Milestone: 3.6.1   Edit
Assignee: Pascal Rapicault CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on: 323322
Blocks:
  Show dependency tree
 
Reported: 2010-08-21 21:39 EDT by Pascal Rapicault CLA
Modified: 2010-09-16 12:13 EDT (History)
2 users (show)

See Also:


Attachments
Change to the slicer (1.78 KB, patch)
2010-08-21 21:43 EDT, Pascal Rapicault CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Pascal Rapicault CLA 2010-08-21 21:39:39 EDT
When in 3.6 we changed the handling of greed, the code in the slicer got changed such that the non greedy requirements would be followed and gathered in a special variable (but not added to the slice). Unfortunately when requirements like those present in the tooling.osgi.default are processed, they cause pretty much all the IUs to be added to this special variable. 
Even though this may not be causing us a memory problems in the immediate term (because all the IUs are always loaded in memory by the repository manager), this is still causes some garbage to be created and slightly slows down the overall process (in addition of being a time bomb if we ever make repository loading smarter).

My suggestion is to change the slicer such that the set of non greedy IUs is gathered on a second pass over the result of the initial slicing.
Comment 1 Pascal Rapicault CLA 2010-08-21 21:43:48 EDT
Created attachment 177172 [details]
Change to the slicer
Comment 2 Pascal Rapicault CLA 2010-08-21 21:45:03 EDT
Marking this for 3.6.1 so we don't loose track of it.
Comment 3 Daniel Le Berre CLA 2010-08-22 12:52:22 EDT
I discussed the issue with Pascal and checked the patch: this is indeed the way we should have implemented the collection of non greedy requirements in the first place, in a post processing step.
Comment 4 Pascal Rapicault CLA 2010-08-22 19:14:39 EDT
Fixed in HEAD and 3.6.x
Comment 5 DJ Houghton CLA 2010-09-16 12:13:58 EDT
There was a problem with tagging HEAD so this fix won't appear in integration builds until the first build after 3.7 M2.