/** * test splitters from DataDrivenDBInputFormat. For different data types may * be different splitter */ @Test(timeout = 10000) public void testDataDrivenDBInputFormatSplitter() { DataDrivenDBInputFormat<NullDBWritable> format = new DataDrivenDBInputFormat<NullDBWritable>(); testCommonSplitterTypes(format); assertEquals(DateSplitter.class, format.getSplitter(Types.TIMESTAMP) .getClass()); assertEquals(DateSplitter.class, format.getSplitter(Types.DATE).getClass()); assertEquals(DateSplitter.class, format.getSplitter(Types.TIME).getClass()); }
private void testCommonSplitterTypes( DataDrivenDBInputFormat<NullDBWritable> format) { assertEquals(BigDecimalSplitter.class, format.getSplitter(Types.DECIMAL) .getClass()); assertEquals(BigDecimalSplitter.class, format.getSplitter(Types.NUMERIC) .getClass()); assertEquals(BooleanSplitter.class, format.getSplitter(Types.BOOLEAN) .getClass()); assertEquals(BooleanSplitter.class, format.getSplitter(Types.BIT) .getClass()); assertEquals(IntegerSplitter.class, format.getSplitter(Types.BIGINT) .getClass()); assertEquals(IntegerSplitter.class, format.getSplitter(Types.TINYINT) .getClass()); assertEquals(IntegerSplitter.class, format.getSplitter(Types.SMALLINT) .getClass()); assertEquals(IntegerSplitter.class, format.getSplitter(Types.INTEGER) .getClass()); assertEquals(FloatSplitter.class, format.getSplitter(Types.DOUBLE) .getClass()); assertEquals(FloatSplitter.class, format.getSplitter(Types.REAL).getClass()); assertEquals(FloatSplitter.class, format.getSplitter(Types.FLOAT) .getClass()); assertEquals(TextSplitter.class, format.getSplitter(Types.LONGVARCHAR) .getClass()); assertEquals(TextSplitter.class, format.getSplitter(Types.CHAR).getClass()); assertEquals(TextSplitter.class, format.getSplitter(Types.VARCHAR) .getClass()); assertNull(format.getSplitter(Types.BINARY));
/** * @return the DBSplitter implementation to use to divide the table/query into InputSplits. */ @Override protected DBSplitter getSplitter(int sqlDataType) { switch (sqlDataType) { case Types.DATE: case Types.TIME: case Types.TIMESTAMP: return new OracleDateSplitter(); default: return super.getSplitter(sqlDataType); } }
/** * @return the DBSplitter implementation to use to divide the table/query into InputSplits. */ @Override protected DBSplitter getSplitter(int sqlDataType) { switch (sqlDataType) { case Types.DATE: case Types.TIME: case Types.TIMESTAMP: return new OracleDateSplitter(); default: return super.getSplitter(sqlDataType); } }
/** * @return the DBSplitter implementation to use to divide the table/query into InputSplits. */ @Override protected DBSplitter getSplitter(int sqlDataType) { switch (sqlDataType) { case Types.DATE: case Types.TIME: case Types.TIMESTAMP: return new OracleDateSplitter(); default: return super.getSplitter(sqlDataType); } }
/** * @return the DBSplitter implementation to use to divide the table/query into InputSplits. */ @Override protected DBSplitter getSplitter(int sqlDataType) { switch (sqlDataType) { case Types.DATE: case Types.TIME: case Types.TIMESTAMP: return new OracleDateSplitter(); default: return super.getSplitter(sqlDataType); } }
/** * @return the DBSplitter implementation to use to divide the table/query into InputSplits. */ @Override protected DBSplitter getSplitter(int sqlDataType) { switch (sqlDataType) { case Types.DATE: case Types.TIME: case Types.TIMESTAMP: return new OracleDateSplitter(); default: return super.getSplitter(sqlDataType); } }
DBSplitter splitter = getSplitter(sqlDataType); if (null == splitter) { throw new IOException("Unknown SQL data type: " + sqlDataType);
DBSplitter splitter = getSplitter(sqlDataType); if (null == splitter) { throw new IOException("Unknown SQL data type: " + sqlDataType);
DBSplitter splitter = getSplitter(sqlDataType); if (null == splitter) { throw new IOException("Unknown SQL data type: " + sqlDataType);
DBSplitter splitter = getSplitter(sqlDataType); if (null == splitter) { throw new IOException("Unknown SQL data type: " + sqlDataType);
DBSplitter splitter = getSplitter(sqlDataType); if (null == splitter) { throw new IOException("Unknown SQL data type: " + sqlDataType);