shivaam commented on PR #64751: URL: https://github.com/apache/airflow/pull/64751#issuecomment-4190477790
This is in draft but a few thoughts on this: 1. Side effects in the encoder break the serialization contract Every other encoder in encoders.py is a pure object→dict transformation — no network calls, no database access. This PR makes encode_deadline_alert the only one that reaches out to external systems (Variable.get()) This means serialization is no longer deterministic — the same DAG object produces different output depending on when you serialize it. It also means serialization can fail for reasons unrelated to encoding (Variable doesn't exist, API server timeout), surfacing as a confusing DAG parse failure. 2. If a user changes the Variable in the UI, nothing happens until the DAG Processor re-parses the file on its next cycle. The re-parse is timer-based (min_file_process_interval), not triggered by the Variable change — so the delay is unpredictable and there's no feedback that it took effect. @ferruzzi has recommended in the original issue to handle this when the deadline is calculated. -- 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]
