in presto-pulsar/src/main/java/org/apache/pulsar/sql/presto/PulsarRecordCursor.java [568:601]
public void close() {
log.info("Closing cursor record");
if (currentMessage != null) {
currentMessage.release();
}
if (messageQueue != null) {
messageQueue.drain(RawMessage::release);
}
if (entryQueue != null) {
entryQueue.drain(Entry::release);
}
if (deserializeEntries != null) {
deserializeEntries.interrupt();
}
if (this.cursor != null) {
try {
this.cursor.close();
} catch (Exception e) {
log.error(e);
}
}
// set stat for total execution time of split
if (this.metricsTracker != null) {
this.metricsTracker.register_TOTAL_EXECUTION_TIME(System.nanoTime() - startTime);
this.metricsTracker.close();
}
}