diff --git a/launchable/jar/exe_deploy.jar b/launchable/jar/exe_deploy.jar index fea8b75d9..1f1a8ea77 100755 Binary files a/launchable/jar/exe_deploy.jar and b/launchable/jar/exe_deploy.jar differ diff --git a/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java b/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java index 08ab9bb5a..e94b6452c 100644 --- a/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java +++ b/src/main/java/com/launchableinc/ingest/commits/CommitGraphCollector.java @@ -434,10 +434,14 @@ public void transfer(Collection advertised, Consumer commitR // and it drastically cuts down the initial commit consumption of a new large repository. // ... except we do want to capture the head commit, as that makes it easier to spot integration problems // when `record build` and `record commit` are separated. + + // two RevFilters are order sensitive. This is because CommitTimeRevFilter.after doesn't return false to + // filter things out, it throws StopWalkException to terminate the walk, never giving a chance for the other + // branch of OR to be evaluated. So we need to put ObjectRevFilter first. walk.setRevFilter( OrRevFilter.create( - CommitTimeRevFilter.after(System.currentTimeMillis() - TimeUnit.DAYS.toMillis(maxDays)), - new ObjectRevFilter(headId))); + new ObjectRevFilter(headId), + CommitTimeRevFilter.after(System.currentTimeMillis() - TimeUnit.DAYS.toMillis(maxDays)))); for (ObjectId id : advertised) { try {