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.
The new VCS cache implementation changes behavior of Refresh Recursively command. After the refresh of statuses itself finishes (invoking CVS STATUS commands), it issues tons of CREATE_FOLDER_IGNORE_LIST commands. On my testing machine, the refreshing took less than 10 minutes but the subsequent CREATE_FOLDER_IGNORE_LIST commands took around an hour, making the IDE unusable during that time. Furthermore discussion with development team revealed that the output of CREATE_FOLDER_IGNORE_LIST commands is thrown away in the case of CVS versioning system.
The ignored status computation can: - be postponed to getStatus(), - bypass command infrastructure or - let on cache clients Postpone to actual getStatus() call is rather trivial. But it's wrong because getStatus() can be called from AWT. Bypass is trivial in CVS case, just let CvsFileAttributeProvider provide additional IgnoreList.ID attribute type and let cache handle it. In other cases there is ignored status stored in local database. All clients modification can be surprisingly easy because many of them do not use getStatus() but IgnoreList.isIgnored(). And it's wrong. They possibly compute already known information.
<-- CvsCreateFolderIgnoreList.java new revision: 1.2.22.2; previous revision: 1.2.22.1 <-- CvsCreateInitialIgnoreList.java new revision: 1.1.206.4; previous revision: 1.1.206.3 <-- CvsFileAttributeProvider.java new revision: 1.1.2.35; previous revision: 1.1.2.34 <-- IgnoreList.java new revision: 1.2.2.9; previous revision: 1.2.2.8 FIXED generic framework bypass for CVS ignore list implemented.
Verified. Now the behavior for CVS is similar to the original trunk behavior.