The GitHub Actions job "Check newsfragment PR number" on 
airflow.git/partition-fanout-max-keys has failed.
Run started by GitHub user Lee-W (triggered by Lee-W).

Head commit for run:
efa89111fc4ecc9eec3ffd91ad1c03f346249561 / Wei Lee <[email protected]>
feat(core): add per-mapper max_downstream_keys override for partition fan-out 
cap

Add a `max_downstream_keys: int | None = None` parameter to both the SDK and
core `PartitionMapper` base classes, threaded through every subclass
constructor that defines its own `__init__`. The validator rejects 0,
negatives, floats, and strings.

Serialization is updated in two parallel paths:
- Per-class `serialize()` / `deserialize()` methods (custom-mapper path).
- `encoders.py` singledispatch overrides (built-in-mapper path).

Both paths write `max_downstream_keys` only when non-None, following the
existing convention of omitting default-valued fields from the serialized form.

In `manager.py`, the single-shot `max_downstream_keys` read is deleted;
the mapper object is retained after the `to_downstream` call so its
`max_downstream_keys` attribute is readable at the boundary check. The
effective cap is computed per target-Dag as either the mapper's own cap or the
global `[scheduler] partition_mapper_max_downstream_keys`. The `Log.extra`
string uses `max_downstream_keys=N` when the per-mapper cap trips, and keeps
the existing `[scheduler] partition_mapper_max_downstream_keys=N` wording when
the global trips.

Report URL: https://github.com/apache/airflow/actions/runs/26642302447

With regards,
GitHub Actions via GitBox


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to