potiuk opened a new pull request, #73577:
URL: https://github.com/apache/airflow/pull/73577
When serving a task instance to a worker on an older Execution API version,
the version
converter decodes the stored serde `next_kwargs` and re-encodes them in the
legacy format.
Decoding reconstructs every value in the API server, including instances of
arbitrary
classes, although only the worker ever needs those objects.
The converter now only decodes payloads whose values are built-in value
types (tuples, sets,
dates and datetimes, timedeltas, timezones, decimals, UUIDs) — the types the
legacy format can
carry anyway. Payloads naming any other class are passed through as stored.
Test plan:
- [x] Stored kwargs holding a non-builtin class are returned as stored and
the class is never
constructed in the API server
- [x] Existing old-worker compatibility cases (plain values, datetime
round-trip, legacy rows
already in the database) still pass
##### Was generative AI tooling used to co-author this PR?
- [X] Yes — Claude Code (Opus 5.5)
Generated-by: Claude Code (Opus 5.5) following the guidelines at
https://github.com/apache/airflow/blob/main/contributing-docs/05_pull_requests.rst#gen-ai-assisted-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: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]