src/main/java/org/apache/hadoop/hdfs/server/namenode/JavaStreamQueryEngine.java
@Override // QueryEngine
  public Stream<INode> combinedFilterToStream(
      Collection<INode> inodes, String[] filters, String[] filterOps) {
    if (filters == null || filterOps == null || filters.length == 0 || filterOps.length == 0) {
      return inodes.parallelStream();
    }
    long start = System.currentTimeMillis();
    try {
      return produceFilteredStream(inodes, filters, filterOps);
    } finally {
      long end = System.currentTimeMillis();
      if (LOG.isDebugEnabled()) {
        LOG.debug(
            "Settings filters: {} with filterOps: {} took: {} ms.",
            Arrays.asList(filters),
            Arrays.asList(filterOps),
            (end - start));
      }
    }
  }
/**
   * Optimized filter method for filtering down a set of INodes to a smaller subset but returns a
   * Stream for further processing.
   *
   * @param inodes the main inode set to work on
   * @param filters set of filters to use
   * @param filterOps matching length set of filter operands and operators
   * @return the stream of filtered inodes
   */
Optimized filter method for filtering down a set of INodes to a smaller subset but returns a
Stream for further processing.

@param inodes the main inode set to work on
@param filters set of filters to use
@param filterOps matching length set of filter operands and operators
@return the stream of filtered inodes
Optimized filter method for filtering down a set of INodes to a smaller subset but returns a Stream for further processing . @param inodes the main inode set to work on @param filters set of filters to use @param filterOps matching length set of filter operands and operators @return the stream of filtered inodes
@Override 
  public Stream<INode> combinedFilterToStream(
      Collection<INode> inodes, String[] filters, String[] filterOps) {
    if (filters == null || filterOps == null || filters.length == 0 || filterOps.length == 0) {
      return inodes.parallelStream();
    }
    long start = System.currentTimeMillis();
    try {
      return produceFilteredStream(inodes, filters, filterOps);
    } finally {
      long end = System.currentTimeMillis();
      if (LOG.isDebugEnabled()) {
        LOG.debug(
            "Settings filters: {} with filterOps: {} took: {} ms.",
            Arrays.asList(filters),
            Arrays.asList(filterOps),
            (end - start));
      }
    }
  }
@ Override public Stream < INode > combinedFilterToStream ( Collection < INode > inodes , String [ ] filters , String [ ] filterOps ) { if ( filters == null || filterOps == null || filters . length == 0 || filterOps . length == 0 ) { return inodes . parallelStream ( ) ; } long start = System . currentTimeMillis ( ) ; try { return produceFilteredStream ( inodes , filters , filterOps ) ; } finally { long end = System . currentTimeMillis ( ) ; if ( LOG . isDebugEnabled ( ) ) { LOG . debug ( "Settings filters: {} with filterOps: {} took: {} ms." , Arrays . asList ( filters ) , Arrays . asList ( filterOps ) , ( end - start ) ) ; } } }
Optimized filter method for filtering down a set of INodes to a smaller subset but returns a
 Stream for further processing.
Optimized filter method for filtering down a set of INodes to a smaller subset but returns a Stream for further processing .
// QueryEngine