-
Notifications
You must be signed in to change notification settings - Fork 4.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
test/gracefulstop: use stubserver instead of testservice implementation #7907
Open
pvsravani
wants to merge
9
commits into
grpc:master
Choose a base branch
from
pvsravani:stubserver-test
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 1 commit
Commits
Show all changes
9 commits
Select commit
Hold shift + click to select a range
6da62e6
switching to stubserver
pvsravani a73e23c
switching to stubserver
pvsravani 0bfd0f6
Removing redundant server and updating mutex in close()
pvsravani 3d059c2
reverting mutex and closed fields
pvsravani a623c8a
Moving the intialization of S field into the stubserver
pvsravani 61374bc
renaming d as dialer and removing sync.waitgroup()
pvsravani 1df0441
Renaming done as gracefulStopDone
pvsravani f976afd
Renaming done as gracefulStopDone
pvsravani 2190f99
Moving <-dlis.acceptCalled out of go routine
pvsravani File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Renaming done as gracefulStopDone
- Loading branch information
commit 1df0441c51d0542d49816c54796f0bc0bec068b6
There are no files selected for viewing
This file contains 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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -124,13 +124,15 @@ func (s) TestGracefulStop(t *testing.T) { | |
stubserver.StartTestService(t, ss) | ||
|
||
// 1. Start Server | ||
done := make(chan struct{}) | ||
gracefulStopDone := make(chan struct{}) | ||
<-dlis.acceptCalled | ||
ss.S.GracefulStop() | ||
close(gracefulStopDone) | ||
go func() { | ||
<-dlis.acceptCalled | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I don't think its needed to move it within go routine. Not that its wrong but this change is not needed i think. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Done |
||
ss.S.GracefulStop() | ||
close(done) | ||
close(gracefulStopDone) | ||
}() | ||
|
||
// 2. GracefulStop() Server after listener's Accept is called, but don't | ||
// allow Accept() to exit when Close() is called on it. | ||
|
||
|
@@ -159,7 +161,7 @@ func (s) TestGracefulStop(t *testing.T) { | |
t.Fatalf("FullDuplexCall= _, %v; want _, <status code Unavailable>", err) | ||
} | ||
cancel() | ||
<-done | ||
<-gracefulStopDone | ||
} | ||
|
||
// TestGracefulStopClosesConnAfterLastStream ensures that a server closes the | ||
|
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this is doing the correct thing. What we want as part of this test is for
GracefulStop
to be called whenAccept
is in the middle of accepting a connection.If you folks have convinced yourself that it actually does what it is supposed to do, then we don't need a
sync.WaitGroup
. The same can be accomplished with adone
channel.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Removed sync.WaitGroup
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
yeah i don't think we can use
sync.waitgroup
withstubserver.StartService()
.stubserver.StartTestService
creates a server and starts serving in the background. It handles server lifecycle internally. Having a done channel to track gracefulstop will work correctly.