You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by "adrian-adikteev (via GitHub)" <gi...@apache.org> on 2024/11/15 12:28:28 UTC
[PR] Add wait_for_steps_completion option to EmrCreateJobFlowOperator. [airflow]
adrian-adikteev opened a new pull request, #44055:
URL: https://github.com/apache/airflow/pull/44055
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<!--
Thank you for contributing! Please make sure that your code changes
are covered with tests. And in case of new features or big changes
remember to adjust the documentation.
Feel free to ping committers for the review!
In case of an existing issue, reference it using one of the following:
closes: #ISSUE
related: #ISSUE
How to write a good git commit message:
http://chris.beams.io/posts/git-commit/
-->
<!-- Please keep an empty line above the dashes. -->
---
Currently, when using `wait_for_complition=True` it will trigger the node to only wait until the cluster is successfully launched.
I added the option `wait_for_steps_completion` so that it will also await the cluster to be terminated successfully.
This is useful because it will eliminate the need to have an extra node in your DAG.
**^ Add meaningful description above**
Read the **[Pull Request Guidelines](https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#pull-request-guidelines)** for more information.
In case of fundamental code changes, an Airflow Improvement Proposal ([AIP](https://cwiki.apache.org/confluence/display/AIRFLOW/Airflow+Improvement+Proposals)) is needed.
In case of a new dependency, check compliance with the [ASF 3rd Party License Policy](https://www.apache.org/legal/resolved.html#category-x).
In case of backwards incompatible changes please leave a note in a newsfragment file, named `{pr_number}.significant.rst` or `{issue_number}.significant.rst`, in [newsfragments](https://github.com/apache/airflow/tree/main/newsfragments).
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "eladkal (via GitHub)" <gi...@apache.org>.
eladkal commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1847170835
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -636,8 +641,14 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param job_flow_overrides: boto3 style arguments or reference to an arguments file
(must be '.json') to override specific ``emr_conn_id`` extra parameters. (templated)
:param region_name: Region named passed to EmrHook
- :param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
+ :param wait_for_completion: Deprecated - use `wait_policy` instead.
+ Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
+ (default: None)
+ :param wait_policy: Whether to finish the task immediately after creation (None) or:
+ - wait for the jobflow completion (WaitPolicy.WAIT_FOR_COMPLETION)
+ - wait for the jobflow completion and cluster to terminate (WaitPolicy.WAIT_FOR_STEPS_COMPLETION)
+ (default: None)
:param waiter_max_attempts: Maximum number of tries before failing.
Review Comment:
Can you add the explnation about the parameter also to the emr docs?
Also lets verify if we have example dags using the old parameter and switch them to the new one
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1852017388
##########
docs/apache-airflow-providers-amazon/operators/emr/emr.rst:
##########
@@ -47,6 +47,15 @@ Create an EMR job flow
You can use :class:`~airflow.providers.amazon.aws.operators.emr.EmrCreateJobFlowOperator` to
create a new EMR job flow. The cluster will be terminated automatically after finishing the steps.
+
+The default behaviour is to mark the DAG Task node as success as soon as the cluster is launched
+(``wait_policy=None``).
+It is possible to modify this behaviour by using a different ``wait_policy``. Available options are:
+
+- ``WaitPolicy.WAIT_FOR_COMPLETION`` - DAG Task node waits for the cluster to be Running
+- ``WaitPolicy.WAIT_FOR_STEPS_COMPLETION`` - DAG Task node waits for the cluster to Terminate
Review Comment:
Done
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1847890836
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -636,8 +641,14 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param job_flow_overrides: boto3 style arguments or reference to an arguments file
(must be '.json') to override specific ``emr_conn_id`` extra parameters. (templated)
:param region_name: Region named passed to EmrHook
- :param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
+ :param wait_for_completion: Deprecated - use `wait_policy` instead.
+ Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
+ (default: None)
+ :param wait_policy: Whether to finish the task immediately after creation (None) or:
+ - wait for the jobflow completion (WaitPolicy.WAIT_FOR_COMPLETION)
+ - wait for the jobflow completion and cluster to terminate (WaitPolicy.WAIT_FOR_STEPS_COMPLETION)
+ (default: None)
:param waiter_max_attempts: Maximum number of tries before failing.
Review Comment:
No examples using the old parameter.
I've updated the doc to describe `wait_policy`
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_for_steps_completion option to EmrCreateJobFlowOperator. [airflow]
Posted by "boring-cyborg[bot] (via GitHub)" <gi...@apache.org>.
boring-cyborg[bot] commented on PR #44055:
URL: https://github.com/apache/airflow/pull/44055#issuecomment-2478707940
Congratulations on your first Pull Request and welcome to the Apache Airflow community! If you have any issues or are unsure about any anything please check our Contributors' Guide (https://github.com/apache/airflow/blob/main/contributing-docs/README.rst)
Here are some useful points:
- Pay attention to the quality of your code (ruff, mypy and type annotations). Our [pre-commits]( https://github.com/apache/airflow/blob/main/contributing-docs/08_static_code_checks.rst#prerequisites-for-pre-commit-hooks) will help you with that.
- In case of a new feature add useful documentation (in docstrings or in `docs/` directory). Adding a new operator? Check this short [guide](https://github.com/apache/airflow/blob/main/docs/apache-airflow/howto/custom-operator.rst) Consider adding an example DAG that shows how users should use it.
- Consider using [Breeze environment](https://github.com/apache/airflow/blob/main/dev/breeze/doc/README.rst) for testing locally, it's a heavy docker but it ships with a working Airflow and a lot of integrations.
- Be patient and persistent. It might take some time to get a review or get the final approval from Committers.
- Please follow [ASF Code of Conduct](https://www.apache.org/foundation/policies/conduct) for all communication including (but not limited to) comments on Pull Requests, Mailing list and Slack.
- Be sure to read the [Airflow Coding style]( https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#coding-style-and-best-practices).
- Always keep your Pull Requests rebased, otherwise your build might fail due to changes not related to your commits.
Apache Airflow is a community-driven project and together we are making it better 🚀.
In case of doubts contact the developers at:
Mailing List: dev@airflow.apache.org
Slack: https://s.apache.org/airflow-slack
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1852014608
##########
newsfragments/44055.feature.rst:
##########
@@ -0,0 +1 @@
+New argument ``wait_policy`` to control waiting behaviour when using ``EmrCreateJobFlowOperator``.
Review Comment:
Alright. Done
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1846124721
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -638,6 +642,10 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param region_name: Region named passed to EmrHook
:param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
Review Comment:
Alright. So that's what you meant.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_for_steps_completion option to EmrCreateJobFlowOperator. [airflow]
Posted by "vincbeck (via GitHub)" <gi...@apache.org>.
vincbeck commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1844144667
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -666,6 +670,7 @@ def __init__(
job_flow_overrides: str | dict[str, Any] | None = None,
region_name: str | None = None,
wait_for_completion: bool = False,
+ wait_for_steps_completion: bool = False,
Review Comment:
I like that idea!
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on PR #44055:
URL: https://github.com/apache/airflow/pull/44055#issuecomment-2490974792
I'm not sure what's the next step here but from my side everything is ready.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "vincbeck (via GitHub)" <gi...@apache.org>.
vincbeck commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1847221160
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -636,8 +641,14 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param job_flow_overrides: boto3 style arguments or reference to an arguments file
(must be '.json') to override specific ``emr_conn_id`` extra parameters. (templated)
:param region_name: Region named passed to EmrHook
- :param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
+ :param wait_for_completion: Deprecated - use `wait_policy` instead.
+ Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
+ (default: None)
+ :param wait_policy: Whether to finish the task immediately after creation (None) or:
+ - wait for the jobflow completion (WaitPolicy.WAIT_FOR_COMPLETION)
+ - wait for the jobflow completion and cluster to terminate (WaitPolicy.WAIT_FOR_STEPS_COMPLETION)
+ (default: None)
:param waiter_max_attempts: Maximum number of tries before failing.
Review Comment:
> Also lets verify if we have example dags using the old parameter and switch them to the new one
I did check and we do not :)
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_for_steps_completion option to EmrCreateJobFlowOperator. [airflow]
Posted by "eladkal (via GitHub)" <gi...@apache.org>.
eladkal commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1844135196
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -666,6 +670,7 @@ def __init__(
job_flow_overrides: str | dict[str, Any] | None = None,
region_name: str | None = None,
wait_for_completion: bool = False,
+ wait_for_steps_completion: bool = False,
Review Comment:
I think both `wait_for_completion` and `wait_for_steps_completion` can be very confusing.
If we are to support the new functionality I suggest to introduce a new parameter `wait_policy` which will accept value of `wait_for_steps_completion`, `wait_for_steps_completed_and_machine_terminated` similar to what we did with Kubernetes in https://github.com/apache/airflow/pull/30718 when we had more than just a bool option for delete pod.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "vincbeck (via GitHub)" <gi...@apache.org>.
vincbeck commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1851999154
##########
newsfragments/44055.feature.rst:
##########
@@ -0,0 +1 @@
+New argument ``wait_policy`` to control waiting behaviour when using ``EmrCreateJobFlowOperator``.
Review Comment:
You do not need this file, it is not a breaking change and more importantly, it is a provider change, not an Airflow change. Thus, you can just remove this file :)
##########
docs/apache-airflow-providers-amazon/operators/emr/emr.rst:
##########
@@ -47,6 +47,15 @@ Create an EMR job flow
You can use :class:`~airflow.providers.amazon.aws.operators.emr.EmrCreateJobFlowOperator` to
create a new EMR job flow. The cluster will be terminated automatically after finishing the steps.
+
+The default behaviour is to mark the DAG Task node as success as soon as the cluster is launched
+(``wait_policy=None``).
+It is possible to modify this behaviour by using a different ``wait_policy``. Available options are:
+
+- ``WaitPolicy.WAIT_FOR_COMPLETION`` - DAG Task node waits for the cluster to be Running
+- ``WaitPolicy.WAIT_FOR_STEPS_COMPLETION`` - DAG Task node waits for the cluster to Terminate
Review Comment:
nits
```suggestion
- ``WaitPolicy.WAIT_FOR_COMPLETION`` - DAG Task node waits for the cluster to be running
- ``WaitPolicy.WAIT_FOR_STEPS_COMPLETION`` - DAG Task node waits for the cluster to terminate
```
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "boring-cyborg[bot] (via GitHub)" <gi...@apache.org>.
boring-cyborg[bot] commented on PR #44055:
URL: https://github.com/apache/airflow/pull/44055#issuecomment-2498405146
Awesome work, congrats on your first merged pull request! You are invited to check our [Issue Tracker](https://github.com/apache/airflow/issues) for additional contributions.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "vincbeck (via GitHub)" <gi...@apache.org>.
vincbeck merged PR #44055:
URL: https://github.com/apache/airflow/pull/44055
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "eladkal (via GitHub)" <gi...@apache.org>.
eladkal commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1846119572
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -638,6 +642,10 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param region_name: Region named passed to EmrHook
:param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
Review Comment:
Given the new functionality we will need to deprecate `wait_for_completion` and add backward compatibility to the new functionality. You can see similar example in https://github.com/apache/airflow/pull/30718
##########
providers/src/airflow/providers/amazon/aws/utils/waiter.py:
##########
@@ -83,3 +84,16 @@ def get_state(response, keys) -> str:
if value is not None:
value = value.get(key, None)
return value
+
+
+class WaitPolicy(str, Enum):
+ # Wait for the cluster to be up.
+ DEFAULT = "default"
Review Comment:
Lets not say default but be explicit about what it is.
I think we have
`wait_for_completion` - equivalent to what we have now
`wait_for_completion_with_machine_terminated` - the new functionality you wanted
You can suggest better names
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1846110900
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -666,6 +670,7 @@ def __init__(
job_flow_overrides: str | dict[str, Any] | None = None,
region_name: str | None = None,
wait_for_completion: bool = False,
+ wait_for_steps_completion: bool = False,
Review Comment:
@eladkal I prefer your idea too. I've added a version of what you said, but it might not be what you had in mind.
When you say `wait_for_steps_completed_and_machine_terminated` what is the waiter name you think should map to it?
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on PR #44055:
URL: https://github.com/apache/airflow/pull/44055#issuecomment-2497323546
Should be ready for merging
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "vincbeck (via GitHub)" <gi...@apache.org>.
vincbeck commented on PR #44055:
URL: https://github.com/apache/airflow/pull/44055#issuecomment-2483432280
Good job! I like that version
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1846125165
##########
providers/src/airflow/providers/amazon/aws/utils/waiter.py:
##########
@@ -83,3 +84,16 @@ def get_state(response, keys) -> str:
if value is not None:
value = value.get(key, None)
return value
+
+
+class WaitPolicy(str, Enum):
+ # Wait for the cluster to be up.
+ DEFAULT = "default"
Review Comment:
That's good.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
Re: [PR] Add wait_policy option to EmrCreateJobFlowOperator. [airflow]
Posted by "adrian-adikteev (via GitHub)" <gi...@apache.org>.
adrian-adikteev commented on code in PR #44055:
URL: https://github.com/apache/airflow/pull/44055#discussion_r1846141336
##########
providers/src/airflow/providers/amazon/aws/operators/emr.py:
##########
@@ -638,6 +642,10 @@ class EmrCreateJobFlowOperator(BaseOperator):
:param region_name: Region named passed to EmrHook
:param wait_for_completion: Whether to finish task immediately after creation (False) or wait for jobflow
completion (True)
Review Comment:
Done
##########
providers/src/airflow/providers/amazon/aws/utils/waiter.py:
##########
@@ -83,3 +84,16 @@ def get_state(response, keys) -> str:
if value is not None:
value = value.get(key, None)
return value
+
+
+class WaitPolicy(str, Enum):
+ # Wait for the cluster to be up.
+ DEFAULT = "default"
Review Comment:
Done
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org