Skip to content

test(glossary): mark Glossary Terms column-selection spec as slow to fix 60s timeout flake#29603

Merged
siddhant1 merged 1 commit into
open-metadata:mainfrom
siddhant1:test/glossary-column-visibility-timeout
Jun 30, 2026
Merged

test(glossary): mark Glossary Terms column-selection spec as slow to fix 60s timeout flake#29603
siddhant1 merged 1 commit into
open-metadata:mainfrom
siddhant1:test/glossary-column-visibility-timeout

Conversation

@siddhant1

@siddhant1 siddhant1 commented Jun 30, 2026

Copy link
Copy Markdown
Member

What

Adds test.slow(true) to the Playwright test Glossary tests › Column selection and visibility for Glossary Terms table (playwright/e2e/Pages/Glossary.spec.ts), tripling its per-test timeout from the default 60s to 180s.

Why

This test intermittently times out at exactly 60s in the nightly upgrade runs:

In the merged report, both attempts of this test are timedOut at 60.0s. The trace shows the test hangs on its final assertion expect(getByTestId('glossary-terms-table')).toBeVisible() (the first line of verifyAllColumns), immediately after the last page.reload() in the "Hide All columns" step. All glossary/search APIs return 200 and there is no JS exception — the glossary page is simply still rendering its loading state past the 60s budget on a heavily-populated upgrade instance (the test runs four column-toggle + page.reload() cycles).

The other tests in this same describe block already use test.slow(true); this one was missing it.

Scope

  • One-line change, scoped to this single test. No config change.
  • This is test-hardening to stop the flaky timeout. The underlying cause (the glossary page blocking its initial render on a sequential, full-list pagination scan to locate the active glossary by FQN) is tracked separately for a product-side follow-up.

Greptile Summary

This PR adds test.slow(true) to a single Playwright test (Column selection and visibility for Glossary Terms table) that was intermittently timing out at exactly 60s in nightly upgrade runs, bringing it in line with the 17 other tests in the same file that already carry this annotation.

  • The one-line addition triples the test's timeout budget from 60s to 180s, matching the established pattern in Glossary.spec.ts.
  • No production code, configuration, or test logic is modified — this is a targeted flake-suppression patch.

Confidence Score: 5/5

Safe to merge — a single, well-precedented annotation with no logic changes.

The change adds one call to test.slow(true) inside a test body, identical in form and placement to 17 other tests already present in the file. It widens a timeout for a test that was reproducibly timing out in CI, with no modifications to test logic, production code, or configuration.

No files require special attention.

Important Files Changed

Filename Overview
openmetadata-ui/src/main/resources/ui/playwright/e2e/Pages/Glossary.spec.ts Adds test.slow(true) to the 'Column selection and visibility for Glossary Terms table' test, tripling its timeout from 60s to 180s; consistent with the same annotation already applied to 17 other tests in this file.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["Test: Column selection and visibility"] --> B["test.slow(true) annotation"]
    B -->|"Before PR - default timeout"| C["60s budget - intermittent timeout in nightly runs"]
    B -->|"After PR - slow = 3x"| D["180s budget - sufficient for upgrade instances"]
    D --> E["4x column-toggle + page.reload cycles"]
    E --> F["expect glossary-terms-table toBeVisible"]
    F --> G["Test PASS"]
Loading
%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%%
flowchart TD
    A["Test: Column selection and visibility"] --> B["test.slow(true) annotation"]
    B -->|"Before PR - default timeout"| C["60s budget - intermittent timeout in nightly runs"]
    B -->|"After PR - slow = 3x"| D["180s budget - sufficient for upgrade instances"]
    D --> E["4x column-toggle + page.reload cycles"]
    E --> F["expect glossary-terms-table toBeVisible"]
    F --> G["Test PASS"]
Loading

Reviews (1): Last reviewed commit: "test(glossary): mark Glossary Terms colu..." | Re-trigger Greptile

…fix 60s timeout flake

