Skip to content
This repository has been archived by the owner on Apr 21, 2023. It is now read-only.

Commit

Permalink
Eliminate CHECK that fails (rarely) during the IPRO lookup.
Browse files Browse the repository at this point in the history
Fixes #1096
  • Loading branch information
oschaaf authored and jeffkaufman committed Mar 3, 2016
1 parent 88e3d48 commit fab4aac
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions src/ngx_base_fetch.cc
Expand Up @@ -164,15 +164,13 @@ void NgxBaseFetch::ReadCallback(const ps_event_data& data) {
return;
}

CHECK(r->count > 0) << "r->count: " << r->count;

int rc;
// If we are unlucky enough to have our connection finalized mid-ipro-lookup,
// we must enter a different flow. Also see ps_in_place_check_header_filter().
if ((ctx->base_fetch->base_fetch_type_ != kIproLookup)
&& r->connection->error) {
ngx_log_error(NGX_LOG_DEBUG, ngx_cycle->log, 0,
"pagespeed [%p] request already finalized", r);
"pagespeed [%p] request already finalized %d", r, r->count);
rc = NGX_ERROR;
} else {
rc = ps_base_fetch::ps_base_fetch_handler(r);
Expand All @@ -186,8 +184,11 @@ void NgxBaseFetch::ReadCallback(const ps_event_data& data) {

ngx_connection_t* c = r->connection;
ngx_http_finalize_request(r, rc);
// See http://forum.nginx.org/read.php?2,253006,253061
ngx_http_run_posted_requests(c);

if (!r->connection->error) {
// See http://forum.nginx.org/read.php?2,253006,253061
ngx_http_run_posted_requests(c);
}
}

void NgxBaseFetch::Lock() {
Expand Down

0 comments on commit fab4aac

Please sign in to comment.