in paimon-trino-common/src/main/java/org/apache/paimon/trino/TrinoPageSourceBase.java [127:149]
private Page nextPage() throws IOException {
RecordIterator<InternalRow> batch = reader.readBatch();
if (batch == null) {
isFinished = true;
return null;
}
InternalRow row;
while ((row = batch.next()) != null) {
pageBuilder.declarePosition();
for (int i = 0; i < columnTypes.size(); i++) {
BlockBuilder output = pageBuilder.getBlockBuilder(i);
appendTo(
columnTypes.get(i),
logicalTypes.get(i),
InternalRowUtils.get(row, i, logicalTypes.get(i)),
output);
}
}
batch.releaseBatch();
Page page = pageBuilder.build();
pageBuilder.reset();
return page;
}