yupeng9 commented on code in PR #10400:
URL: https://github.com/apache/pinot/pull/10400#discussion_r1130272621


##########
pinot-core/src/main/java/org/apache/pinot/core/data/manager/realtime/LLRealtimeSegmentDataManager.java:
##########
@@ -941,16 +942,20 @@ protected SegmentBuildDescriptor 
buildSegmentInternal(boolean forCommit) {
           TimeUnit.MILLISECONDS.toSeconds(waitTimeMillis));
 
       if (forCommit) {
-        File segmentTarFile = new File(dataDir, _segmentNameStr + 
TarGzCompressionUtils.TAR_GZ_FILE_EXTENSION);
-        try {
-          TarGzCompressionUtils.createTarGzFile(indexDir, segmentTarFile);
-        } catch (IOException e) {
-          String errorMessage =
-              String.format("Caught exception while taring index directory 
from: %s to: %s", indexDir, segmentTarFile);
-          _segmentLogger.error(errorMessage, e);
-          _realtimeTableDataManager
-              .addSegmentError(_segmentNameStr, new SegmentErrorInfo(now(), 
errorMessage, e));
-          return null;
+        File segmentTarFile = null;
+        if 
(!_tableConfig.getValidationConfig().isSegmentUploadToDeepStoreDisabled()) {
+          segmentTarFile = new File(dataDir, _segmentNameStr + 
TarGzCompressionUtils.TAR_GZ_FILE_EXTENSION);
+          try {
+            TarGzCompressionUtils.createTarGzFile(indexDir, segmentTarFile);
+          } catch (IOException e) {
+            String errorMessage =
+                String.format("Caught exception while taring index directory 
from: %s to: %s", indexDir, segmentTarFile);
+            _segmentLogger.error(errorMessage, e);
+            _realtimeTableDataManager.addSegmentError(_segmentNameStr, new 
SegmentErrorInfo(now(), errorMessage, e));
+            return null;

Review Comment:
   shall this return or continue (as if deep store was disabled)



##########
pinot-spi/src/main/java/org/apache/pinot/spi/config/table/SegmentsValidationAndRetentionConfig.java:
##########
@@ -52,6 +52,10 @@ public class SegmentsValidationAndRetentionConfig extends 
BaseJsonConfig {
   // Number of replicas per partition of low-level consumers. This config is 
used for realtime tables only.
   private String _replicasPerPartition;
 
+  // True if and only if the segment upload to deep store is disabled. This is 
usefully for Pinot cluster which does not
+  // have any deep store.
+  private boolean _segmentUploadToDeepStoreDisabled;

Review Comment:
   we shall also disallow rebalance with downtime when this is disabled, right?



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


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

Reply via email to