1. 18 Jan, 2009 2 commits
  2. 14 Jan, 2009 2 commits
    • Poul-Henning Kamp's avatar
      After HSH_Lookup() returns NULL indicating a busy object, we diddled · f50a3412
      Poul-Henning Kamp authored
      the session a bit to transfer the per-request stats to the session
      counters with SES_Charge().
      
      Not only was it inconsistent to charge accounting data in the middle
      of a request, it was also illegal because after the hash lock was
      released we no longer owned the session.
      
      Once a system is under sufficient load that there is a queue for the
      CPU, a race could happen where upon hitting a busy object, the hash lock
      was released, another thread would schedule, finish the busy object,
      start the sessions on the waiting list, finish off the request we had
      and then when we get the cpu again and access it, it's gone.
      
      The previous commit (r3512) eliminated the need to call SES_Charge,
      this commit removes the (option) shmlog message inside the hash lock
      thus, hopefully, eliminating the race that caused #418.
      
      Fixes: #418
      
      
      git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@3513 d4fa192b-c00b-0410-8231-f00ffab90ce4
      f50a3412
    • Poul-Henning Kamp's avatar
      Originally we shaved 64 bytes from the session to the worker thread · afec9950
      Poul-Henning Kamp authored
      by keeping the current requests accounting stats in the worker thread.
      
      For reasons which will be explained in the next commit, this is no
      longer a good idea, and this commit moves these counters from
      the worker thread to the session at a slight but all in all
      trivial cost in memory footprint.
      
      Remove the call to SES_Charge() when we hit a busy object, it is
      not necessary to clean the worker thread counters here now.
      
      Move these counters from the worker thread to the see
      
      
      git-svn-id: http://www.varnish-cache.org/svn/trunk/varnish-cache@3512 d4fa192b-c00b-0410-8231-f00ffab90ce4
      afec9950
  3. 13 Jan, 2009 4 commits
  4. 12 Jan, 2009 5 commits
  5. 10 Jan, 2009 5 commits
  6. 21 Dec, 2008 21 commits
  7. 20 Dec, 2008 1 commit