[GODRIVER-7] Handle socket timeout's differently Created: 25/May/17 Updated: 28/Oct/23 Resolved: 31/May/17 |
|
| Status: | Closed |
| Project: | Go Driver |
| Component/s: | Connections |
| Affects Version/s: | None |
| Fix Version/s: | 0.0.1 |
| Type: | Improvement | Priority: | Critical - P2 |
| Reporter: | Craig Wilson | Assignee: | Craig Wilson |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
Currently, socket timeout's are controlled by using the current context's time remaining (if any). This means we are tying a user's request directly to whether we kill a socket. We should come up with a different strategy so that we don't tear down sockets artificially and throw away the potentially expensive setup we've already done. |
| Comments |
| Comment by Craig Wilson [ 31/May/17 ] |
|
This was implemented as part of GO-21. Basically, we still honor context inside the connection's read and write methods. However, there is an additional read/write timeout that is configurable (but defaults to none), and the ops package passes in a context without any timeouts or deadlines and handles checking the for cancellation itself. |