Alex Amato created BEAM-6597:
--------------------------------

             Summary: Put MonitoringInfos/metrics in the Java SDK 
ProcessBundleProgressResponse
                 Key: BEAM-6597
                 URL: https://issues.apache.org/jira/browse/BEAM-6597
             Project: Beam
          Issue Type: New Feature
          Components: java-fn-execution
            Reporter: Alex Amato


I think this is the correct approach, as I don't believe there is any hook in 
the Java SDK yet for ProcessBundleProgressResponses.


(1) Implement ProcessBundleProgressResponse

See FnHarness.main to add a handle for RequestCase.PROGRESS_BUNDLE.

(2) Refactor ProgressBundleHandler so that the metrics can be extracted from 
the MetricContainerStep map and SimpleExecutionStates for the instrucitonId 
when the call comes in. (Right now all these objects only live in the local 
function, they may need to live in an object instead which can be accessed by 
both process bundle and progress bundle responses). Be careful to not introduce 
thread contention. Ideally we need a way to read the values without locking new 
ones from being written.

(Test 1) Also be sure to simplify RemoteExecutionTest.testMetrics().

By inspecting the metric progress, we can remove the sleeps from this code. 
Currently there are sleeps in start, process and finish to ensure execution 
time metrics are added. Instead, once progress bundle responses are introduced, 
the metrics can be examined here



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to