kunal642 commented on a change in pull request #3386: [WIP] : Pre-priming cache
URL:
https://github.com/apache/carbondata/pull/3386#discussion_r326124016
##########
File path: integration/spark2/src/main/scala/org/apache/carbondata/spark/rdd/CarbonTableCompactor.scala
##########
@@ -317,6 +319,39 @@ class CarbonTableCompactor(carbonLoadModel: CarbonLoadModel,
} else {
LOGGER.info(s"Compaction request completed for table " +
s"${ carbonLoadModel.getDatabaseName }.${ carbonLoadModel.getTableName }")
+
+ // Prepriming index for compaction
+ val prop = CarbonProperties.getInstance
+ .getProperty(CarbonCommonConstants.CARBON_ENABLE_INDEX_SERVER)
+ if (prop != null) {
+ if (prop.toBoolean) {
+ val readCommittedScope = new TableStatusReadCommittedScope(AbsoluteTableIdentifier.from(
+ carbonLoadModel.getTablePath), FileFactory.getConfiguration)
+ if (carbonLoadModel.getSegmentId != null) {
+ val loadDetailsForCurrentSegment = readCommittedScope.getSegmentList
+ .find(_.getLoadName.equalsIgnoreCase(carbonLoadModel.getSegmentId)).get
+ val segmentToWrite: Segment = new Segment(carbonLoadModel.getSegmentId,
+ loadDetailsForCurrentSegment.getSegmentFile,
+ readCommittedScope, loadDetailsForCurrentSegment)
+ segmentToWrite.setReadCommittedScope(readCommittedScope)
+ val invalidSeg = validSegments.asScala.toArray
+ val invalidList = scala.collection.mutable.MutableList[String]()
+ for (seg <- invalidSeg) {
+ invalidList += seg.getSegmentNo
+ }
+ LOGGER.info(s"Adding Segments to the Cache after compaction")
+ val IndexServerCompactionEvent: IndexServerCompactionEvent =
+ new IndexServerCompactionEvent(
+ sqlContext.sparkSession,
+ carbonTable,
+ segmentToWrite,
+ invalidList.toList
Review comment:
Directly use validSegments.asScala.map(_.getSegmentNo).toList to pass the invalid segment numbers. No need for 'invalidList'
----------------------------------------------------------------
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.
For queries about this service, please contact Infrastructure at:
[hidden email]
With regards,
Apache Git Services