}
}
for (int id : columnIds) {
boolean success = false; // setValue(primitiveCategories.get(id), vectors.get(id), recordCount, bytes, delimPositions[id]);
if (!success) {
throw new DrillRuntimeException(String.format("Failed to write value for column %s", selectedColumnNames.get(id)));
}
}
redoRecord = null;
}
while (recordCount < TARGET_RECORD_COUNT && reader.next(key, value)) {
int length = ((Text) value).getLength();
byte[] bytes = ((Text) value).getBytes();
int[] delimPositions = new int[numCols + 1];
delimPositions[0] = -1;
int p = 1;
for (int i = 0; i < length; i++) {
if (bytes[i] == delimiter) {
delimPositions[p++] = i;
}
}
for (int i = 0; i < columnIds.size(); i++) {
int id = columnIds.get(i);
boolean success = false; // setValue(primitiveCategories.get(i), vectors.get(i), recordCount, bytes, delimPositions[id] + 1);
if (!success) {
redoRecord = value;
if (partition != null) populatePartitionVectors(recordCount);
return recordCount;
}
}
recordCount++;
}
if (partition != null) populatePartitionVectors(recordCount);
return recordCount;
} catch (IOException e) {
throw new DrillRuntimeException(e);
}
}