uranusjr commented on code in PR #40030:
URL: https://github.com/apache/airflow/pull/40030#discussion_r1625441639


##########
airflow/models/dag.py:
##########
@@ -800,10 +801,21 @@ def validate(self):
                 f"inconsistent schedule: timetable {self.timetable.summary!r} "
                 f"does not match schedule_interval {self.schedule_interval!r}",
             )
+        self.validate_executor_field()
         self.validate_schedule_and_params()
         self.timetable.validate()
         self.validate_setup_teardown()
 
+    def validate_executor_field(self):
+        for task in self.tasks:
+            if task.executor:
+                try:
+                    ExecutorLoader.lookup_executor_name_by_str(task.executor)
+                except AirflowException:

Review Comment:
   To clarify (I think only Jarek correctly interpreted what I wanted to say…), 
I agree with catching the exception here to add more context, but I don’t like 
the fact this is catching AirflowException. The underlying function should be 
modified to raise a more specific (potentially new) exception that subclasses 
AirflowException, and this block here should only catch that specific exception 
class.



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to