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

Bug 370941

Summary: Commit#getTagsForCommit() takes too much time
Product: [ECD] Orion Reporter: Tomasz Zarna <tomasz.zarna>
Component: GitAssignee: Tomasz Zarna <tomasz.zarna>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 Keywords: performance
Version: 0.4   
Target Milestone: 0.5 M2   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Attachments:
Description Flags
mylyn/context/zip none

Description Tomasz Zarna CLA 2012-02-08 08:02:05 EST
While fixing bug 369709 few performance flaws have been discovered. One of them was Commit#getTagsForCommit(), which takes more time then expected.
Comment 1 Tomasz Zarna CLA 2012-04-03 06:51:10 EDT
According to profiler calling these methods makes looking for tags so time expensive:
* Repository#getTags(), takes 55%
* RevWalk#parseAny(AnyObjectId), takes 24%
* RevWalk#isMergedInto(RevCommit, RevCommit), takes 20%

They add up to 99%!
Comment 2 Tomasz Zarna CLA 2012-05-02 07:42:45 EDT
Fixed with a81d61dd633957b0eed584f3dfb27856d3f5c58f
Comment 3 Tomasz Zarna CLA 2012-05-02 07:42:58 EDT
Created attachment 214913 [details]
mylyn/context/zip