diff --git a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java
index 0227153..c6a65ec 100644
--- a/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java
+++ b/java/com/google/gerrit/server/query/change/ChangeQueryBuilder.java
@@ -775,11 +775,20 @@
         return new RegexDirectoryPredicate(directory);
       }
 
-      return new DirectoryPredicate(directory);
+      DirectoryPredicate rootPredicate = new DirectoryPredicate(directory);
+      if (isRootAndRecursive(directory)) {
+        RegexDirectoryPredicate recursivePredicate = new RegexDirectoryPredicate("^.*");
+        return Predicate.or(rootPredicate, recursivePredicate);
+      }
+      return rootPredicate;
     }
     throw new QueryParseException("'directory' operator is not supported by change index version");
   }
 
+  private static boolean isRootAndRecursive(String directory) {
+    return directory.isEmpty() || directory.equals("/");
+  }
+
   @Operator
   public Predicate<ChangeData> label(String name)
       throws QueryParseException, IOException, ConfigInvalidException {
