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

karan pushed a commit to branch 26.0.0
in repository https://gitbox.apache.org/repos/asf/druid.git

commit 96ad924f358f291e24464b1042856112b6b743a0
Author: Rohan Garg <[email protected]>
AuthorDate: Tue Apr 18 11:51:26 2023 +0530

    Log merge and push timings for PartialGenericSegmentMergeTask (#14089)
    
    (cherry picked from commit 086b2b8efe392fb4aea5436d6b95b01c6b16111d)
---
 .../task/batch/parallel/PartialSegmentMergeTask.java   | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)

diff --git 
a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/PartialSegmentMergeTask.java
 
b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/PartialSegmentMergeTask.java
index 7969b589fa..bb933169d4 100644
--- 
a/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/PartialSegmentMergeTask.java
+++ 
b/indexing-service/src/main/java/org/apache/druid/indexing/common/task/batch/parallel/PartialSegmentMergeTask.java
@@ -254,6 +254,7 @@ abstract class PartialSegmentMergeTask<S extends ShardSpec> 
extends PerfectRollu
     for (Entry<Interval, Int2ObjectMap<List<File>>> entryPerInterval : 
intervalToUnzippedFiles.entrySet()) {
       final Interval interval = entryPerInterval.getKey();
       for (Int2ObjectMap.Entry<List<File>> entryPerBucketId : 
entryPerInterval.getValue().int2ObjectEntrySet()) {
+        long startTime = System.nanoTime();
         final int bucketId = entryPerBucketId.getIntKey();
         final List<File> segmentFilesToMerge = entryPerBucketId.getValue();
         final Pair<File, List<String>> mergedFileAndDimensionNames = 
mergeSegmentsInSamePartition(
@@ -266,6 +267,12 @@ abstract class PartialSegmentMergeTask<S extends 
ShardSpec> extends PerfectRollu
             persistDir,
             0
         );
+        long mergeFinishTime = System.nanoTime();
+        LOG.info("Merged [%d] input segment(s) for interval [%s] in [%,d]ms.",
+                 segmentFilesToMerge.size(),
+                 interval,
+                 (mergeFinishTime - startTime) / 1000000
+        );
         final List<String> metricNames = 
Arrays.stream(dataSchema.getAggregators())
                                                .map(AggregatorFactory::getName)
                                                .collect(Collectors.toList());
@@ -294,7 +301,18 @@ abstract class PartialSegmentMergeTask<S extends 
ShardSpec> extends PerfectRollu
             exception -> !(exception instanceof NullPointerException) && 
exception instanceof Exception,
             5
         );
+        long pushFinishTime = System.nanoTime();
         pushedSegments.add(segment);
+        LOG.info("Built segment [%s] for interval [%s] (from [%d] input 
segment(s) in [%,d]ms) of "
+            + "size [%d] bytes and pushed ([%,d]ms) to deep storage [%s].",
+            segment.getId(),
+            interval,
+            segmentFilesToMerge.size(),
+            (mergeFinishTime - startTime) / 1000000,
+            segment.getSize(),
+            (pushFinishTime - mergeFinishTime) / 1000000,
+            segment.getLoadSpec()
+        );
       }
     }
     return pushedSegments;


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

Reply via email to