@Explain(displayName = "filter predicates")
  @Signature
  public Map<String, String> getFiltersStringMap() {
    if (getFilters() == null || getFilters().size() == 0) {
      return null;
    }

    LinkedHashMap<String, String> ret = new LinkedHashMap<>();
    boolean filtersPresent = false;

    for (Map.Entry<Byte, List<ExprNodeDesc>> ent : getFilters().entrySet()) {
      StringBuilder sb = new StringBuilder();
      boolean first = true;
      if (ent.getValue() != null) {
        if (ent.getValue().size() != 0) {
          filtersPresent = true;
        }
        for (ExprNodeDesc expr : ent.getValue()) {
          if (!first) {
            sb.append(" ");
          }

          first = false;
          sb.append("{");
          sb.append(expr == null ? "NULL" : expr.getExprString());
          sb.append("}");
        }
      }
      ret.put(String.valueOf(ent.getKey()), sb.toString());
    }

    if (filtersPresent) {
      return ret;
    } else {
      return null;
    }
  }
Get the string representation of filters.

Returns null if they are no filters.

@return Map from alias to filters on the alias.
ql/src/java/org/apache/hadoop/hive/ql/plan/JoinDesc.java