Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR adds go vet static analysis to the CI pipeline and fixes race detector issues in the stress tests by replacing direct t.FailNow() calls from goroutines with an error signaling channel. The change also removes an unused context cancellation function in cmd/mount.go.
Key Changes
- Added
go vetstep to CI pipeline to catch concurrency issues and other code problems - Refactored stress test workers to use error channels instead of calling
t.FailNow()from goroutines (which is unsafe) - Removed unused cancel function from context creation in mount command
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 5 comments.
| File | Description |
|---|---|
| test/stress_test/stress_test.go | Refactored worker functions to use error signaling channels and select statements for error handling instead of calling t.FailNow() directly from goroutines |
| cmd/mount.go | Removed unused cancel function from context.WithCancel() call, replaced with context.Background() |
| blobfuse2-1es_ci.yaml | Added go vet static analysis step to CI pipeline after build and before lint checks |
Critical Issues Found: The error channel implementation has several race conditions and potential deadlocks that need to be addressed:
- The
errSigchannels are unbuffered, which can cause workers to block when sending errors - Workers continue to send to the
resultschannel even after reporting errors, leading to race conditions when the main goroutine callst.FailNow()
d46185b to
55b6cfb
Compare
vibhansa-msft
approved these changes
Dec 4, 2025
souravgupta-msft
approved these changes
Dec 4, 2025
55b6cfb to
e95eb11
Compare
e95eb11 to
6693e24
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Type of Change
Description
This will pass the test once these PR's 1, 2 are merged
How Has This Been Tested?
Checklist
Related Links