public boolean inputFileChanged() {
    if (!inputFileChecked) {
      currentInputPath = this.ioCxt.getInputPath();
      inputFileChecked = true;
    }
    return lastInputPath == null || !lastInputPath.equals(currentInputPath);
  }
For CombineFileInputFormat, the mapper's input file will be changed on the
fly, and the input file name is passed to jobConf by shims/initNextRecordReader.
If the map local work has any mapping depending on the current
mapper's input file, the work need to clear context and re-initialization
after the input file changed. This is first introduced to process bucket
map join.

@return is the input file changed?
ql/src/java/org/apache/hadoop/hive/ql/exec/mr/ExecMapperContext.java