1. 18 Oct, 2023 8 commits
    • Nils Goroll's avatar
      Copy rapid reset parameters to the h2 session · f820f801
      Nils Goroll authored
      This will allow per-session adjustments and also significantly
      lower the risk of inconsistent calculations in the rate limit
      code during parameter changes.
      
      Ref #3996
      f820f801
    • Nils Goroll's avatar
      Start NEXT sections in vrt.h and changes.rst · 4d584ddb
      Nils Goroll authored
      to anchor patches
      4d584ddb
    • Dridi Boukelmoune's avatar
      vtc: Missing synchronization in t02025 · b4c50302
      Dridi Boukelmoune authored
      Noticed while porting #3998 to the 6.0 branch with a varnishtest more
      sensitive to timing.
      b4c50302
    • Dridi Boukelmoune's avatar
      vtc: Stabilize r3996 and increase coverage · 4991d9f6
      Dridi Boukelmoune authored
      With #3998 we need to ensure streams are not going to skip vcl_recv if
      reset faster than reaching this step for the request task.
      
      The alternative to prevent the vcl_req_reset feature from interfering
      is to simply disable it.
      4991d9f6
    • Dridi Boukelmoune's avatar
      http2_session: Implement transport polling · 05a68698
      Dridi Boukelmoune authored
      The error check is not performed in a critical section to avoid
      contention, at the risk of not seeing the error until the next
      transport poll.
      05a68698
    • Dridi Boukelmoune's avatar
      vcl_vrt: Skip VCL execution if the client is gone · 6ad7be6f
      Dridi Boukelmoune authored
      Once a client is reportedly gone, processing its VCL task(s) is just a
      waste of resources. The execution of client-facing VCL is intercepted
      and an artificial return(fail) is returned in that scenario.
      
      Thanks to the introduction of the universal return(fail) proper error
      handling and resource tear down is already in place, which makes this
      change safe modulus unknown bugs. This adds a circuit breaker anywhere
      in the client state machine where there is VCL execution.
      
      A new Reset time stamp is logged to convey when a task does not complete
      because the client is gone. This is a good complement to the walk away
      feature and its original circuit breaker for the waiting list, but this
      has not been integrated yet.
      
      While the request is technically failed, it won't increase the vcl_fail
      counter, and a new req_reset counter is incremented. This new behavior
      is guarded by a new vcl_req_reset feature flag, enabled by default.
      
      Refs #3835
      Refs 61a15cbf
      Refs e5efc2c8
      Refs ba54dc91
      Refs 6f50a00f
      Refs b8816994
      6ad7be6f
    • Dridi Boukelmoune's avatar
      transport: New poll method · ff8ae1fa
      Dridi Boukelmoune authored
      The goal is for top-level transports to report whether the client is
      still present or not.
      ff8ae1fa
    • Dridi Boukelmoune's avatar
      vtc: Avoid cycling the barrier in t02014 · 26352867
      Dridi Boukelmoune authored
      It was particularly hard to follow once we reach client c3.
      26352867
  2. 17 Oct, 2023 7 commits
  3. 16 Oct, 2023 1 commit
  4. 13 Oct, 2023 2 commits
  5. 11 Oct, 2023 3 commits
  6. 06 Oct, 2023 1 commit
  7. 04 Oct, 2023 5 commits
    • Nils Goroll's avatar
      Renovate autoconf and varnish.m4 · 8997e88d
      Nils Goroll authored
      this is required for autoconf 2.71, but I have kept the required
      version at 2.69 and tested that the changes are compatible.
      
      Most of the changes come from autoupdate, with this change:
      
      AC_PROG_CC_STDC is obsolete, but older autoconf versions
      do not set the highest possible c standard.
      
      So we keep AC_PROG_CC_C99 because we actually require
      c99, while AC_PROG_CC_STDC could fall back to c89
      
      For varnish.m4, we should apply the same canonical settings
      as for varnishd itself
      8997e88d
    • Nils Goroll's avatar
      Update autoconf macros · c8bb85b5
      Nils Goroll authored
      ... except for ax_with_curses.m4 which requires PKG_CHECK_EXISTS which,
      apparently, cci does not have
      
      should we consider again to not have them and rather require autoconf-archive
      be installed?
      c8bb85b5
    • Dridi Boukelmoune's avatar
      507ca25e
    • Dridi Boukelmoune's avatar
      build: Make things up better about daemons · 304ebd24
      Dridi Boukelmoune authored
      Otherwise we end up with a broken output outside of MacOS:
      
          checking whether daemon() works... checking for daemon... yes
      
      Now it's one or the other:
      
          checking whether daemon() works... no
          checking for daemon... yes
      
      If we want to lie, we should at least be good at it.
      304ebd24
    • Dridi Boukelmoune's avatar
      build: Squash automake warning on vmod_debug.vcc · 8da085a6
      Dridi Boukelmoune authored
      By conditionally setting vmod_*_vcc variables in includes we can get rid
      of a double definition warning.
      8da085a6
  8. 02 Oct, 2023 3 commits
  9. 26 Sep, 2023 6 commits
  10. 21 Sep, 2023 1 commit
  11. 20 Sep, 2023 1 commit
  12. 19 Sep, 2023 2 commits