The "Column selection and visibility for Glossary Terms table" test
intermittently times out at the default 60s in the nightly upgrade runs
(e.g. open-metadata/openmetadata-nightly run 28412262801, shard 4). The
test performs four column-toggle + page.reload() cycles; on a heavily
populated instance the post-reload glossary page can take longer than 60s
to render the terms table, so the final verifyAllColumns() assertion times
out.

Add test.slow(true) (3x timeout -> 180s) to match the rest of the tests in
this describe block, which already use it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@siddhant1 siddhant1 requested a review from a team as a code owner June 30, 2026 08:02
Copilot AI review requested due to automatic review settings June 30, 2026 08:02

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@github-actions

Copy link
Copy Markdown
Contributor

❌ PR checklist incomplete

This PR cannot be merged until the following are addressed on its linked issue:

  • No GitHub issue is linked. Link an issue in the Development section of the PR (or add Fixes #12345 to the description). For a same-org cross-repo issue, add Fixes open-metadata/<repo>#123 to the description.

The fields live on the linked issue in the Shipping project (open the issue → right sidebar → Projects). After you set them, re-run this check (or push a commit) — issue/project changes do not re-trigger it automatically.

Maintainers can bypass this check by adding the skip-pr-checks label.

@github-actions

Copy link
Copy Markdown
Contributor

Hi there 👋 Thanks for your contribution!

The OpenMetadata team will review the PR shortly! Once it has been labeled as safe to test, the CI workflows
will start executing and we'll be able to make sure everything is working as expected.

Let us know if you need any help!

@gitar-bot

gitar-bot Bot commented Jun 30, 2026

Copy link
Copy Markdown
Code Review ✅ Approved

Increases the timeout for the Glossary Terms column-selection test to 180s to resolve intermittent 60s flakiness. No issues found.

Options

Display: compact → Showing less information.

Comment with these commands to change:

Compact
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

@siddhant1 siddhant1 added UI UI specific issues safe to test Add this label to run secure Github workflows on PRs To release Will cherry-pick this PR into the release branch labels Jun 30, 2026
@siddhant1 siddhant1 enabled auto-merge (squash) June 30, 2026 08:10
@siddhant1 siddhant1 added the skip-pr-checks Bypass PR metadata validation check label Jun 30, 2026
@siddhant1 siddhant1 merged commit 330b3c8 into open-metadata:main Jun 30, 2026
103 of 124 checks passed
@github-actions

Copy link
Copy Markdown
Contributor

Changes have been cherry-picked to the 1.13 branch.

github-actions Bot pushed a commit that referenced this pull request Jun 30, 2026
…fix 60s timeout flake (#29603)

The "Column selection and visibility for Glossary Terms table" test
intermittently times out at the default 60s in the nightly upgrade runs
(e.g. open-metadata/openmetadata-nightly run 28412262801, shard 4). The
test performs four column-toggle + page.reload() cycles; on a heavily
populated instance the post-reload glossary page can take longer than 60s
to render the terms table, so the final verifyAllColumns() assertion times
out.

Add test.slow(true) (3x timeout -> 180s) to match the rest of the tests in
this describe block, which already use it.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit 330b3c8)
@github-actions

Copy link
Copy Markdown
Contributor

Changes have been cherry-picked to the 1.12.13 branch.

github-actions Bot pushed a commit that referenced this pull request Jun 30, 2026
…fix 60s timeout flake (#29603)

The "Column selection and visibility for Glossary Terms table" test
intermittently times out at the default 60s in the nightly upgrade runs
(e.g. open-metadata/openmetadata-nightly run 28412262801, shard 4). The
test performs four column-toggle + page.reload() cycles; on a heavily
populated instance the post-reload glossary page can take longer than 60s
to render the terms table, so the final verifyAllColumns() assertion times
out.

Add test.slow(true) (3x timeout -> 180s) to match the rest of the tests in
this describe block, which already use it.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
(cherry picked from commit 330b3c8)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

safe to test Add this label to run secure Github workflows on PRs skip-pr-checks Bypass PR metadata validation check To release Will cherry-pick this PR into the release branch UI UI specific issues

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants