okta / okta-sdk-golang

A Golang SDK for interacting with the Okta management API, enabling server-side code to manage Okta users, groups, applications, and more.
https://github.com/okta/okta-sdk-golang
Other
174 stars 143 forks source link

invoke cancel function after response has been fully read #370

Closed varmalho-eg closed 1 year ago

varmalho-eg commented 1 year ago

Context

We were using v2@2.11 version of okta sdk and using ListUsers and few other APIs. However, those APIs started returning no response after upgrade to v2@2.14 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 https://github.com/okta/okta-sdk-golang/issues/363 is also related to this same bug.

Go Version: 1.19.3 Os Version: MacOS 12.4 OpenAPI Spec Version:

varmalho-eg commented 1 year ago

Ah, my friend already posted a PR -- closing this in favor of https://github.com/okta/okta-sdk-golang/pull/369