-
Notifications
You must be signed in to change notification settings - Fork 65
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
Add buffer size and dropped actions fields to ScheduleInfo #311
Conversation
Can you add a bit more to the "why", as in specifically how users may use it? |
0ccdd10
to
fba7a44
Compare
It's basically just for visibility and completeness. Buffer overruns are already exposed in a metric, but we have similar fields in ScheduleInfo for number of runs skipped, etc. so I think it should go there too. Buffer size is also interesting to monitor, but it doesn't make sense as a metric, it's more useful as a per-schedule thing to check with DescribeSchedule. I could imagine:
|
// Number of actions dropped due to the buffer limit. | ||
int64 buffer_dropped = 11; |
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'd put this above in a group with the other counters. buffer_size is a gauge and more related to running_workflows.
Makes sense. I may request a bit more detail into what the "buffer" is on the proto comment. For example, I don't know whether buffer is used for future calendar/interval or just backlog of backfill or otherwise pending actions from the past. |
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.
both backfills and normal runs (and trigger immediately) go in the buffer together
<!-- Describe what has changed in this PR --> **What changed?** Expose buffer size and number of dropped actions due to buffer limit in ScheduleInfo Related API change: temporalio/api#311 <!-- Tell your future self why have you made these changes --> **Why?** Give more visibility into schedule state to the clients. <!-- How have you verified this change? Tested locally? Added a unit test? Checked in staging env? --> **How did you test it?** None so far <!-- Assuming the worst case, what can be broken when deploying this change to production? --> **Potential risks** None <!-- Is this PR a hotfix candidate or require that a notification be sent to the broader community? (Yes/No) --> **Is hotfix candidate?** No
…4839) <!-- Describe what has changed in this PR --> **What changed?** Expose buffer size and number of dropped actions due to buffer limit in ScheduleInfo Related API change: temporalio/api#311 <!-- Tell your future self why have you made these changes --> **Why?** Give more visibility into schedule state to the clients. <!-- How have you verified this change? Tested locally? Added a unit test? Checked in staging env? --> **How did you test it?** None so far <!-- Assuming the worst case, what can be broken when deploying this change to production? --> **Potential risks** None <!-- Is this PR a hotfix candidate or require that a notification be sent to the broader community? (Yes/No) --> **Is hotfix candidate?** No
<!-- Describe what has changed in this PR --> **What changed?** Expose buffer size and number of dropped actions due to buffer limit in ScheduleInfo Related API change: temporalio/api#311 <!-- Tell your future self why have you made these changes --> **Why?** Give more visibility into schedule state to the clients. <!-- How have you verified this change? Tested locally? Added a unit test? Checked in staging env? --> **How did you test it?** None so far <!-- Assuming the worst case, what can be broken when deploying this change to production? --> **Potential risks** None <!-- Is this PR a hotfix candidate or require that a notification be sent to the broader community? (Yes/No) --> **Is hotfix candidate?** No
What changed?
Adding two fields to ScheduleInfo proto
Why?
This is for visibility and completeness. Buffer overruns are already exposed in a metric, but we have similar fields in ScheduleInfo for number of runs skipped, etc. so I think it should go there too.
Buffer size is also interesting to monitor, but it doesn't make sense as a metric, it's more useful as a per-schedule thing to check with DescribeSchedule. I could imagine:
How did you test it?
No test
Potential risks
None
Is hotfix candidate?
No