This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 94977 - Check for version of 'svn' executable slows down startup
Summary: Check for version of 'svn' executable slows down startup
Status: RESOLVED FIXED
Alias: None
Product: versioncontrol
Classification: Unclassified
Component: Code (show other bugs)
Version: 6.x
Hardware: All All
: P3 blocker (vote)
Assignee: issues@versioncontrol
URL:
Keywords: PERFORMANCE
Depends on:
Blocks:
 
Reported: 2007-02-08 15:39 UTC by _ rkubacki
Modified: 2008-09-02 18:27 UTC (History)
1 user (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description _ rkubacki 2007-02-08 15:39:58 UTC
Currently the check if there is a usable version of svn available is during
usual startup performed when window system is loaded and some top component is
annotating its name - filesystems forces init of versioning and this calls to
subversion init code where external process is started and the IDE waits for its
output and result. 

I do not know if there is a better moment when to do this task but it would be
much better to run this check asynchronously so that usual startup can proceed.
This can eliminate a period of no activity during startup when there is no
thread that can run (init of winsys is mostly singlethreaded activity).
Comment 1 _ rkubacki 2007-03-13 14:36:31 UTC
The profiler expreriment is still on my disk
(/export/home/radim/analyzer/NetBeans.8.er) and the call chain that initializes
subversion is roughly:

EDT main loop
-> WinSys loading
 -> settings support reading the file
  -> top component deserialization
   -> CloneableEditor.readExternal
    -> CloneableEditor.updateName
     -> DataNode.getHhtmlDisplayName
      -> fs annotation 
       -> VersioningManager init
        -> SubversionVCS.<init> called from lookup

It means this should be visible when there is some editor opened on startup.
Comment 2 Tomas Stupka 2008-02-27 16:25:10 UTC
> ... it would be much better to run this check asynchronously so that usual startup can proceed
versioncontrol has to find out which vcs module (if any) owns the file. Obviously, to find this out the vcs modules have
to be initialized. Proceeding asynchronously and firing an event for the relevant files later probably could work with
the annotations, even if it's still questionable what would be the resulting performance gain. The more interesting 
question here is how to handle events in the filesystem interceptor. 

reassigning to versioncontrol as this isn't a specific svn 
Comment 3 Peter Pis 2008-03-07 05:42:27 UTC
Is this issue still INCOMPLETE? Is there anything that should be added to this issue?
Comment 4 Tomas Stupka 2008-03-07 07:26:21 UTC
> Is this issue still INCOMPLETE? 
yes

> Is there anything that should be added to this issue?
a reasonable working solution:)
Comment 5 Tomas Stupka 2008-09-02 18:27:40 UTC
file owner check made without svn client. client isn't initialized before first user action. fixed.