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.
Performance tests report that the following list of classes is loaded on NetBeans startup. This is considered as startup regression. Please, don't load these classes. org.netbeans.modules.subversion.client.cli.Commandline org.netbeans.modules.subversion.client.cli.CommandlineClient org.netbeans.modules.subversion.client.cli.CommandlineClient$NotificationHandler org.netbeans.modules.subversion.client.cli.CommandNotificationListener org.netbeans.modules.subversion.client.cli.commands.AddCommand org.netbeans.modules.subversion.client.cli.commands.BlameCommand org.netbeans.modules.subversion.client.cli.commands.CatCommand org.netbeans.modules.subversion.client.cli.commands.CheckoutCommand org.netbeans.modules.subversion.client.cli.commands.CommitCommand org.netbeans.modules.subversion.client.cli.commands.CopyCommand org.netbeans.modules.subversion.client.cli.commands.ImportCommand org.netbeans.modules.subversion.client.cli.commands.InfoCommand org.netbeans.modules.subversion.client.cli.commands.ListCommand org.netbeans.modules.subversion.client.cli.commands.ListPropertiesCommand org.netbeans.modules.subversion.client.cli.commands.LogCommand org.netbeans.modules.subversion.client.cli.commands.MergeCommand org.netbeans.modules.subversion.client.cli.commands.MkdirCommand org.netbeans.modules.subversion.client.cli.commands.MoveCommand org.netbeans.modules.subversion.client.cli.commands.PropertyDelCommand org.netbeans.modules.subversion.client.cli.commands.PropertyGetCommand org.netbeans.modules.subversion.client.cli.commands.PropertySetCommand org.netbeans.modules.subversion.client.cli.commands.RelocateCommand org.netbeans.modules.subversion.client.cli.commands.RemoveCommand org.netbeans.modules.subversion.client.cli.commands.ResolvedCommand org.netbeans.modules.subversion.client.cli.commands.RevertCommand org.netbeans.modules.subversion.client.cli.commands.StatusCommand org.netbeans.modules.subversion.client.cli.commands.SwitchToCommand org.netbeans.modules.subversion.client.cli.commands.UpdateCommand org.netbeans.modules.subversion.client.cli.commands.VersionCommand org.netbeans.modules.subversion.client.cli.SvnCommand org.netbeans.modules.subversion.client.cli.SvnCommand$Arguments
explain please
Performance team has tests to watch new classes added to startup. It is one of the ways to prevent startup regressions. If something inappropriate appears there, we file a bug. Posted to nb-perf, the list can be discussed, but there's no real process around it.
well, and do you also have tests to watch classes which aren't loaded anymore? To be honest, i'm not 100% sure at this moment, but i guess there should be also some which aren't loaded anymore as we replaced the relevant implementation from libs.svnClientAdapter. It would be nice to have few more lists in this issue - something like what was loaded before those classes where added and what's loaded now. A bit more complete picture would be a good starting point for a discussion.
I see, we'll work on list of classes not being loaded anymore. However, I still want to reach a state when no subversion classes are loaded, until there really is .svn folder somewhere.
Created attachment 62402 [details] Proposal for VersioningSystem "proxy" and its registration
1.) doesn't look like this is a regression it's just some another implementation being called on startup -> p3 2.) we will try the suggested patch. thanks for your help
I propose another solution to this. It does not require any API changes or registration workarounds. Subversion module will just delay its main component activation until really needed. This way I can reduce number of subversion classes loaded during startup from 85 to 16. 6 of them are related to the annotation bar (blame.* package) and since I have no file open in editor I think these classes should no be loaded ... editor team should probably investigate this case. Anyway, I will soon get to it and implement the fix on subversion side.
Implemented. 8e8264dab00b
Integrated into 'main-golden', available in NB_Trunk_Production #271 build Changeset: http://hg.netbeans.org/main/rev/8e8264dab00b User: Maros Sandor <msandor@netbeans.org> Log: #136490: Delay subversion initialization
Verified with 20080624