Skip to content

[None][infra] Retry SLURM agent online timeouts - #17586

Open
Mgluhovskoi wants to merge 2 commits into
NVIDIA:mainfrom
Mgluhovskoi:agent/slurm-agent-online-timeout
Open

[None][infra] Retry SLURM agent online timeouts#17586
Mgluhovskoi wants to merge 2 commits into
NVIDIA:mainfrom
Mgluhovskoi:agent/slurm-agent-online-timeout

Conversation

@Mgluhovskoi

@Mgluhovskoi Mgluhovskoi commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

Description

Retry SLURM Jenkins-agent connection timeouts as infrastructure failures.

After a SLURM allocation reaches RUNNING, the pipeline currently waits up to one hour for its Jenkins agent and then raises an untyped pipeline error. That error bypasses the existing SLURM infrastructure-retry path.

This change:

  • reduces the RUNNING-to-online wait from 60 minutes to 10 minutes;
  • prints the last 200 setup-log lines before failing, without allowing log retrieval problems to mask the timeout;
  • throws a transient, SLURM-scoped InfraFailure with a dedicated typed marker.

The existing retry loop then makes at most one fresh SLURM attempt, subject to the existing per-stage retry cap and remaining-CI-budget check. The separate SLURM queue wait is unchanged.

Rationale

In the sampled 500-build dataset, 94.9% of successful agent connections completed within five minutes. Waiting an additional 50 minutes before retrying provides little recovery value and can consume most of the pipeline budget.

Test Coverage

  • Ran the repository pre-commit suite for jenkins/L0_Test.groovy.
  • Verified the polling calculation is exactly 20 × 30 seconds = 600 seconds.
  • Verified the thrown exception is TRANSIENT, scoped to SLURM, and reaches the existing typed-exception classification and one-retry path.
  • Verified the current shared-library classifier passes same-scope typed InfraFailure instances through unchanged.
  • Ran git diff --check.

Dev Engineer Review

  • Reduced the SLURM agent-online timeout from 60 minutes to 10 minutes.
  • Added setup-log tail output before timeout failure.
  • Prevented setup-log retrieval errors from masking the original timeout.
  • Propagated interruptions while tailing SLURM logs.
  • Added a typed transient SLURM InfraFailure for retry classification.
  • Changed allocation handling to fail for every non-success queue result.
  • Left the separate SLURM queue wait unchanged.
  • No public API or declaration changes were identified.
  • No test files, test-list files, or configuration files were changed.

QA Engineer Review

No test changes.

@Mgluhovskoi
Mgluhovskoi marked this pull request as ready for review August 13, 2026 00:03
@Mgluhovskoi
Mgluhovskoi requested a review from a team as a code owner August 13, 2026 00:03
@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@coderabbitai

coderabbitai Bot commented Aug 13, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: d4d6cc42-c8a5-454a-8801-b114e145af7f

📥 Commits

Reviewing files that changed from the base of the PR and between bc6114f and e1a271b.

📒 Files selected for processing (1)
  • jenkins/L0_Test.groovy
🚧 Files skipped from review as they are similar to previous changes (1)
  • jenkins/L0_Test.groovy

Walkthrough

The Jenkins SLURM startup flow now stops on all nonzero queue results, polls for 10 minutes, propagates interruptions during log retrieval, and raises typed transient failures after startup timeouts.

Changes

SLURM agent startup flow

Layer / File(s) Summary
Queue validation and startup failure reporting
jenkins/L0_Test.groovy
Nonzero queue-wait results stop the stage. Agent polling is limited to 10 minutes. Startup timeouts retrieve setup-log tails when possible and raise transient SLURM InfraFailure errors. Interruptions propagate during log retrieval.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to e1a27

This localized change shortens SLURM agent connection timeouts and routes transient failures through the existing retry behavior; no actionable merge-blocking risk remains after normal checks and review.

Suggested reviewers: mlefeb01, emmaqiaoch

Sequence Diagram(s)

