Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "PDE/4.4TargetChanges"

< PDE
Line 8: Line 8:
 
* Changing target platforms now does not do a removal/add/reset, instead all content is reset
 
* Changing target platforms now does not do a removal/add/reset, instead all content is reset
 
* TargetPlatformService now holds on to a resolved target definition for fast lookups
 
* TargetPlatformService now holds on to a resolved target definition for fast lookups
 +
* p2 target locations are not marked as dirty on creation avoiding pinging remote sites
  
 
Still to finish:
 
Still to finish:
Line 22: Line 23:
 
* 100ms from above could be gained back by not reading the manifest files 2 (or 3 times)
 
* 100ms from above could be gained back by not reading the manifest files 2 (or 3 times)
 
* p2 targets are very fast if everything is downloaded, any missing files cause long running operations
 
* p2 targets are very fast if everything is downloaded, any missing files cause long running operations
 +
* p2 targets were changed to not ping remote sites on creation

Revision as of 17:09, 29 August 2013

Changes relating to bug 283731 - [target] Remove target state dependence on preferences

Changes made:

  • Improved tracing, no more cache option, new modeloption, displays model creation time
  • Deprecated all target platform preferences from ICoreConstants (internal)
  • Deprecated TARGET_CHANGED and ENVIRONMENT_CHANGED from IModelProviderEvents (API)
  • PDEState is no longer cached (<100 ms performance hit for standard platform, >200ms gain for large target)
  • Changing target platforms now does not do a removal/add/reset, instead all content is reset
  • TargetPlatformService now holds on to a resolved target definition for fast lookups
  • p2 target locations are not marked as dirty on creation avoiding pinging remote sites

Still to finish:

  • Look at performance bottlenecks (see below)
  • How to recover from cancelled job
  • Look at ways to delay any p2 operation that is long running unless user can cancel
  • Provide progress reporting when loading models in wizard or preference page
  • Better recognize when target content on disk has changed
  • Can feature loading even happen first?

Performance impacts:

  • Removing state caching improves performance for larger targets (1000+), slight hit for smaller targets (500-)
  • Model creation is about 100ms longer to resolve target platform
  • 100ms from above could be gained back by not reading the manifest files 2 (or 3 times)
  • p2 targets are very fast if everything is downloaded, any missing files cause long running operations
  • p2 targets were changed to not ping remote sites on creation

Back to the top