|
|
|
|
Re: Slow update from SVN [message #42458 is a reply to message #42202] |
Thu, 26 February 2009 15:26 |
Eclipse User |
|
|
|
Originally posted by: igor.ifedorenko.com
Igor,
There are couple of places where Subversive implementation is suboptimal.
I believe slow refresh after update is caused by inefficient
implementation of FileUtility#getPathNodes. It uses ArrayList#contains
method which is slow for large collections. Simply switching to HashSet
makes update much much faster (I am running patched version for several
months now).
The other problem I found is reported in bugzilla # 259287. This causes
problems with refresh from local filesystem after out-of-eclipse
changes. I did not have time to look if there is an easy fix, unfortunately.
--
Regards,
Igor
Igor Burilo wrote:
> Hello Noam,
>
> During update operation Subversive refreshes resources in order to reflect
> changes from file system to workspace's resource tree and this is a
> long-running operation. There's no way to prevent this action, but this
> action provides a progress monitor and you can pass it to background. As a
> workaround you can do synchronize and update only necessary files, but note
> that you may have problems during future commits/updates because of folders'
> revisions incompatibilities.
>
>> Our project recently switched from CVS to SVN, using subversive 0.7.3 and
>> eclipse 3.4.1. Project is large - ~20000 files. Still, command line update
>> from SVN takes 2-3 minutes while updating from eclipse takes 15 minutes
>> (even if the change is in 1 file). Running "kill -3" on eclipse shows that
>> it refreshes all resources after update (not sure, but looks like it...).
>> Is there a way to prevent this refresh / make it more quick? Even after
>> disabling "Compte deep outgoing state" - still no change.
>>
>> Any help with this is greatly appreciated.
>>
|
|
|
Re: Slow update from SVN [message #42489 is a reply to message #42458] |
Fri, 27 February 2009 08:50 |
Igor Burilo Messages: 435 Registered: July 2009 |
Senior Member |
|
|
Hello Igor,
I'll check it. I added your comments to bug #259287. Thanks for your help.
> Igor,
>
> There are couple of places where Subversive implementation is suboptimal.
>
> I believe slow refresh after update is caused by inefficient
> implementation of FileUtility#getPathNodes. It uses ArrayList#contains
> method which is slow for large collections. Simply switching to HashSet
> makes update much much faster (I am running patched version for several
> months now).
>
> The other problem I found is reported in bugzilla # 259287. This causes
> problems with refresh from local filesystem after out-of-eclipse changes.
> I did not have time to look if there is an easy fix, unfortunately.
>
> --
> Regards,
> Igor
>
> Igor Burilo wrote:
>> Hello Noam,
>>
>> During update operation Subversive refreshes resources in order to
>> reflect changes from file system to workspace's resource tree and this is
>> a long-running operation. There's no way to prevent this action, but this
>> action provides a progress monitor and you can pass it to background. As
>> a workaround you can do synchronize and update only necessary files, but
>> note that you may have problems during future commits/updates because of
>> folders' revisions incompatibilities.
>>
>>> Our project recently switched from CVS to SVN, using subversive 0.7.3
>>> and eclipse 3.4.1. Project is large - ~20000 files. Still, command line
>>> update from SVN takes 2-3 minutes while updating from eclipse takes 15
>>> minutes (even if the change is in 1 file). Running "kill -3" on eclipse
>>> shows that it refreshes all resources after update (not sure, but looks
>>> like it...). Is there a way to prevent this refresh / make it more
>>> quick? Even after disabling "Compte deep outgoing state" - still no
>>> change.
>>>
>>> Any help with this is greatly appreciated.
>>>
|
|
|
Re: Slow update from SVN [message #42686 is a reply to message #42489] |
Fri, 27 February 2009 14:50 |
Eclipse User |
|
|
|
Originally posted by: igor.ifedorenko.com
Sorry, looks like I was not clear enough. There are at least two
separate performance problems.
I do not have a solution for problem described in #259287
(SVNRemoteStorage#refreshLocalResourceImpl).
I have possible solution for another problem in
FileUtility#getPathNodes. I've opened new #266492 to track and attached
proposed fix to the bug.
--
Regards,
Igor
Igor Burilo wrote:
> Hello Igor,
>
> I'll check it. I added your comments to bug #259287. Thanks for your help.
>
>> Igor,
>>
>> There are couple of places where Subversive implementation is suboptimal.
>>
>> I believe slow refresh after update is caused by inefficient
>> implementation of FileUtility#getPathNodes. It uses ArrayList#contains
>> method which is slow for large collections. Simply switching to HashSet
>> makes update much much faster (I am running patched version for several
>> months now).
>>
>> The other problem I found is reported in bugzilla # 259287. This causes
>> problems with refresh from local filesystem after out-of-eclipse changes.
>> I did not have time to look if there is an easy fix, unfortunately.
>>
>> --
>> Regards,
>> Igor
>>
>> Igor Burilo wrote:
>>> Hello Noam,
>>>
>>> During update operation Subversive refreshes resources in order to
>>> reflect changes from file system to workspace's resource tree and this is
>>> a long-running operation. There's no way to prevent this action, but this
>>> action provides a progress monitor and you can pass it to background. As
>>> a workaround you can do synchronize and update only necessary files, but
>>> note that you may have problems during future commits/updates because of
>>> folders' revisions incompatibilities.
>>>
>>>> Our project recently switched from CVS to SVN, using subversive 0.7.3
>>>> and eclipse 3.4.1. Project is large - ~20000 files. Still, command line
>>>> update from SVN takes 2-3 minutes while updating from eclipse takes 15
>>>> minutes (even if the change is in 1 file). Running "kill -3" on eclipse
>>>> shows that it refreshes all resources after update (not sure, but looks
>>>> like it...). Is there a way to prevent this refresh / make it more
>>>> quick? Even after disabling "Compte deep outgoing state" - still no
>>>> change.
>>>>
>>>> Any help with this is greatly appreciated.
>>>>
>
>
|
|
|
Powered by
FUDForum. Page generated in 0.02362 seconds