Skip to content

Conversation

@robbyt
Copy link
Owner

@robbyt robbyt commented Feb 6, 2026

Previously, in runnables/composite/runner.go, the Run() method created a derived runCtx but passed the original ctx to boot(). Then later, boot() launches child goroutines via startRunnable(ctx, ...), which calls context.WithCancel(ctx) per child. Because ctx is the caller's context (not runCtx), the children are not in runCtx's cancellation tree.

@github-actions
Copy link

github-actions bot commented Feb 6, 2026

Dependency Review

✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.

Scanned Files

None

@sonarqubecloud
Copy link

sonarqubecloud bot commented Feb 6, 2026

@robbyt robbyt changed the title fix a race condition in the composite runner fix a race condition and shutdown in the composite Runnable Feb 6, 2026
@robbyt robbyt merged commit d13c299 into main Feb 6, 2026
3 checks passed
@robbyt robbyt deleted the rterhaar/fix-composite-boot-ctx branch February 6, 2026 23:29
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