-
Notifications
You must be signed in to change notification settings - Fork 16.3k
Don't emit first_task_scheduling_delay metric for only-once dags #12835
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
Don't emit first_task_scheduling_delay metric for only-once dags #12835
Conversation
Dags with a schedule interval of None, or `@once` don't have a following schedule, so we can't realistically calculate this metric. Additionally, this changes the emitted metric from seconds to milliseconds -- all timers to statsd should be in milliseconds -- this is what Statsd and apps that consume data from there expect. See apache#10629 for more details. This will be a "breaking" change from 1.10.14, where the metric was back-ported to, but was (incorrectly) emitting seconds.
|
Ping @Acehaidrey -- A bug (that thankfully due to the try except wasn't fatal), and also changing the "unit" from seconds to milliseconds. |
|
The PR most likely needs to run full matrix of tests because it modifies parts of the core of Airflow. However, committers might decide to merge it quickly and take the risk. If they don't merge it quickly - please rebase it to the latest master at your convenience, or amend the last commit of the PR, and push it with --force-with-lease. |
|
|
||
| ordered_tis_by_start_date = [ti for ti in finished_tis if ti.start_date] | ||
| ordered_tis_by_start_date.sort(key=lambda ti: ti.start_date, reverse=False) | ||
| first_start_date = ordered_tis_by_start_date[0].start_date |
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.
A question not relating to the changes made in this PR: why not we directly have something like
first_start_date = min(ti.start_date for ti in finished_tis)
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.
hey @XD-DENG yes agree you can do that and simplify this :) Feel free to add that refactor!
XD-DENG
left a comment
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.
The changes in this PR themselves look good to me surely.
|
thank you team for adding this check and fixing my issue! sorry. for misssing this check. |
) Dags with a schedule interval of None, or `@once` don't have a following schedule, so we can't realistically calculate this metric. Additionally, this changes the emitted metric from seconds to milliseconds -- all timers to statsd should be in milliseconds -- this is what Statsd and apps that consume data from there expect. See #10629 for more details. This will be a "breaking" change from 1.10.14, where the metric was back-ported to, but was (incorrectly) emitting seconds. (cherry picked from commit 4a02e0a)
- BugFix: Tasks with ``depends_on_past`` or ``task_concurrency`` are stuck (apache#12663) - Fix issue with empty Resources in executor_config (apache#12633) - Fix: Deprecated config ``force_log_out_after`` was not used (apache#12661) - Fix empty asctime field in JSON formatted logs (apache#10515) - [AIRFLOW-2809] Fix security issue regarding Flask SECRET_KEY (apache#3651) - [AIRFLOW-2884] Fix Flask SECRET_KEY security issue in www_rbac (apache#3729) - [AIRFLOW-2886] Generate random Flask SECRET_KEY in default config (apache#3738) - Add missing comma in setup.py (apache#12790) - Bugfix: Unable to import Airflow plugins on Python 3.8 (apache#12859) - Fix setup.py missing comma in ``setup_requires`` (apache#12880) - Don't emit first_task_scheduling_delay metric for only-once dags (apache#12835) - Update setup.py to get non-conflicting set of dependencies (apache#12636) - Rename ``[scheduler] max_threads`` to ``[scheduler] parsing_processes`` (apache#12605) - Add metric for scheduling delay between first run task & expected start time (apache#9544) - Add new-style 2.0 command names for Airflow 1.10.x (apache#12725) - Add Kubernetes cleanup-pods CLI command for Helm Chart (apache#11802) - Don't let webserver run with dangerous config (apache#12747) - Replace pkg_resources with importlib.metadata to avoid VersionConflict errors (apache#12694) - Clarified information about supported Databases
…che#12835) Dags with a schedule interval of None, or `@once` don't have a following schedule, so we can't realistically calculate this metric. Additionally, this changes the emitted metric from seconds to milliseconds -- all timers to statsd should be in milliseconds -- this is what Statsd and apps that consume data from there expect. See apache#10629 for more details. This will be a "breaking" change from 1.10.14, where the metric was back-ported to, but was (incorrectly) emitting seconds. (cherry picked from commit 4a02e0a)
Dags with a schedule interval of None, or
@oncedon't have a followingschedule, so we can't realistically calculate this metric.
Additionally, this changes the emitted metric from seconds to
milliseconds -- all timers to statsd should be in milliseconds -- this
is what Statsd and apps that consume data from there expect. See #10629
for more details.
This will be a "breaking" change from 1.10.14, where the metric was
back-ported to, but was (incorrectly) emitting seconds.
^ Add meaningful description above
Read the Pull Request Guidelines for more information.
In case of fundamental code change, Airflow Improvement Proposal (AIP) is needed.
In case of a new dependency, check compliance with the ASF 3rd Party License Policy.
In case of backwards incompatible changes please leave a note in UPDATING.md.