-
Notifications
You must be signed in to change notification settings - Fork 4.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementing lull reporting at bundle level processing #29882
Conversation
Assigning reviewers. If you would like to opt out of this review, comment R: @chamikaramj added as fallback since no labels match configuration Available commands:
The PR bot will only process comments in the main thread (not review comments). |
This change was reviewed internally and approved by the streaming team. |
Thanks will check (sorry about the delay, was OOO). |
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/ExecutionStateTracker.java
Outdated
Show resolved
Hide resolved
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/SimpleExecutionState.java
Outdated
Show resolved
Hide resolved
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/SimpleExecutionState.java
Outdated
Show resolved
Hide resolved
...a/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowOperationContext.java
Outdated
Show resolved
Hide resolved
The failures seems to be irrelevant to the change in this PR. |
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/ExecutionStateTracker.java
Outdated
Show resolved
Hide resolved
* @param trackedThread The execution thread that is in a lull. | ||
* @param millis The milliseconds since the state was most recently entered. | ||
*/ | ||
public abstract void reportBundleLull( |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this needs to be a method on the ExecutionState, as it is not state specific. It could just be a method within ExecutionStateTracker which represents the execution across states.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This would trigger a bigger change because the logging is happening at DataflowExecutionState which is an implementation of ExecutionState.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that is worthwhile to avoid having this rely on the step context when it should be logged regardless of if there is a step context or not.
You can extract whatever shared logic to print the thread stacks static method in ExecutionStateTracker to share it.
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/ExecutionStateTracker.java
Show resolved
Hide resolved
...a/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowOperationContext.java
Outdated
Show resolved
Hide resolved
...a/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowOperationContext.java
Outdated
Show resolved
Hide resolved
...a/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowOperationContext.java
Outdated
Show resolved
Hide resolved
...a/worker/src/main/java/org/apache/beam/runners/dataflow/worker/DataflowOperationContext.java
Outdated
Show resolved
Hide resolved
runners/core-java/src/main/java/org/apache/beam/runners/core/metrics/SimpleExecutionState.java
Outdated
Show resolved
Hide resolved
@scwhittle its ready for review. |
Failures are due to https://opensource.org/licenses/mit planned downtime |
Just made final edit (replace anyOf with allOf instead of separate allOf) instead of round-trip. Will merge once tests pass |
The tests are green and ready to be merged. |
Seems like an unrelated failure |
Run Java_GCP_IO_Direct |
Thanks for the thorough review and help in getting this merged Sam. |
…e#29882)" (apache#30648) This reverts commit ffe2dba.
…" (#30648) (#30664) This reverts commit ffe2dba. Co-authored-by: Arvind Ram <[email protected]>
…e#29882)" (apache#30648) This reverts commit ffe2dba.
Implementing lull reporting for dataflow worker at bundle level processing. We dump a stack trace when the bundle processing time exceeds 10 mins. As part of this, we log the step names and time spent in each step to help users debug stuck jobs better.
Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
addresses #123
), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, commentfixes #<ISSUE NUMBER>
instead.CHANGES.md
with noteworthy changes.See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)
See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.