]> source.dussan.org Git - jgit.git/commitdiff
Remove BitmapRevFilter.getCountOfLoadedCommits 29/59629/2
authorJonathan Nieder <jrn@google.com>
Wed, 4 Nov 2015 05:42:28 +0000 (21:42 -0800)
committerJonathan Nieder <jrn@google.com>
Thu, 5 Nov 2015 20:40:13 +0000 (12:40 -0800)
The count of loaded commits is equal to the number of commits returned
by the walk.  Simplify BitmapRevFilter by counting them in the caller.

Change-Id: Ia95da47831d9e89d6f8068470ec4529aaabfa7dd

org.eclipse.jgit/src/org/eclipse/jgit/internal/storage/pack/PackWriterBitmapWalker.java

index debb2f2abc18e2b415b6c468317d060170f878dc..cd18a9c5cd136cc47f422ebd182bc106e9934914 100644 (file)
@@ -116,7 +116,15 @@ final class PackWriterBitmapWalker {
                        while (walker.next() != null) {
                                // Iterate through all of the commits. The BitmapRevFilter does
                                // the work.
+                               //
+                               // filter.include returns true for commits that do not have
+                               // a bitmap in bitmapIndex and are not reachable from a
+                               // bitmap in bitmapIndex encountered earlier in the walk.
+                               // Thus the number of commits returned by next() measures how
+                               // much history was traversed without being able to make use
+                               // of bitmaps.
                                pm.update(1);
+                               countOfBitmapIndexMisses++;
                        }
 
                        RevObject ro;
@@ -124,7 +132,6 @@ final class PackWriterBitmapWalker {
                                bitmapResult.add(ro, ro.getType());
                                pm.update(1);
                        }
-                       countOfBitmapIndexMisses += filter.getCountOfLoadedCommits();
                }
 
                return bitmapResult;
@@ -154,14 +161,11 @@ final class PackWriterBitmapWalker {
        }
 
        static abstract class BitmapRevFilter extends RevFilter {
-               private long countOfLoadedCommits;
-
                protected abstract boolean load(RevCommit cmit);
 
                @Override
                public final boolean include(RevWalk walker, RevCommit cmit) {
                        if (load(cmit)) {
-                               countOfLoadedCommits++;
                                return true;
                        }
                        for (RevCommit p : cmit.getParents())
@@ -178,9 +182,5 @@ final class PackWriterBitmapWalker {
                public final boolean requiresCommitBody() {
                        return false;
                }
-
-               long getCountOfLoadedCommits() {
-                       return countOfLoadedCommits;
-               }
        }
 }