[TIMOB-3118] Android: 304 status causes timeouts
GitHub Issue | n/a |
---|---|
Type | Bug |
Priority | Medium |
Status | Closed |
Resolution | Fixed |
Resolution Date | 2011-04-17T02:00:58.000+0000 |
Affected Version/s | n/a |
Fix Version/s | Release 1.6.0 M10 |
Components | Android |
Labels | android, defect, release-1.6.0, reported-1.6.0, rplist |
Reporter | Rick Blalock |
Assignee | Don Thorp |
Created | 2011-04-15T03:37:21.000+0000 |
Updated | 2011-04-17T02:00:58.000+0000 |
Description
Zipcar is reporting an issue where a 304 is returned from their server subsequent requests will timeout. I've tested this and it does happen though not all the time. The customer has supplied a runnable app to test here: http://developer.appcelerator.com/helpdesk/view/65941#c343981">http://developer.appcelerator.com/helpdesk/view/65941#c343981
Attachments
File | Date | Size |
---|---|---|
app.js | 2011-04-15T03:37:21.000+0000 | 2426 |
Triage, if too risky we'll have to consider 1.6.1 or 1.7.0.
(from [ccc3a3073f757c32053e9dd8eb596b58a30001ca]) [#3144 state:fixed-in-qa] [#3118 state:fixed-in-qa] modify http client to release stale connections
sometimes http client does not correctly release stale connections when exceptions are thrown or certain responses are received (304) in this case. upon receiving exception, manually release any idle or expired connections. also modified http client to respect unique timeout values per TiHTTPClient instance rather than setting the timeout value on the shared http client instance.
https://github.com/appcelerator/titanium_mobile/commit/ccc3a3073f757c32053e9dd8eb596b58a30001ca"> https://github.com/appcelerator/titanium_mobile/commit/ccc3a3073f75...
(from [b9a4f2cec1823d7d6842baf7f59a1e4cf81458ad]) [#3144 state:fixed-in-qa] [#3118 state:fixed-in-qa] modify http client to release stale connections
sometimes http client does not correctly release stale connections when exceptions are thrown or certain responses are received (304) in this case. upon receiving exception, manually release any idle or expired connections. also modified http client to respect unique timeout values per TiHTTPClient instance rather than setting the timeout value on the shared http client instance.
(cherry picked from commit ccc3a3073f757c32053e9dd8eb596b58a30001ca) https://github.com/appcelerator/titanium_mobile/commit/b9a4f2cec1823d7d6842baf7f59a1e4cf81458ad"> https://github.com/appcelerator/titanium_mobile/commit/b9a4f2cec182...
Please verify with attached test app which if modified version of the test app provided in HD ticket. Basically, whenever you click the button on the first tab, you should fire off both requests. Even as the 304 response is received, you should not see a timeout on further requests.
Excellent, I'll also test against our full suite of requests with tomorrow's CI build. Thanks!
This has addressed the issue for me, thank you!
nexus 2, G1, todays pull and Opies excellent test content