You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by sa...@apache.org on 2023/06/21 17:32:51 UTC
[pinot] branch master updated: Add a new SegmentPurger interface method to get record purger based on table configs and schema (#10946)
This is an automated email from the ASF dual-hosted git repository.
sajjad 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 30b5da9626 Add a new SegmentPurger interface method to get record purger based on table configs and schema (#10946)
30b5da9626 is described below
commit 30b5da9626a774f97812b924c917fe766eba4b53
Author: Prachi Khobragade <pk...@linkedin.com>
AuthorDate: Wed Jun 21 10:32:44 2023 -0700
Add a new SegmentPurger interface method to get record purger based on table configs and schema (#10946)
---
.../src/main/java/org/apache/pinot/core/minion/SegmentPurger.java | 8 ++++++++
.../apache/pinot/plugin/minion/tasks/purge/PurgeTaskExecutor.java | 6 +++---
2 files changed, 11 insertions(+), 3 deletions(-)
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 4094b6b6e3..4faf695522 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
@@ -32,6 +32,7 @@ import org.apache.pinot.spi.data.Schema;
import org.apache.pinot.spi.data.readers.GenericRow;
import org.apache.pinot.spi.data.readers.RecordReader;
import org.apache.pinot.spi.data.readers.RecordReaderConfig;
+import org.apache.pinot.spi.utils.builder.TableNameBuilder;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -230,6 +231,13 @@ public class SegmentPurger {
* Get the {@link RecordPurger} for the given table.
*/
RecordPurger getRecordPurger(String rawTableName);
+
+ /**
+ * Get the {@link RecordPurger} associated with the given taskConfig, tableConfig and tableSchema
+ */
+ default RecordPurger getRecordPurger(PinotTaskConfig taskConfig, TableConfig tableConfig, Schema tableSchema) {
+ return getRecordPurger(TableNameBuilder.extractRawTableName(tableConfig.getTableName()));
+ }
}
/**
diff --git a/pinot-plugins/pinot-minion-tasks/pinot-minion-builtin-tasks/src/main/java/org/apache/pinot/plugin/minion/tasks/purge/PurgeTaskExecutor.java b/pinot-plugins/pinot-minion-tasks/pinot-minion-builtin-tasks/src/main/java/org/apache/pinot/plugin/minion/tasks/purge/PurgeTaskExecutor.java
index 267ed0874e..bbc9af3b54 100644
--- a/pinot-plugins/pinot-minion-tasks/pinot-minion-builtin-tasks/src/main/java/org/apache/pinot/plugin/minion/tasks/purge/PurgeTaskExecutor.java
+++ b/pinot-plugins/pinot-minion-tasks/pinot-minion-builtin-tasks/src/main/java/org/apache/pinot/plugin/minion/tasks/purge/PurgeTaskExecutor.java
@@ -46,14 +46,14 @@ public class PurgeTaskExecutor extends BaseSingleSegmentConversionExecutor {
String rawTableName = TableNameBuilder.extractRawTableName(tableNameWithType);
SegmentPurger.RecordPurgerFactory recordPurgerFactory = MINION_CONTEXT.getRecordPurgerFactory();
+ TableConfig tableConfig = getTableConfig(tableNameWithType);
+ Schema schema = getSchema(tableNameWithType);
SegmentPurger.RecordPurger recordPurger =
- recordPurgerFactory != null ? recordPurgerFactory.getRecordPurger(rawTableName) : null;
+ recordPurgerFactory != null ? recordPurgerFactory.getRecordPurger(pinotTaskConfig, tableConfig, schema) : null;
SegmentPurger.RecordModifierFactory recordModifierFactory = MINION_CONTEXT.getRecordModifierFactory();
SegmentPurger.RecordModifier recordModifier =
recordModifierFactory != null ? recordModifierFactory.getRecordModifier(rawTableName) : null;
- TableConfig tableConfig = getTableConfig(tableNameWithType);
- Schema schema = getSchema(tableNameWithType);
_eventObserver.notifyProgress(pinotTaskConfig, "Purging segment: " + indexDir);
SegmentPurger segmentPurger =
new SegmentPurger(indexDir, workingDir, tableConfig, schema, recordPurger, recordModifier);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org