microsoftgraph / microsoftgraph/msgraph-sdk-java
Repeated leaked connections on `delete` by version and `permanentDelete`
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 444
- Forks
- 154
- Avg merge
- 18h 28m
- Merged PRs (30d)
- 4
Description
Describe the bug
We're getting this error very consistently when trying to permantently delete a drive item via API:
WARNING: A connection to https://graph.microsoft.com/ was leaked. Did you forget to close a response body?
java.lang.Throwable: response.body().close()
at okhttp3.internal.platform.Platform.getStackTraceForCloseable(Platform.kt:143)
at okhttp3.internal.connection.Transmitter.callStart(Transmitter.kt:111)
at okhttp3.RealCall.execute(RealCall.kt:63)
at com.microsoft.kiota.http.OkHttpRequestAdapter.getHttpResponseMessage(OkHttpRequestAdapter.java:747)
at com.microsoft.kiota.http.OkHttpRequestAdapter.sendPrimitive(OkHttpRequestAdapter.java:364)
at com.microsoft.graph.drives.item.items.item.permanentdelete.PermanentDeleteRequestBuilder.post(PermanentDeleteRequestBuilder.java:53)
at com.microsoft.graph.drives.item.items.item.permanentdelete.PermanentDeleteRequestBuilder.post(PermanentDeleteRequestBuilder.java:42)
Expected behavior
No leaked connections
How to reproduce
client.drives().byDriveId("...").items().byDriveItemId("root:/...:").permanentDelete().post()
SDK Version
6.30.0
Latest version known to work for scenario above?
No response
Known Workarounds
No response
Debug output
Click to expand log
```</details>
### Configuration
_No response_
### Other information
_No response_
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the generated PermanentDeleteRequestBuilder.java entry point shown in the stack trace, then inspect OkHttpRequestAdapter response handling. Reproduce the call using permanentDelete().post() against the stated SDK scenario and trace response-body closure. Done means the request completes without leaked-connection warnings.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100