static ArrayList<String> toColumnNames(List<FieldNode> columns) {
    ArrayList<String> names = new ArrayList<>();
    for (FieldNode fn : columns) {
      names.add(fn.getFieldName());
    }
    return names;
  }
If the input filter operator has direct child(ren) which are union operator,
and the filter's column is not the same as union's
create select operator between them. The select operator has same number of columns as
pruned child operator.

@param curOp
         The filter operator which need to handle children.
@throws SemanticException
ql/src/java/org/apache/hadoop/hive/ql/optimizer/ColumnPrunerProcCtx.java