The c->single_connection was intended to be used as lock mechanism
to serialize modifications of request object from several threads
working with client and upstream connections. The flag is redundant
since threads in nginx have never been used that way.
c->read->closed = 1;
c->write->closed = 1;
- if (c->single_connection) {
- ngx_unlock(&c->lock);
- c->read->locked = 0;
- c->write->locked = 0;
- }
+ ngx_unlock(&c->lock);
+ c->read->locked = 0;
+ c->write->locked = 0;
ngx_mutex_unlock(ngx_posted_events_mutex);
unsigned log_error:3; /* ngx_connection_log_error_e */
- unsigned single_connection:1;
unsigned unexpected_eof:1;
unsigned timedout:1;
unsigned error:1;
return;
}
- c->single_connection = 1;
c->destroyed = 0;
#if (NGX_HTTP_SSL)
r->connection->log->action = "connecting to upstream";
- r->connection->single_connection = 0;
-
if (u->state && u->state->response_sec) {
tp = ngx_timeofday();
u->state->response_sec = tp->sec - u->state->response_sec;