It appears possible for a PUT request to enter a state where a timeout d... #500
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.
...oes not correctly fire. The asyncresult of the request is correctly passed into the SetTimeout method after creation but when it progresses to the response object the SetTimeout is neglected.
This has previously been discussed on the google groups
https://groups.google.com/forum/#!topic/restsharp/SMl7sBN72xE
This allows for a scenario where a put request can begin and if an error occurs in the response the client can remain unaware as the timeout is not called and therefore the callback never completes. I have seen this behaviour on a mobile device where the connection is dropped during a PUT request that takes a few seconds to return.
I have included two tests. One displaying the correct timeout behaviour for a GET request and one displaying the incorrect behaviour of a PUT (with content). Adding the additional SetTimeout to the async call appears to produce the same timeout behaviour n both calls.