seanghaeli opened a new pull request, #69942:
URL: https://github.com/apache/airflow/pull/69942
`dag.test()` runs a deferred task's trigger inline, but on resume it
**replaced** `next_kwargs` with just `{"event": ...}` — dropping the kwargs
passed at `defer(..., kwargs=...)` time. The production triggerer path merges
them, so this only affects `dag.test()` (which system tests use).
Effect: the resume method runs with default arg values. For
`example_neptune_analytics`, `create_endpoint` defers with `kwargs={"vpc_id":
...}` and resumes into `execute_complete(..., vpc_id="")`; the dropped kwarg
made `vpc_id` empty, which propagated to `delete_endpoint` and failed with
`AccessDeniedException: Unable to determine service/operation name to be
authorized` — the deferrable-only failure seen in the pipeline.
Fix: merge the event into the existing `next_kwargs` instead of replacing,
matching the production resume path. Fixes the general case for any deferrable
operator using `defer(kwargs=...)` under `dag.test()`.
--
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]