[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[Subclipse-dev] Help needed - Subclipse performance problem

From: Mark Phippard <markp_at_softlanding.com>
Date: 2006-02-16 19:30:15 CET

A colleague of mine discovered a problem in Subclipse when committing (in
this case adding) thousands of files in one commit. The behavior is that
it would run for hours and never even get to the point of sending the
commit to the server. It was still outputting the Adding ... messages to
the console. Over time, it takes longer and longer for each adding
message to the console.

Doing the commit via the command line the whole thing finishes in about 10

Looking at our code it looks like this is caused by our notification
handling, and as near as I can tell would have always been in Subclipse.
This is not a new problem. What I see is that we are collecting the items
that commit is notifying us about in a Set, specifically a LinkedHashSet.
This is so that when the commit is finished we can then process this Set
and notify Eclipse that all of these items have been committed.

So the problem must be in the scalability of the LinkedHashSet. Eventually
the JVM runs out of memory and crashes, or at a minimum it gets
progressively slower in adding the items to the Set.

Ideally someone could point me to a more efficient class we could use that
would be capable of scaling up to hold thousands of IResource objects
without crashing the JVM.

I am looking at the OperationManager class in the core plug-in.



Scanned for SoftLanding Systems, Inc. and SoftLanding Europe Plc by IBM Email Security Management Services powered by MessageLabs.

To unsubscribe, e-mail: dev-unsubscribe@subclipse.tigris.org
For additional commands, e-mail: dev-help@subclipse.tigris.org
Received on Thu Feb 16 19:31:48 2006

This is an archived mail posted to the Subclipse Dev mailing list.