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

jlli pushed a commit to branch 
add-validation-check-for-forward-index-disabled-when-enabling-columnar-segment-creation
in repository https://gitbox.apache.org/repos/asf/pinot.git

commit 4c2fca142da5600de9a98d6583a28729c7c6aa21
Author: jlli_LinkedIn <j...@linkedin.com>
AuthorDate: Mon Apr 8 17:12:08 2024 -0700

    Add validation check for forward index disabled when enabling columnar 
segment creation
---
 .../org/apache/pinot/segment/local/utils/TableConfigUtils.java | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/utils/TableConfigUtils.java
 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/utils/TableConfigUtils.java
index 8d31f5d399..fc50b56aa9 100644
--- 
a/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/utils/TableConfigUtils.java
+++ 
b/pinot-segment-local/src/main/java/org/apache/pinot/segment/local/utils/TableConfigUtils.java
@@ -1310,11 +1310,11 @@ public final class TableConfigUtils {
     if (indexingConfig.getRangeIndexColumns() != null && 
indexingConfig.getRangeIndexColumns().contains(columnName)) {
       Preconditions.checkState(fieldSpec.isSingleValueField(), 
String.format("Feature not supported for multi-value "
           + "columns with range index. Cannot disable forward index for column 
%s. Disable range index on this "
-          + "column to use this feature", columnName));
+          + "column to use this feature.", columnName));
       Preconditions.checkState(indexingConfig.getRangeIndexVersion() == 
BitSlicedRangeIndexCreator.VERSION,
           String.format("Feature not supported for single-value columns with 
range index version < 2. Cannot disable "
               + "forward index for column %s. Either disable range index or 
create range index with"
-              + " version >= 2 to use this feature", columnName));
+              + " version >= 2 to use this feature.", columnName));
     }
 
     Preconditions.checkState(!indexingConfig.isOptimizeDictionaryForMetrics() 
&& !indexingConfig.isOptimizeDictionary(),
@@ -1334,6 +1334,12 @@ public final class TableConfigUtils {
           columnName,
           hasDictionary ? "enabled" : "disabled", hasInvertedIndex ? "enabled" 
: "disabled");
     }
+
+    // For tables with columnMajorSegmentBuilderEnabled being true, the 
forward index should not be disabled.
+    
Preconditions.checkState(!indexingConfig.isColumnMajorSegmentBuilderEnabled(), 
String.format(
+        "Columnar segment generation is enabled. Cannot disable forward index 
for column %s. Disable columnar segment"
+            + " generation to use this feature.",
+        columnName));
   }
 
   private static void sanitize(TableConfig tableConfig) {


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

Reply via email to