Merge lp:~jameinel/bzr/2.5-conn-reset-socket-pipe-1047325 into lp:bzr/2.5
Proposed by
John A Meinel
Status: | Merged | ||||
---|---|---|---|---|---|
Approved by: | John A Meinel | ||||
Approved revision: | no longer in the source branch. | ||||
Merged at revision: | 6511 | ||||
Proposed branch: | lp:~jameinel/bzr/2.5-conn-reset-socket-pipe-1047325 | ||||
Merge into: | lp:bzr/2.5 | ||||
Diff against target: |
78 lines (+25/-5) 3 files modified
bzrlib/osutils.py (+5/-2) bzrlib/smart/medium.py (+2/-2) bzrlib/tests/test_osutils.py (+18/-1) |
||||
To merge this branch: | bzr merge lp:~jameinel/bzr/2.5-conn-reset-socket-pipe-1047325 | ||||
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Richard Wilbur | Approve | ||
Review via email: mp+123535@code.launchpad.net |
Commit message
Treat socket.error(EPIPE) as a ConnectionReset (bug #1047325) so that clients will properly reconnect.
Description of the change
This updates osutils.send_all to translate more failures into errors.
I was originally going to do it at the higher level, but then I realized nobody who uses send_all really wants to be handling the raw IOError/
This will conflict a bit with my other osutils.send_all patch, but I'll handle resolving the conflicts.
To post a comment you must log in.
This looks good but I agree the integration with your other patch is very important. Should the other patch also treat a single 0 return value as a ConnectionReset?
+1