seanghaeli opened a new issue, #76992:
URL: https://github.com/apache/airflow/issues/76992

   With `[core] multi_team` on, an asset watcher's trigger gets the team of the 
Dag that declares it, and only that team's triggerer runs it (#67605). The 
lookup that reuses an existing trigger ignores the team, so when two teams' 
Dags declare the same watcher on the same asset, both use the first team's 
trigger. The second team's asset gets events only while the first team's 
triggerer runs it: once that team stops scheduling on the asset and stops its 
triggerer, the trigger shows as orphaned and the other team's asset gets no 
more events, even though its own triggerer is up.
   
   The same gap shows up in a few other ways:
   
   - Identical watchers on different assets of two teams share a trigger when 
no Fernet key is set. With one set, the lookup never matches across Dag files, 
because it compares encrypted kwargs.
   - When one team declares the watcher and another only schedules on the 
asset, each of the second team's parses removes the watcher and the first 
team's adds it back, so the asset gets a new trigger every parse and never 
fires.
   - A watcher created before multi-team was turned on keeps no team, so no 
team's triggerer runs it.
   
   Suggestion: with multi-team on, have a Dag file's parse only reuse, add and 
remove its own team's watchers, and let another team's identical watcher stand 
in only while that team still schedules on the asset.
   


-- 
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]

Reply via email to