SEPURI-SAI-KRISHNA commented on issue #71321:
URL: https://github.com/apache/airflow/issues/71321#issuecomment-5224488689

   Tested `apache-airflow-providers-google==22.3.0rc4` for 
[#70430](https://github.com/apache/airflow/pull/70430) (Fail deferred Cloud 
Composer tasks when the GCP operation errors) — works as expected.
   
   Re-ran everything against the re-cut rather than only carrying over my rc3 
result from 
https://github.com/apache/airflow/issues/71246#issuecomment-5208084620. 
Installed the RC wheel from PyPI into a clean Python 3.12.3 virtualenv with 
Airflow 3.3.0; `pip check` is clean. Wheel SHA-256 is 
`f1a1476759aa3177ec171ec3810bb8dacb8b4057b5864153148a09297fab213a`, matching 
the PyPI artifact.
   
   **Unit tests** against the installed RC — 6 passed, including the two added 
by the PR:
   
   ```
   
TestCloudComposerExecutionTrigger::test_run_raises_when_operation_finished_with_error
 PASSED
   
TestCloudComposerExecutionTrigger::test_run_yields_event_when_operation_finished_without_error
 PASSED
   ```
   
   **Behavioural check with real LRO objects.** The unit tests use a stand-in, 
so I also drove the trigger with genuine 
`google.longrunning.operations_pb2.Operation` values:
   
   | Scenario | rc4 |
   |---|---|
   | `done=True` with `error.message` set | raises `AirflowException: Cloud 
Composer Environment error: quota exceeded` |
   | `done=True`, no error | yields `{'operation_name': ..., 'operation_done': 
True}` |
   | polls `done=False` twice, then finishes with error | raises after polling |
   
   **Control against the last released provider.** I installed `22.2.2` 
(pre-fix) in a separate venv and ran the identical scenarios. The bug 
reproduces there — a failed operation yields a **success** event:
   
   ```
   CASE1 BUG REPRODUCED: failed operation yielded SUCCESS -> {'operation_name': 
'op', 'operation_done': True}
   CASE3 BUG REPRODUCED: poll-then-fail yielded SUCCESS -> {'operation_name': 
'op', 'operation_done': True}
   ```
   
   and the PR's regression test fails on it:
   
   ```
   test_run_raises_when_operation_finished_with_error FAILED - Failed: DID NOT 
RAISE AirflowException
   ```
   
   So the change is confirmed to be the thing that fixes it, not an incidental 
pass.
   
   For completeness, 
`airflow/providers/google/cloud/triggers/cloud_composer.py` is byte-identical 
between rc3 and rc4 (`sha256 
4990060e9847b783c1739115292990bb3e125626984ed7ea889bfbd0bb06f4b8`), so the 
re-cut did not disturb this change.
   
   I have not tested the Python 3.14 installability fix (#71273) — no 3.14 
interpreter available here — and I don't have a live Composer environment, so 
this is verification against the released artifact rather than a real 
environment creation/update failure.
   
   ---
   Drafted-by: Claude Code (Opus 5); reviewed by @SEPURI-SAI-KRISHNA before 
posting
   


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