try {
final List<IteratorSetting> iterators = predicateHandler.getIterators(jobConf, columnMapper);
HiveAccumuloSplit hiveSplit = (HiveAccumuloSplit) inputSplit;
RangeInputSplit rangeSplit = hiveSplit.getSplit();
log.info("Split: " + rangeSplit);
// The RangeInputSplit *should* have all of the necesary information contained in it
// which alleviates us from re-parsing our configuration from the AccumuloStorageHandler
// and re-setting it into the Configuration (like we did in getSplits(...)). Thus, it should
// be unnecessary to re-invoke configure(...)
// ACCUMULO-2962 Iterators weren't getting serialized into the InputSplit, but we can
// compensate because we still have that info.
// Should be fixed in Accumulo 1.5.2 and 1.6.1
if (null == rangeSplit.getIterators()
|| (rangeSplit.getIterators().isEmpty() && !iterators.isEmpty())) {
log.debug("Re-setting iterators on InputSplit due to Accumulo bug.");
rangeSplit.setIterators(iterators);
}
// ACCUMULO-3015 Like the above, RangeInputSplit should have the table name
// but we want it to, so just re-set it if it's null.
if (null == getTableName(rangeSplit)) {