@Override
  public KeyedTableScan filter(Expression expr) {
    if (expression == null) {
      expression = expr;
    } else {
      expression = Expressions.and(expr, expression);
    }
    return this;
  }
Config this scan with filter by the {@link Expression}. For Change Table, only filters related
to partition will take effect.

@param expr a filter expression
@return scan based on this with results filtered by the expression
amoro-format-iceberg/src/main/java/org/apache/amoro/scan/BasicKeyedTableScan.java