This is an automated email from the ASF dual-hosted git repository.

jackie pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pinot.git


The following commit(s) were added to refs/heads/master by this push:
     new 6d0ac8b182 Add Default RecordReader Next Implementation (#14108)
6d0ac8b182 is described below

commit 6d0ac8b182511bbef0363b23475629a3b3b17d66
Author: ashishjayamohan <[email protected]>
AuthorDate: Wed Oct 2 18:28:53 2024 -0700

    Add Default RecordReader Next Implementation (#14108)
---
 .../connector/spark/v3/datasource/PinotBufferedRecordReader.scala | 2 +-
 .../src/main/java/org/apache/pinot/core/minion/SegmentPurger.java | 5 -----
 .../segment/processing/genericrow/GenericRowFileRecordReader.java | 5 -----
 .../apache/pinot/plugin/inputformat/avro/AvroRecordReader.java    | 6 ------
 .../org/apache/pinot/plugin/inputformat/csv/CSVRecordReader.java  | 6 ------
 .../apache/pinot/plugin/inputformat/json/JSONRecordReader.java    | 5 -----
 .../org/apache/pinot/plugin/inputformat/orc/ORCRecordReader.java  | 6 ------
 .../pinot/plugin/inputformat/parquet/ParquetAvroRecordReader.java | 6 ------
 .../plugin/inputformat/parquet/ParquetNativeRecordReader.java     | 6 ------
 .../pinot/plugin/inputformat/parquet/ParquetRecordReader.java     | 6 ------
 .../pinot/plugin/inputformat/protobuf/ProtoBufRecordReader.java   | 6 ------
 .../pinot/plugin/inputformat/thrift/ThriftRecordReader.java       | 6 ------
 .../local/segment/readers/CompactedPinotSegmentRecordReader.java  | 6 ------
 .../segment/local/segment/readers/GenericRowRecordReader.java     | 5 -----
 .../local/segment/readers/MultiplePinotSegmentRecordReader.java   | 8 ++------
 .../segment/local/segment/readers/PinotSegmentRecordReader.java   | 5 -----
 .../main/java/org/apache/pinot/spi/data/readers/RecordReader.java | 8 ++++----
 17 files changed, 7 insertions(+), 90 deletions(-)

diff --git 
a/pinot-connectors/pinot-spark-3-connector/src/main/scala/org/apache/pinot/connector/spark/v3/datasource/PinotBufferedRecordReader.scala
 
b/pinot-connectors/pinot-spark-3-connector/src/main/scala/org/apache/pinot/connector/spark/v3/datasource/PinotBufferedRecordReader.scala
index 842401e0d3..887ae4c88c 100644
--- 
a/pinot-connectors/pinot-spark-3-connector/src/main/scala/org/apache/pinot/connector/spark/v3/datasource/PinotBufferedRecordReader.scala
+++ 
b/pinot-connectors/pinot-spark-3-connector/src/main/scala/org/apache/pinot/connector/spark/v3/datasource/PinotBufferedRecordReader.scala
@@ -47,7 +47,7 @@ class PinotBufferedRecordReader extends RecordReader {
     readCursor < recordBuffer.size()
   }
 
-  def next(): GenericRow = {
+  override def next(): GenericRow = {
     readCursor += 1
     recordBuffer.get(readCursor - 1)
   }
diff --git 
a/pinot-core/src/main/java/org/apache/pinot/core/minion/SegmentPurger.java 
b/pinot-core/src/main/java/org/apache/pinot/core/minion/SegmentPurger.java
index 2ab65bbe9c..b69c046855 100644
--- a/pinot-core/src/main/java/org/apache/pinot/core/minion/SegmentPurger.java
+++ b/pinot-core/src/main/java/org/apache/pinot/core/minion/SegmentPurger.java
@@ -183,11 +183,6 @@ public class SegmentPurger {
       }
     }
 
-    @Override
-    public GenericRow next() {
-      return next(new GenericRow());
-    }
-
     @Override
     public GenericRow next(GenericRow reuse) {
       if (_recordPurger == null) {
diff --git 
a/pinot-core/src/main/java/org/apache/pinot/core/segment/processing/genericrow/GenericRowFileRecordReader.java
 
b/pinot-core/src/main/java/org/apache/pinot/core/segment/processing/genericrow/GenericRowFileRecordReader.java
index f7ecd0f286..12e34fada8 100644
--- 
a/pinot-core/src/main/java/org/apache/pinot/core/segment/processing/genericrow/GenericRowFileRecordReader.java
+++ 
b/pinot-core/src/main/java/org/apache/pinot/core/segment/processing/genericrow/GenericRowFileRecordReader.java
@@ -104,11 +104,6 @@ public class GenericRowFileRecordReader implements 
RecordReader {
     return _nextRowId < _endRowId;
   }
 
-  @Override
-  public GenericRow next() {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse) {
     int rowId = _sortedRowIds != null ? _sortedRowIds[_nextRowId++] : 
_nextRowId++;
diff --git 
a/pinot-plugins/pinot-input-format/pinot-avro-base/src/main/java/org/apache/pinot/plugin/inputformat/avro/AvroRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-avro-base/src/main/java/org/apache/pinot/plugin/inputformat/avro/AvroRecordReader.java
index 9579735821..dd9ab6d375 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-avro-base/src/main/java/org/apache/pinot/plugin/inputformat/avro/AvroRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-avro-base/src/main/java/org/apache/pinot/plugin/inputformat/avro/AvroRecordReader.java
@@ -61,12 +61,6 @@ public class AvroRecordReader implements RecordReader {
     return _avroReader.hasNext();
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-csv/src/main/java/org/apache/pinot/plugin/inputformat/csv/CSVRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-csv/src/main/java/org/apache/pinot/plugin/inputformat/csv/CSVRecordReader.java
index daf6041a09..636574a19b 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-csv/src/main/java/org/apache/pinot/plugin/inputformat/csv/CSVRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-csv/src/main/java/org/apache/pinot/plugin/inputformat/csv/CSVRecordReader.java
@@ -207,12 +207,6 @@ public class CSVRecordReader implements RecordReader {
     return _iterator.hasNext();
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-json/src/main/java/org/apache/pinot/plugin/inputformat/json/JSONRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-json/src/main/java/org/apache/pinot/plugin/inputformat/json/JSONRecordReader.java
index b8ed886074..6c739fd501 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-json/src/main/java/org/apache/pinot/plugin/inputformat/json/JSONRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-json/src/main/java/org/apache/pinot/plugin/inputformat/json/JSONRecordReader.java
@@ -77,11 +77,6 @@ public class JSONRecordReader implements RecordReader {
     return _iterator.hasNext();
   }
 
-  @Override
-  public GenericRow next() {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse) {
     Map<String, Object> record = _iterator.next();
diff --git 
a/pinot-plugins/pinot-input-format/pinot-orc/src/main/java/org/apache/pinot/plugin/inputformat/orc/ORCRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-orc/src/main/java/org/apache/pinot/plugin/inputformat/orc/ORCRecordReader.java
index fb1c04a2c2..ef5d2a934b 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-orc/src/main/java/org/apache/pinot/plugin/inputformat/orc/ORCRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-orc/src/main/java/org/apache/pinot/plugin/inputformat/orc/ORCRecordReader.java
@@ -177,12 +177,6 @@ public class ORCRecordReader implements RecordReader {
     return _hasNext;
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetAvroRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetAvroRecordReader.java
index e1db085b8e..9ff0c4e61b 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetAvroRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetAvroRecordReader.java
@@ -62,12 +62,6 @@ public class ParquetAvroRecordReader implements RecordReader 
{
     return _nextRecord != null;
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetNativeRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetNativeRecordReader.java
index fd3ea1e264..3e9e49a389 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetNativeRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetNativeRecordReader.java
@@ -111,12 +111,6 @@ public class ParquetNativeRecordReader implements 
RecordReader {
     return hasNext();
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetRecordReader.java
index 0b119baad3..520755415c 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-parquet/src/main/java/org/apache/pinot/plugin/inputformat/parquet/ParquetRecordReader.java
@@ -66,12 +66,6 @@ public class ParquetRecordReader implements RecordReader {
     return _internalParquetRecordReader.hasNext();
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-protobuf/src/main/java/org/apache/pinot/plugin/inputformat/protobuf/ProtoBufRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-protobuf/src/main/java/org/apache/pinot/plugin/inputformat/protobuf/ProtoBufRecordReader.java
index 3562cf8479..90485d1090 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-protobuf/src/main/java/org/apache/pinot/plugin/inputformat/protobuf/ProtoBufRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-protobuf/src/main/java/org/apache/pinot/plugin/inputformat/protobuf/ProtoBufRecordReader.java
@@ -95,12 +95,6 @@ public class ProtoBufRecordReader implements RecordReader {
     return _hasNext;
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordReader.java
 
b/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordReader.java
index c7cba375be..1d8de8fa69 100644
--- 
a/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordReader.java
+++ 
b/pinot-plugins/pinot-input-format/pinot-thrift/src/main/java/org/apache/pinot/plugin/inputformat/thrift/ThriftRecordReader.java
@@ -102,12 +102,6 @@ public class ThriftRecordReader implements RecordReader {
     return _hasNext;
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/CompactedPinotSegmentRecordReader.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/CompactedPinotSegmentRecordReader.java
index 8cab202bf9..4717651b20 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/CompactedPinotSegmentRecordReader.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/CompactedPinotSegmentRecordReader.java
@@ -93,12 +93,6 @@ public class CompactedPinotSegmentRecordReader implements 
RecordReader {
     return false;
   }
 
-  @Override
-  public GenericRow next()
-      throws IOException {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse)
       throws IOException {
diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/GenericRowRecordReader.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/GenericRowRecordReader.java
index 89108b6ccb..20bae8f4a8 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/GenericRowRecordReader.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/GenericRowRecordReader.java
@@ -50,11 +50,6 @@ public class GenericRowRecordReader implements RecordReader {
     return _nextRowId < _numRows;
   }
 
-  @Override
-  public GenericRow next() {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse) {
     reuse.init(_rows.get(_nextRowId++));
diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/MultiplePinotSegmentRecordReader.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/MultiplePinotSegmentRecordReader.java
index 8b0f21092a..47bef52e7c 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/MultiplePinotSegmentRecordReader.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/MultiplePinotSegmentRecordReader.java
@@ -108,11 +108,6 @@ public class MultiplePinotSegmentRecordReader implements 
RecordReader {
     }
   }
 
-  @Override
-  public GenericRow next() {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse) {
     if (_sortOrder != null) {
@@ -144,7 +139,8 @@ public class MultiplePinotSegmentRecordReader implements 
RecordReader {
   }
 
   @Override
-  public void rewind() {
+  public void rewind()
+      throws IOException {
     for (PinotSegmentRecordReader recordReader : _recordReaders) {
       recordReader.rewind();
     }
diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/PinotSegmentRecordReader.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/PinotSegmentRecordReader.java
index ff2ee59f9e..11e256f886 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/PinotSegmentRecordReader.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/segment/readers/PinotSegmentRecordReader.java
@@ -199,11 +199,6 @@ public class PinotSegmentRecordReader implements 
RecordReader {
     return _nextDocId < _numDocs;
   }
 
-  @Override
-  public GenericRow next() {
-    return next(new GenericRow());
-  }
-
   @Override
   public GenericRow next(GenericRow reuse) {
     if (_sortedDocIds == null) {
diff --git 
a/pinot-spi/src/main/java/org/apache/pinot/spi/data/readers/RecordReader.java 
b/pinot-spi/src/main/java/org/apache/pinot/spi/data/readers/RecordReader.java
index fca8868432..020b2b3135 100644
--- 
a/pinot-spi/src/main/java/org/apache/pinot/spi/data/readers/RecordReader.java
+++ 
b/pinot-spi/src/main/java/org/apache/pinot/spi/data/readers/RecordReader.java
@@ -51,11 +51,11 @@ public interface RecordReader extends Closeable, 
Serializable {
 
   /**
    * Get the next record.
-   *
-   * TODO: Add default implementation because all the override implementations 
are the same
    */
-  GenericRow next()
-      throws IOException;
+  default GenericRow next()
+      throws IOException {
+    return next(new GenericRow());
+  }
 
   /**
    * Get the next record. Re-use the given row to reduce garbage.


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to