OndroMih opened a new pull request, #9304:
URL: https://github.com/apache/netbeans/pull/9304

   Use IndexDiffFilter in StatusCommand to skip clean files
   
   JGit's TreeWalk in StatusCommand previously visited every file in the 
working tree without a diff-pruning filter, causing it to call 
WorkingTreeIterator.isModified() (which may compute SHA1 content hashes for 
racily-clean files) for all tracked files on every status scan.
   
   Replace the plain PathFilterGroup-only filter with IndexDiffFilter, which 
first compares HEAD vs index using fast object-id equality, and only falls back 
to the more expensive working-tree comparison for files where a difference is 
actually possible. Path filters are combined with IndexDiffFilter via 
AndTreeFilter when present.
   
   On a Eclipe GlassFish repository with ~380k tracked files this reduces the 
time to populate the commit dialog from ~5 seconds to ~0.5 seconds.
   
   On Apache Netbeans repository, this reduces the time from about 17 seconds 
to about 5 seconds.
   
   
   ### PR approval and merge checklist:
   
   1. [ ] Was this PR [correctly 
labeled](https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=240884239#PRsandYouAreviewerGuide-PRtriggeredCIJobs(conditionalCIpipeline)),
 did the right tests run? When did they run?
   2. [ ] Is this PR 
[squashed](https://cwiki.apache.org/confluence/display/NETBEANS/git%3A+squash+and+merge)?
   3. [ ] Are author name / email address correct? Are 
[co-authors](https://docs.github.com/en/pull-requests/committing-changes-to-your-project/creating-and-editing-commits/creating-a-commit-with-multiple-authors#creating-co-authored-commits-on-the-command-line)
 correctly listed? Do the commit messages need updates?
   3. [ ] Does the PR title and description still fit after the Nth iteration? 
Is the description sufficient to appear in the release notes?
   
   If this PR targets the delivery branch: [don't 
merge](https://cwiki.apache.org/confluence/display/NETBEANS/Pull+requests+for+delivery).
 ([full wiki 
article](https://cwiki.apache.org/confluence/display/NETBEANS/PRs+and+You+-+A+reviewer+Guide))
   
   </details>


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

For further information about the NetBeans mailing lists, visit:
https://cwiki.apache.org/confluence/display/NETBEANS/Mailing+lists

Reply via email to