Source:
private static byte[] getRowKey(TableDescriptor td, ConglomerateDescriptor index, ExecRow execRow, String splitKey, String columnDelimiter, String characterDelimiter, String timeFormat, String dateFormat, String timestampFormat) throws Exception{ EmbedConnection defaultConn=(EmbedConnection) SpliceAdmin.getDefaultConn(); Activation lastActivation=defaultConn.getLanguageConnection().getLastActivation(); LanguageConnectionContext lcc = lastActivation.getLanguageConnectionContext(); CsvPreference preference = createCsvPreference(columnDelimiter, characterDelimiter); Reader reader = new StringReader(splitKey); List<Integer> valueSizeHints = new ArrayList<>(execRow.nColumns()); for(DataValueDescriptor dvd : execRow.getRowArray()) { valueSizeHints.add(dvd.estimateMemoryUsage()); } boolean quotedEmptyIsNull = !PropertyUtil.getCachedDatabaseBoolean( lcc, Property.SPLICE_DB2_IMPORT_EMPTY_STRING_COMPATIBLE); boolean preserveLineEndings = !PropertyUtil.getCachedDatabaseBoolean( lcc, Property.PRESERVE_LINE_ENDINGS); CsvParserConfig config = new CsvParserConfig(preference) .oneLineRecord(false).quotedEmptyIsNull(quotedEmptyIsNull).preserveLineEndings(preserveLineEndings); MutableCSVTokenizer tokenizer = new MutableCSVTokenizer(reader, config, EngineDriver.driver().getConfiguration().getImportCsvScanThreshold(), valueSizeHints); tokenizer.setLine(splitKey); List<String> read=tokenizer.read(); BooleanList quotedColumns=tokenizer.getQuotedColumns(); ExecRow dataRow = FileFunction.getRow(read, quotedColumns, null, execRow, new GregorianCalendar(), timeFormat, dateFormat, timestampFormat, null, null, null); DataHash dataHash = getEncoder(td, index, execRow); dataHash.setRow(dataRow); byte[] rowKey = dataHash.encode(); return rowKey; }

Target:
private static byte[] getRowKey(TableDescriptor td, ConglomerateDescriptor index, ExecRow execRow, String splitKey, String columnDelimiter, String characterDelimiter, String timeFormat, String dateFormat, String timestampFormat) throws Exception{ EmbedConnection defaultConn=(EmbedConnection) SpliceAdmin.getDefaultConn(); Activation lastActivation=defaultConn.getLanguageConnection().getLastActivation(); LanguageConnectionContext lcc = lastActivation.getLanguageConnectionContext(); CsvPreference preference = createCsvPreference(columnDelimiter, characterDelimiter); Reader reader = new StringReader(splitKey); List<Integer> valueSizeHints = new ArrayList<>(execRow.nColumns()); for(DataValueDescriptor dvd : execRow.getRowArray()) { valueSizeHints.add(dvd.estimateMemoryUsage()); } boolean quotedEmptyIsNull = !PropertyUtil.getCachedDatabaseBoolean( lcc, Property.SPLICE_DB2_IMPORT_EMPTY_STRING_COMPATIBLE); boolean preserveLineEndings = PropertyUtil.getCachedDatabaseBoolean( lcc, Property.PRESERVE_LINE_ENDINGS); CsvParserConfig config = new CsvParserConfig(preference) .oneLineRecord(false).quotedEmptyIsNull(quotedEmptyIsNull).preserveLineEndings(preserveLineEndings); MutableCSVTokenizer tokenizer = new MutableCSVTokenizer(reader, config, EngineDriver.driver().getConfiguration().getImportCsvScanThreshold(), valueSizeHints); tokenizer.setLine(splitKey); List<String> read=tokenizer.read(); BooleanList quotedColumns=tokenizer.getQuotedColumns(); ExecRow dataRow = FileFunction.getRow(read, quotedColumns, null, execRow, new GregorianCalendar(), timeFormat, dateFormat, timestampFormat, null, null, null); DataHash dataHash = getEncoder(td, index, execRow); dataHash.setRow(dataRow); byte[] rowKey = dataHash.encode(); return rowKey; }