Skip to content
Permalink
Browse files

RX_CLOSE_IDLE accounted as sc_rx_close_idle for timeout_idle hit

RX_TIMEOUT was issued when the timeout_idle was hit waiting for another
client request and accounted as an error in sess_closed_err.

We now turn this case into an RX_CLOSE_IDLE which does not get accounted
as an error.

Closes #3208
  • Loading branch information
nigoroll committed Feb 13, 2020
1 parent 1f12348 commit 89198513a4fba2ed2370918bc7c78c61c7febdd4
Showing with 10 additions and 1 deletion.
  1. +8 −0 bin/varnishd/VSC_main.vsc
  2. +1 −1 bin/varnishd/cache/cache_session.c
  3. +1 −0 include/tbl/sess_close.h
@@ -539,6 +539,14 @@

Number of session closes with Error RX_TIMEOUT (Receive timeout)

.. varnish_vsc:: sc_rx_close_idle
:level: diag
:oneliner: Session Err RX_CLOSE_IDLE

Number of session closes with Error RX_CLOSE_IDLE:
timeout_idle has been exceeded while waiting for a
client request.

.. varnish_vsc:: sc_tx_pipe
:level: diag
:oneliner: Session OK TX_PIPE
@@ -424,7 +424,7 @@ ses_handle(struct waited *wp, enum wait_event ev, vtim_real now)

switch (ev) {
case WAITER_TIMEOUT:
SES_Delete(sp, SC_RX_TIMEOUT, now);
SES_Delete(sp, SC_RX_CLOSE_IDLE, now);
break;
case WAITER_REMCLOSE:
SES_Delete(sp, SC_REM_CLOSE, now);
@@ -40,6 +40,7 @@ SESS_CLOSE(RX_BODY, rx_body, 1, "Failure receiving req.body")
SESS_CLOSE(RX_JUNK, rx_junk, 1, "Received junk data")
SESS_CLOSE(RX_OVERFLOW, rx_overflow, 1, "Received buffer overflow")
SESS_CLOSE(RX_TIMEOUT, rx_timeout, 1, "Receive timeout")
SESS_CLOSE(RX_CLOSE_IDLE, rx_close_idle,0, "timeout_idle reached")
SESS_CLOSE(TX_PIPE, tx_pipe, 0, "Piped transaction")
SESS_CLOSE(TX_ERROR, tx_error, 1, "Error transaction")
SESS_CLOSE(TX_EOF, tx_eof, 0, "EOF transmission")

0 comments on commit 8919851

Please sign in to comment.
You can’t perform that action at this time.