Commit message (Collapse) | Author | Age | |
---|---|---|---|
* | Drop failed sub-streams during both Get and Return. | Todd Wang | 2018-08-03 |
| | | | | | | | | | | | | The old code ensured that failed sub-streams would not be re-used, but had two flaws: 1) It only checked for failed sub-streams during Return. 2) It didn't actually remove the failed sub-streams from our state. The new code fixes these two flaws, and adds an extra test that explains why (1) is insufficient. PiperOrigin-RevId: 207333296 | ||
* | Ensure failed sub-streams are not re-used. | Todd Wang | 2018-07-25 |
Streams have a monotonic state machine; if a stream encounters any error, it will remain in an error state forever. Without this change, a previously failed sub-stream will be put back on sub_streams_, only to cause the next usage of the sub-stream to trivially fail. PiperOrigin-RevId: 206112024 |