Use PathFilterGroup in LogServlet PathFilterGroup has some short-circuiting behavior that PathFilter does not. This cuts time for log of Chromium's chrome/browser/chrome_browser_main.cc from 12s to 8s on my workstation. This is low-hanging fruit. JGit's log still performs very badly; the same file logs in under a second with C git. Change-Id: Ief0f81e87273b95fabe476418cda6b3c5851f449
diff --git a/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java b/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java index e442be5..d904d39 100644 --- a/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java +++ b/gitiles-servlet/src/main/java/com/google/gitiles/LogServlet.java
@@ -43,7 +43,7 @@ import org.eclipse.jgit.revwalk.RevTag; import org.eclipse.jgit.revwalk.RevWalk; import org.eclipse.jgit.treewalk.filter.AndTreeFilter; -import org.eclipse.jgit.treewalk.filter.PathFilter; +import org.eclipse.jgit.treewalk.filter.PathFilterGroup; import org.eclipse.jgit.treewalk.filter.TreeFilter; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -197,7 +197,7 @@ } if (!Strings.isNullOrEmpty(view.getPathPart())) { walk.setTreeFilter(AndTreeFilter.create( - PathFilter.create(view.getPathPart()), + PathFilterGroup.createFromStrings(view.getPathPart()), TreeFilter.ANY_DIFF)); } return walk;