invoke cancel function after response has been fully read #370
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.
Context
We were using [email protected] version of okta sdk and using ListUsers and few other APIs. However, those APIs started returning no response after upgrade to [email protected] version of SDK.
Summary
When caller passes timeout parameter for these APIs, sdk invokes context cancel function before response has been fully read causing truncation of response. This was not getting caught as io.ReadAll error return was getting ignored. context cancel function needs to be called after all io.ReadAll invocations on http response body.
ref: https://groups.google.com/g/golang-nuts/c/2FKwG6oEvos
I believe this issue #363 is also related to this same bug.
Go Version: 1.19.3
Os Version: MacOS 12.4
OpenAPI Spec Version: