Skip to content

Cancel Quick Access compute on dispose to stop orphaned jobs#4145

Open
vogella wants to merge 1 commit into
eclipse-platform:masterfrom
vogella:lv/quickaccess-cancel-compute-on-dispose
Open

Cancel Quick Access compute on dispose to stop orphaned jobs#4145
vogella wants to merge 1 commit into
eclipse-platform:masterfrom
vogella:lv/quickaccess-cancel-compute-on-dispose

Conversation

@vogella

@vogella vogella commented Jun 26, 2026

Copy link
Copy Markdown
Contributor

doDispose() never cancelled the in-flight compute job, so a closed Quick Access dialog kept querying providers and lingered in the compute job family. The test warmup made this visible: it sets "t", waits only for the first results, then closes the dialog while the lazy providers are still cold-initializing on the worker, leaving an orphaned job in the family. On a loaded macOS runner that orphan could outlive a test's 30 s wait for the family to drain, which is the testPreviousChoicesAvailableForExtension flake (#4009).

This cancels the compute job in doDispose so a closed dialog stops computing and leaves the family promptly, and makes the warmup wait for the compute to drain so the providers' slow first query finishes during setup instead of leaking into a test's timed wait. All ten QuickAccessDialogTest cases pass locally.

doDispose() left computeProposalsJob running, so a closed dialog kept
querying providers and lingered in COMPUTE_JOB_FAMILY. The setUp warmup
made this visible: it set "t", waited only for the first results, then
closed the dialog while the lazy providers were still cold-initializing
on the worker. That orphaned job stayed in the family and, on a loaded
macOS runner, could outlive a test's 30 s waitForQuickAccessResults wait,
which waits for the whole family to drain (issue eclipse-platform#4009,
testPreviousChoicesAvailableForExtension).

Cancel the compute job in doDispose so a closed dialog stops computing
and leaves the family promptly. Make the warmup wait for results and for
the compute job to drain, so the providers' slow first query finishes in
setUp rather than leaking into a test's timed wait.
@github-actions

Copy link
Copy Markdown
Contributor

Test Results

   855 files  ±0     855 suites  ±0   50m 32s ⏱️ -24s
 8 083 tests ±0   7 840 ✅ +1  243 💤 ±0  0 ❌  - 1 
20 151 runs  ±0  19 497 ✅ +1  654 💤 ±0  0 ❌  - 1 

Results for commit be26a67. ± Comparison against base commit 8059976.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant