jscheffl commented on code in PR #63498:
URL: https://github.com/apache/airflow/pull/63498#discussion_r3149076722


##########
providers/edge3/src/airflow/providers/edge3/worker_api/datamodels.py:
##########
@@ -91,7 +91,7 @@ class EdgeJobFetched(EdgeJobBase):
     """Job that is to be executed on the edge worker."""
 
     command: Annotated[
-        ExecuteTask,
+        ExecuteTypeBody,

Review Comment:
   Sorry, maybe coming a bit late during second pass: So far the API was always 
backwards compatible, means if you have a Edge worker with a previous version 
running it would happily continue to run and softly "drain" if there is a 
provider or Airflow core version mis-match.
   
   Now here the return type for job fetching changes, means if the worker would 
attempt to fetch a job with an old version, the job would be assigned but the 
worker (probably?) fails in de-serializing the content and fails. Probably 
before draining.
   
   Have you tested this and how does it behave?
   (Compared to Task SDK there is currently no Cadwyn layer for versioning, 
this is in the backlog...)
   
   If this is a problem can we make it somehow compatible or make a parallel 
endpoint such that it is not failing on old clients until they drain and jobs 
are not pulled and never executed?



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