sequenceDiagram
  participant JenkinsPipeline
  participant SLURMQueue
  participant SLURMAgent
  JenkinsPipeline->>SLURMQueue: wait for queue result
  SLURMQueue-->>JenkinsPipeline: success or nonzero status
  JenkinsPipeline->>SLURMAgent: poll agent availability for up to 10 minutes
  SLURMAgent-->>JenkinsPipeline: online or unavailable
  JenkinsPipeline->>SLURMAgent: retrieve setup-log tail
  SLURMAgent-->>JenkinsPipeline: setup-log tail or retrieval failure
  JenkinsPipeline-->>JenkinsPipeline: raise transient SLURM InfraFailure
Loading
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the infrastructure change: retry SLURM agent online timeouts.
Description check ✅ Passed The description explains the problem, solution, rationale, and test coverage; the optional PR checklist section is not included.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@jenkins/L0_Test.groovy`:
- Around line 1307-1321: Update echoRemoteLogTail to catch InterruptedException
before its broad Exception handler and rethrow it unchanged, allowing
FlowInterruptedException to propagate. Leave the existing timeout-block
interruption handling unchanged.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: 0b7787ac-72a6-4273-bd5e-463dd098e8b7

📥 Commits

Reviewing files that changed from the base of the PR and between ec3e1a1 and 622971f.

📒 Files selected for processing (1)
  • jenkins/L0_Test.groovy

Comment thread jenkins/L0_Test.groovy
@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65721 [ run ] triggered by Bot. Commit: 622971f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65721 [ run ] completed with state ABORTED. Commit: 622971f

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65727 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65727 [ run ] completed with state FAILURE. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53443 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65873 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65873 [ run ] completed with state FAILURE. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53567 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65912 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #65912 [ run ] completed with state SUCCESS. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53603 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66049 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66060 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66049 [ run ] completed with state ABORTED. Commit: bc6114f

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66063 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github/17586-bc6114f #66060 was force-killed by a newer pipeline run.
L0 job information not available (job may not have been triggered yet).

Link to superseding invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66063 [ run ] completed with state SUCCESS. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53746 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66096 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66096 [ run ] completed with state SUCCESS. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53773 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66154 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66154 [ run ] completed with state FAILURE. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53829 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66179 [ run ] triggered by Bot. Commit: bc6114f Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66179 [ run ] completed with state FAILURE. Commit: bc6114f
/LLM/main/L0_MergeRequest_PR pipeline #53851 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

Signed-off-by: Maxim Gluhovskoi <mgluhovskoi@nvidia.com>
Signed-off-by: Maxim Gluhovskoi <mgluhovskoi@nvidia.com>
@Mgluhovskoi
Mgluhovskoi force-pushed the agent/slurm-agent-online-timeout branch from bc6114f to e1a271b Compare August 14, 2026 13:17

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66281 [ run ] triggered by Bot. Commit: e1a271b Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66281 [ run ] completed with state SUCCESS. Commit: e1a271b
/LLM/main/L0_MergeRequest_PR pipeline #53941 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66310 [ run ] triggered by Bot. Commit: e1a271b Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66310 [ run ] completed with state SUCCESS. Commit: e1a271b
/LLM/main/L0_MergeRequest_PR pipeline #53965 completed with status: 'FAILURE'

CI Report

⚠️ Action Required:

  • Please check the failed tests and fix your PR
  • If you cannot view the failures, ask the CI triggerer to share details
  • Once fixed, request an NVIDIA team member to trigger CI again

CI Agent Failure Analysis

Link to invocation

@Mgluhovskoi

Copy link
Copy Markdown
Collaborator Author

/bot run

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66344 [ run ] triggered by Bot. Commit: e1a271b Link to invocation

@tensorrt-cicd

Copy link
Copy Markdown
Collaborator

PR_Github #66344 [ run ] completed with state SUCCESS. Commit: e1a271b
/LLM/main/L0_MergeRequest_PR pipeline #53986 completed with status: 'SUCCESS'

CI Report

Link to invocation

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.

3 participants