// get the prescribed individual input format from the underlying scheme so it can be used by CombinedInputFormat
String individualInputFormat = conf.get( "mapred.input.format.class" );
if( individualInputFormat == null )
throw new TapException( "input format is missing from the underlying scheme" );
if( individualInputFormat.equals( CombinedInputFormat.class.getName() ) &&
conf.get( CombineFileRecordReaderWrapper.INDIVIDUAL_INPUT_FORMAT ) == null )
throw new TapException( "the input format class is already the combined input format but the underlying input format is missing" );
// if safe mode is on (default) throw an exception if the InputFormat is not a FileInputFormat, otherwise log a
// warning and don't use the CombineFileInputFormat
boolean safeMode = getCombinedInputSafeMode( conf );
if( !FileInputFormat.class.isAssignableFrom( conf.getClass( "mapred.input.format.class", null ) ) )
{
if( safeMode )
throw new TapException( "input format must be of type org.apache.hadoop.mapred.FileInputFormat, got: " + individualInputFormat );
else
LOG.warn( "not combining input splits with CombineFileInputFormat, {} is not of type org.apache.hadoop.mapred.FileInputFormat.", individualInputFormat );
}
else
{