Login | Register
My pages Projects Community openCollabNet

Discussions > issues > [Issue 1368] Mylyn integration very slow in retrieving task repository for project

subclipse
Discussion topic

There will be a brief maintenance window every Friday at 17:00 Pacific.
For further details, see CollabNet's maintenance and upgrade policy.

Hide all messages in topic

All messages in topic

[Issue 1368] Mylyn integration very slow in retrieving task repository for project

Author selsemore
Full name Stephen Elsemore
Date 2012-02-06 07:08:47 PST
Message http://subclipse.tig​ris.org/issues/show_​bug.cgi?id=1368






------- Additional comments from selsemore at tigris dot org Mon Feb 6 07:08:47 -0800 2012 -------
The Subclipse-Mylyn integration contributes to Mylyn's projectLinkProviders extension
point to map workspace projects to task repositories. The Subclipse project link provider
(SubclipseTaskReposi​toryLinkProvider) does this by checking for the bugtraq:url SVN property
and, if it is set, returns the first task repository with a url that starts with that
value, if there is one. When checking for the bugtraq:url property, Subclipse does not
check only the resource in question, but climbs the local file system until a non-version
controlled resource is found. If the resource in question is a descendant of a resource
for which the property is set, then the property is taken from there. You can see some
background here:

http://subclipse.tig​ris.org/issues/show_​bug.cgi?id=1014

So, when the Tasktop dialog calls the Subclipse project link provider for each project,
this is what you can see reflected in the YouKit snapshot when ProjectProperties.ge​tProjectProperties(I​Resource)
is called. In the context in which this method is normally called, for example when doing
a commit, Subclipse only cares if ALL the selected resources are linked to a task repository
or not, so it can just make one call against one resource, or a common parent of the selected
resources. If 20 projects are selected for commit, it doesn't call the method 20 times.
 On the other hand, the Tasktop dialog, from what I understand, needs to group the selected
projects by task repository, so it calls the project link provider(s) for each project,
which is resulting in a lot of file crawling.

I'm open to ideas, but I'm not sure how to fix this without breaking the desired behavior
as described in the issue above, unless maybe a change was also made in the Tasktop dialog?
 For example, maybe we could have a new ProjectProperties.ge​tProjectProperties(I​Resource
resource, boolean crawlFileSystem) method, and if the Tasktop dialog passed the project
and false, there would at least be only one property check per call. Ideas?

Thanks,
Steve

[Issue 1368] Mylyn integration very slow in retrieving task repository for project

Author rombert
Full name Robert Munteanu
Date 2012-02-03 01:53:23 PST
Message http://subclipse.tig​ris.org/issues/show_​bug.cgi?id=1368






------- Additional comments from rombert at tigris dot org Fri Feb 3 01:53:22 -0800 2012 -------
Created an attachment (id=360)
YouKit snapshot

[Issue 1368] New - Mylyn integration very slow in retrieving task repository for project

Author rombert
Full name Robert Munteanu
Date 2012-02-03 01:51:34 PST
Message http://subclipse.tig​ris.org/issues/show_​bug.cgi?id=1368
                 Issue #|1368
                 Summary|Mylyn integration very slow in retrieving task reposit
                        |ory for project
               Component|subclipse
                 Version|1.6.x
                Platform|All
              OS/Version|All
                     URL|
                  Status|NEW
       Status whiteboard|
                Keywords|
              Resolution|
              Issue type|DEFECT
                Priority|P3
            Subcomponent|core
             Assigned to|issues@subclipse
             Reported by|rombert






------- Additional comments from rombert at tigris dot org Fri Feb 3 01:51:33 -0800 2012 -------
This is a bug originally reported by me against Tasktop Dev -
http://tasktop.com/p​roducts/tasktop-for-​eclipse . However, it was pointed out to
be due to a performance issue in the Subclipse-Mylyn integration. I'll outline
the pattern of usage and the found performance issue.

Tasktop dev has a dialog where projects are grouped by task repository. Once
I've checked out a large number of projects from SVN ( +20 ) , connected them
using Subclipse and open that specific dialog the UI is locked for 15-20
seconds.

I've used the YourKit Java Profiler to gather some data and it seems that
ProjectProperties.ge​tProjectProperties(I​Resource) takes a lot of time.

I'll attach a YourKit performance snapshot so that you can see exactly what goes
on. It would be great if this issue would be resolved, as it greatly reduces
performance in some situations.
Messages per page: