-
Notifications
You must be signed in to change notification settings - Fork 654
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
Fix Connection is being forcefully terminated
error in GUI
#3829
base: main
Are you sure you want to change the base?
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #3829 +/- ##
=======================================
Coverage 88.94% 88.95%
=======================================
Files 256 256
Lines 14584 14584
=======================================
+ Hits 12972 12973 +1
+ Misses 1612 1611 -1 ☔ View full report in Codecov by Sentry. |
5b6f110
to
b422b72
Compare
ca75b7a
to
a2ecad8
Compare
b422b72
to
239cb3f
Compare
8fab6a6
to
0e909a0
Compare
@andrei-toterman, could you share repro steps for the issue this solves? |
@Sploder12 The problem is that it doesn't happen all the time. But you can try having two stopped instances, go to the instance list page, start one instance and then immediately try starting the other one. That was one way I managed to reproduce it a few times. The other way I could reproduce it all the time is with the new 'Open shell' button functionality, which would start the instance if its stopped. But that PR has this branch as a base, precisely because the issue would occur all the time. So if you want a good way to test it, you could rebase that branch on main, see if the issue occurs, than rebase it back on this branch and see the issue not occur anymore. Sorry for not having better steps, it's kind of an elusive issue 😅 |
Ah, I see, thanks! |
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.
LGTM! Just a small DRY comment
82e8fb4
to
2c63e3d
Compare
we have bidirectional streaming rpcs, but we usually send only one response back on that stream for most operations. therefore, the gui would only read data from the stream until it got the first reply. but this introduced errors in which the stream was disposed too early. now we read everything from the stream, so that issue shouldn't happen.
2c63e3d
to
acf4d8f
Compare
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.
LGTM! Nice job!
acf4d8f
to
7f7d7fd
Compare
@Sploder12 oops, the behavior after my refactor was not consistent with the previous behavior. Before, we were not logging all of the requests and replies for the |
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.
Oops, I missed that too. I paid extra attention to the logging this time and it looks good to me!
we have bidirectional streaming rpcs, but we usually send only one response back on that stream for most operations. therefore, the gui would only read data from the stream until it got the first reply. but this introduced errors in which the stream was disposed too early. now we read everything from the stream, so that issue shouldn't happen.