[PATCH] SPDY: fixed handling of sc->length in ngx_http_spdy_state_read_data()

Valentin V. Bartenev vbart at nginx.com
Wed Mar 26 17:01:48 UTC 2014

On Wednesday 26 March 2014 12:30:11 Xiaochen Wang wrote:
> In our production, sometimes, the disk was full. In which case, the requests
> after the POST request were handled wrongly in one spdy connection.
> Because the input body (DATA frame) of POST request could not be written to disk,
> then ngx_http_spdy_state_read_data() tried to skip this DATA frame with wrong
> sc->length, which broke spdy stream.

While I agree that there's a problem with sc->length premature adjustment, but
please note that the problem cannot be triggered by the way you described.

The "pos" pointer is adjusted as well right before ngx_write_chain_to_temp_file()
is called.

  wbr, Valentin V. Bartenev

More information about the nginx-devel mailing list