You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airflow.apache.org by GitBox <gi...@apache.org> on 2022/12/09 08:41:58 UTC
[GitHub] [airflow] Taragolis commented on pull request #28248: Hopefully stabilize quarantined tests for celery hanging
Taragolis commented on PR #28248:
URL: https://github.com/apache/airflow/pull/28248#issuecomment-1344013229
Just a thought:
- Do we actually need run this in the loop?
- Could we actually run by use the same objects and use `flaky` library (which actually install as dev dependency) for multiple execution?
- Because each flaky run it is separate test than we actually could decrease `execution_timeout`
Some scratch implementation
```python
@pytest.mark.quarantined
@pytest.mark.setup_timeout(0)
class TestCeleryHang:
RUNS = 500
@classmethod
def setup_class(cls):
task = MockTask()
num_tasks = 26
cls.executor = celery_executor.CeleryExecutor()
cls.task_tuples_to_send = [(None, None, None, task) for _ in range(num_tasks)]
cls.expected = [(None, None, 1) for _ in range(num_tasks)]
@pytest.mark.flaky(max_runs=RUNS, min_passes=RUNS)
@pytest.mark.execution_timeout(5)
def test_send_tasks_to_celery_hang(self, register_signals):
"""
Test that celery_executor does not hang after many runs.
"""
assert self.executor._send_tasks_to_celery(self.task_tuples_to_send) == self.expected
```
WDYT?
--
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: commits-unsubscribe@airflow.apache.org
For queries about this service, please contact Infrastructure at:
users@infra.apache.org