[ 
https://issues.apache.org/jira/browse/GOBBLIN-2186?focusedWorklogId=950620&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-950620
 ]

ASF GitHub Bot logged work on GOBBLIN-2186:
-------------------------------------------

                Author: ASF GitHub Bot
            Created on: 02/Jan/25 04:31
            Start Date: 02/Jan/25 04:31
    Worklog Time Spent: 10m 
      Work Description: Blazer-007 commented on code in PR #4089:
URL: https://github.com/apache/gobblin/pull/4089#discussion_r1900532554


##########
gobblin-temporal/src/main/java/org/apache/gobblin/temporal/ddm/activity/impl/GenerateWorkUnitsImpl.java:
##########
@@ -127,6 +130,9 @@ public GenerateWorkUnitsResult generateWorkUnits(Properties 
jobProps, EventSubmi
       int numSizeSummaryQuantiles = 
getConfiguredNumSizeSummaryQuantiles(jobState);
       WorkUnitsSizeSummary wuSizeSummary = 
digestWorkUnitsSize(workUnits).asSizeSummary(numSizeSummaryQuantiles);
       log.info("Discovered WorkUnits: {}", wuSizeSummary);
+      // IMPORTANT: send prior to `writeWorkUnits`, so the volume of work 
discovered (and bin packed) gets durably measured.  even if serialization were 
to
+      // exceed available memory and this activity execution were to fail, a 
subsequent re-attempt would know the amount of work, to guide re-config/attempt
+      createWorkPreparedSizeDistillationTimer(wuSizeSummary, 
eventSubmitterContext).stop();

Review Comment:
   I think, if serialization takes time and if it accounts for more OOM issue 
then should we consider these both in separate activity and launched through 
one parent workflow as IIUC activity retry will do everything from beginning 
and discovered workunits will be generated again which can also lead to 
duplication of GTE, whats your opinion on this ?



##########
gobblin-temporal/src/main/java/org/apache/gobblin/temporal/ddm/activity/impl/GenerateWorkUnitsImpl.java:
##########
@@ -150,26 +156,28 @@ public GenerateWorkUnitsResult 
generateWorkUnits(Properties jobProps, EventSubmi
   protected List<WorkUnit> 
generateWorkUnitsForJobStateAndCollectCleanupPaths(JobState jobState, 
EventSubmitterContext eventSubmitterContext, Closer closer,
       Set<String> pathsToCleanUp)
       throws ReflectiveOperationException {
+    // report (timer) metrics for "Work Discovery", *planning only* - NOT 
including WU prep, like serialization, `DestinationDatasetHandlerService`ing, 
etc.
+    // IMPORTANT: for accurate timing, SEPARATELY emit 
`.createWorkPreparationTimer`, to record time prior to measuring the WU size 
required for that one

Review Comment:
   Do you mean here one GTE event for serialization step or GTE event for 
everything discovery serialization and all ?
   and also would that GTE help us in anyway if we had , wdyt ?





Issue Time Tracking
-------------------

    Worklog Id:     (was: 950620)
    Time Spent: 0.5h  (was: 20m)

> Ensure GoT jobs record Work Discovery planning timing for populating the 
> `GaaSJobObservabilityEvent` fields `jobPlanning{Start,End}Timestamp`
> ---------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: GOBBLIN-2186
>                 URL: https://issues.apache.org/jira/browse/GOBBLIN-2186
>             Project: Apache Gobblin
>          Issue Type: New Feature
>          Components: gobblin-core
>            Reporter: Kip Kohn
>            Assignee: Abhishek Tiwari
>            Priority: Minor
>          Time Spent: 0.5h
>  Remaining Estimate: 0h
>
> `GaaSJobObservabilityEvent`s for Gobblin-on-Temporal jobs have no values set 
> for the fields `jobPlanningStartTimestamp` and `jobPlanningEndTimestamp` 
> because no `TimingEvent.LauncherTimings.WORK_UNITS_CREATION` GTE (to record 
> those values) is emitted by `GenerateWorkUnitsImpl`



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to