malthe commented on a change in pull request #18112:
URL: https://github.com/apache/airflow/pull/18112#discussion_r705599208
##########
File path: airflow/exceptions.py
##########
@@ -256,12 +278,21 @@ def __init__(
self.method_name = method_name
self.kwargs = kwargs
self.timeout = timeout
+
# Check timeout type at runtime
if self.timeout is not None and not hasattr(self.timeout,
"total_seconds"):
raise ValueError("Timeout value must be a timedelta")
+ # Check keyword arguments
+ if kwargs:
+ if method_name is None:
+ raise ValueError("Keyword arguments not allowed when method is
not specified")
Review comment:
So the only reason is to circumvent the behavior of adding "event" to
the `kwargs` which ruins the logic for an operator that just implements the
standard `execute` signature.
It makes it possible to use `pre_execute` as a general mechanism (or
workaround) for adding logic before an operator runs – that's at least my
example use-case here, delaying any odd operator without making a change.
--
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]