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 2cee782a25 check mutable segment explicitly instead of checking 
existence of indexDir (#9718)
2cee782a25 is described below

commit 2cee782a2560c4e340e66ff98d55fbbce5752d9d
Author: Xiaobing <61892277+klsi...@users.noreply.github.com>
AuthorDate: Thu Nov 3 17:07:26 2022 -0700

    check mutable segment explicitly instead of checking existence of indexDir 
(#9718)
---
 .../pinot/segment/local/indexsegment/mutable/MutableSegmentImpl.java | 5 +++++
 .../src/main/java/org/apache/pinot/segment/spi/SegmentMetadata.java  | 4 ++++
 .../apache/pinot/server/starter/helix/HelixInstanceDataManager.java  | 3 +--
 3 files changed, 10 insertions(+), 2 deletions(-)

diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/indexsegment/mutable/MutableSegmentImpl.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/indexsegment/mutable/MutableSegmentImpl.java
index f405ebccb2..456b95d275 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/indexsegment/mutable/MutableSegmentImpl.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/indexsegment/mutable/MutableSegmentImpl.java
@@ -200,6 +200,11 @@ public class MutableSegmentImpl implements MutableSegment {
       public long getLatestIngestionTimestamp() {
         return _latestIngestionTimeMs;
       }
+
+      @Override
+      public boolean isMutableSegment() {
+        return true;
+      }
     };
 
     _offHeap = config.isOffHeap();
diff --git 
a/pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/SegmentMetadata.java
 
b/pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/SegmentMetadata.java
index d1be4b8624..bad5f4d3f9 100644
--- 
a/pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/SegmentMetadata.java
+++ 
b/pinot-segment-spi/src/main/java/org/apache/pinot/segment/spi/SegmentMetadata.java
@@ -119,4 +119,8 @@ public interface SegmentMetadata {
    * @return json representation of segment metadata.
    */
   JsonNode toJson(@Nullable Set<String> columnFilter);
+
+  default boolean isMutableSegment() {
+    return false;
+  }
 }
diff --git 
a/pinot-server/src/main/java/org/apache/pinot/server/starter/helix/HelixInstanceDataManager.java
 
b/pinot-server/src/main/java/org/apache/pinot/server/starter/helix/HelixInstanceDataManager.java
index fe373c0fbe..d93e39f7c8 100644
--- 
a/pinot-server/src/main/java/org/apache/pinot/server/starter/helix/HelixInstanceDataManager.java
+++ 
b/pinot-server/src/main/java/org/apache/pinot/server/starter/helix/HelixInstanceDataManager.java
@@ -367,8 +367,7 @@ public class HelixInstanceDataManager implements 
InstanceDataManager {
       return;
     }
 
-    File indexDir = segmentMetadata.getIndexDir();
-    if (indexDir == null) {
+    if (segmentMetadata.isMutableSegment()) {
       // Use force commit to reload consuming segment
       SegmentDataManager segmentDataManager = 
tableDataManager.acquireSegment(segmentName);
       if (segmentDataManager == null) {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@pinot.apache.org
For additional commands, e-mail: commits-h...@pinot.apache.org

Reply via email to