Buggy code:
, } , new String [ ] { "DAYOFMONTH" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "DAYOFWEEK" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "DAYOFYEAR" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "HOUR" , "{t<seq2seq4repair_space>'16:13:03'}" } , new String [ ] { "MINUTE" , "{t<seq2seq4repair_space>'16:13:03'}" } , new String [ ] { "MONTH" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "MONTHNAME" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "NOW" } , new String [ ] { "QUARTER" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "SECOND" , "{t<seq2seq4repair_space>'16:13:03'}" } , new String [ ] { "TIMESTAMPADD" , "SQL_TSI_DAY" , "7" , "{ts<seq2seq4repair_space>'1995-12-19<seq2seq4repair_space>12:15:54'}" } , new String [ ] { "TIMESTAMPDIFF" , "SQL_TSI_DAY" , "{ts<seq2seq4repair_space>'1995-12-19<seq2seq4repair_space>12:15:54'}" , "{ts<seq2seq4repair_space>'1997-11-02<seq2seq4repair_space>00:15:23'}" } , new String [ ] { "WEEK" , "{d<seq2seq4repair_space>'1995-12-19'}" } , new String [ ] { "YEAR" , "{d<seq2seq4repair_space>'1995-12-19'}" } } ; private static final String [ ] [ ] SYSTEM_FUNCTIONS = new String [ ] [ ] { new String [ ] { "DATABASE" } , new String [ ] { "IFNULL" , "'this'" , "'that'" } , new String [ ] { "USER" } } ; private static final String [ ] [ ] STRING_FUNCTIONS = new String [ ] [ ] { new String [ ] { "ASCII" , "'Yellow'" } , new String [ ] { "CHAR" , "65" } , new String [ ] { "CONCAT" , "'hello'" , "'there'" } , new String [ ] { "DIFFERENCE" , "'Pires'" , "'Piers'" } , new String [ ] { "INSERT" , "'Bill<seq2seq4repair_space>Clinton'" , "4" , "'William'" } , new String [ ] { "LCASE" , "'Fernando<seq2seq4repair_space>Alonso'" } , new String [ ] { "LEFT" , "'Bonjour'" , "3" } , new String [ ] { "LENGTH" , "'four<seq2seq4repair_space>'" } , new String [ ] { "LOCATE" , "'jour'" , "'Bonjour'" } , new String [ ] { "LTRIM" , "'<seq2seq4repair_space>left<seq2seq4repair_space>trim<seq2seq4repair_space>'" } , new String [ ] { "REPEAT" , "'echo'" , "3" } , new String [ ] { "REPLACE" , "'to<seq2seq4repair_space>be<seq2seq4repair_space>or<seq2seq4repair_space>not<seq2seq4repair_space>to<seq2seq4repair_space>be'" , "'be'" , "'England'" } , new String [ ] { "RTRIM" , "'<seq2seq4repair_space>right<seq2seq4repair_space>trim<seq2seq4repair_space>'" } , new String [ ] { "SOUNDEX" , "'Derby'" } , new String [ ] { "SPACE" , "12" } , new String [ ] { "SUBSTRING" , "'Ruby<seq2seq4repair_space>the<seq2seq4repair_space>Rubicon<seq2seq4repair_space>Jeep'" , "10" , "7" } , new String [ ] { "UCASE" , "'Fernando<seq2seq4repair_space>Alonso'" } } ; private boolean modifiedDatabase ; public DatabaseMetaDataTest ( String name ) { } protected void tearDown ( ) throws Exception { } public static Test suite ( ) { } private final DatabaseMetaData getDMD ( ) throws SQLException { } public void testDetermineFeatureSupport ( ) throws SQLException { } public void testDataSourceLimits ( ) throws SQLException { } public void testMiscellaneous ( ) throws SQLException { } public void testVersionInfo ( ) throws SQLException { } public void testGetURL ( ) throws SQLException { } public void testIdentifierStorage ( ) throws SQLException { } public void testNullInfo ( ) throws SQLException { } public void testSQLKeywords ( ) throws SQLException { } public void testConnectionSpecific ( ) throws SQLException { } public void testConstants ( ) { } public void testUnimplementedSQLObjectAttributes ( ) throws SQLException { } private static final String [ ] IDS = new String [ ] { "one_dmd_test" , "TWO_dmd_test" , "ThReE_dmd_test" , "\"four_dmd_test\"" , "\"FIVE_dmd_test\"" , "\"sIx_dmd_test\"" } ; private static final String [ ] BUILTIN_SCHEMAS = new String [ ] { "APP" , "NULLID" , "SQLJ" , "SYS" , "SYSCAT" , "SYSCS_DIAG" , "SYSCS_UTIL" , "SYSFUN" , "SYSIBM" , "SYSPROC" , "SYSSTAT" } ; public static String getStoredIdentifier ( String sqlIdentifier ) { } public void testGetSchemasNoModify ( ) throws SQLException { } public void testGetSchemasModify ( ) throws SQLException { } private void createSchemasForTests ( ) throws SQLException { } public static void checkSchemas ( ResultSet rs , String [ ] userExpected ) throws SQLException { } private static void checkSchemasShape ( ResultSet rs ) throws SQLException { } private ResultSet getDMDTables ( DatabaseMetaData dmd , String catalog , String schema , String table , String [ ] tableTypes ) throws IOException , SQLException { } public void testGetTablesNoModify ( ) throws IOException , SQLException { } public void testGetTablesModify ( ) throws IOException , SQLException { } private void checkGetTablesODBC ( String catalog , String schema , String table , String [ ] tableTypes ) throws IOException , SQLException { } private int createTablesForTest ( boolean skipXML ) throws SQLException { } public void testGetColumnsNoModify ( ) throws SQLException { } public void testGetColumns ( ) throws SQLException { } private void crossCheckGetColumnsAndResultSetMetaData ( ResultSet rs ) throws SQLException { } public static void crossCheckGetColumnRowAndResultSetMetaData ( ResultSet rs , ResultSetMetaData rsmdt ) throws SQLException { } public void testTableTypes ( ) throws SQLException { } public void testGetTypeInfo ( ) throws SQLException { } private void checkColumnsShape ( ResultSet rs ) throws SQLException { } private void checkTablesShape ( ResultSet rs ) throws SQLException { } private void checkCatalogsShape ( ResultSet rs ) throws SQLException { } private static void checkVersionColumnsShape ( ResultSet rs ) throws SQLException { } public static void assertMetaDataResultSet ( ResultSet rs , String [ ] columnNames , int [ ] columnTypes , boolean [ ] nullability ) throws SQLException { } public void testNumericFunctions ( ) throws SQLException { } public void testStringFunctions ( ) throws SQLException { } public void testTimeDataFunctions ( ) throws SQLException { } public void testSystemFunctions ( ) throws SQLException { } private void escapedFunctions ( String [ ] [ ] specList , String metaDataList ) throws SQLException { } private void executeEscaped ( String [ ] specDetails ) throws SQLException { } public static List getSQLTypes ( Connection conn ) throws SQLException { } public static int getJDBCType ( String type ) { if ( "SMALLINT" . equals ( type ) ) return Types . SMALLINT ; if ( ( "INTEGER" . equals ( type ) ) || ( "INT" . equals ( type ) ) ) return Types . INTEGER ; if ( "BIGINT" . equals ( type ) ) return Types . BIGINT ; if ( ( type . equals ( "FLOAT" ) ) || ( type . startsWith ( "FLOAT(" ) ) ) return Types . FLOAT ; if ( type . equals ( "REAL" ) ) return Types . REAL ; if ( ( "DOUBLE" . equals ( type ) ) || ( "DOUBLE<seq2seq4repair_space>PRECISION" . equals ( type ) ) ) <START_BUG> return Types . INTEGER ; <END_BUG>

Fix:
return Types . DOUBLE ;