228 item->intdata = 0; |
229 item->intdata = 0; |
229 |
230 |
230 EventHttpIO *io = item->data1; |
231 EventHttpIO *io = item->data1; |
231 io->error = 4; |
232 io->error = 4; |
232 |
233 |
|
234 log_ereport(LOG_DEBUG, "trace reqid: %016llx request timeout", (unsigned long long int)io->request->connection->id); |
|
235 |
233 if(ev_remove_poll(h, io->request->connection->fd)) { |
236 if(ev_remove_poll(h, io->request->connection->fd)) { |
234 log_ereport(LOG_FAILURE, "sessionhandler: request timeout: cannot remove poll"); |
237 log_ereport(LOG_FAILURE, "sessionhandler: request timeout: cannot remove poll"); |
235 } |
238 } |
236 evt_request_error(h, io->io_event); |
239 evt_request_error(h, io->io_event); |
237 } |
240 } |
550 int evt_request_error(EventHandler *h, Event *event) { |
553 int evt_request_error(EventHandler *h, Event *event) { |
551 EventHttpIO *io = event->cookie; |
554 EventHttpIO *io = event->cookie; |
552 HttpParser *parser = io->parser; |
555 HttpParser *parser = io->parser; |
553 HTTPRequest *request = io->request; |
556 HTTPRequest *request = io->request; |
554 |
557 |
|
558 log_ereport(LOG_DEBUG, "trace reqid: %016llx request error", (unsigned long long int)request->connection->id); |
|
559 |
555 if(event->error) { |
560 if(event->error) { |
556 log_ereport(LOG_VERBOSE, "sessionhandler http io error: %d fd: %d", io->error, request->connection->fd); |
561 log_ereport(LOG_VERBOSE, "sessionhandler http io error: %d fd: %d", io->error, request->connection->fd); |
557 } |
562 } |
558 |
563 |
559 // remove timeout |
564 // remove timeout |
673 |
678 |
674 if(ev_remove_poll(h, conn->fd)) { |
679 if(ev_remove_poll(h, conn->fd)) { |
675 log_ereport(LOG_FAILURE, "sessionhandler: keep-alive timeout: cannot remove poll"); |
680 log_ereport(LOG_FAILURE, "sessionhandler: keep-alive timeout: cannot remove poll"); |
676 } |
681 } |
677 |
682 |
678 log_ereport(LOG_DEBUG, "trace reqid: %016llx connection destroyed | keep_alive timeout", (unsigned long long int)conn->id); |
683 log_ereport(LOG_DEBUG, "trace reqid: %016llx keep_alive timeout", (unsigned long long int)conn->id); |
679 connection_destroy(conn); |
684 connection_destroy(conn); |
680 free(ioevent); |
685 free(ioevent); |
681 free(item); |
686 free(item); |
682 } |
687 } |