Skip to content
  1. Sep 29, 2006
    • Ruediger Pluem's avatar
      * Move the tasks of eor_bucket_destroy (status update, transaction logging) to · aee0b251
      Ruediger Pluem authored
        a cleanup function that is registered with the request pool.
        eor_bucket_destroy only destroys the request pool if there is still a request
        at this point of time which triggers the call of the cleanup function.
      
        This is needed as the eor bucket could be (and usually is) allocated from
        a pool different from the request pool (the connection pool in this case).
        This can lead to situations where eor_bucket_destroy is called at a point of
        time when the request pool had been already destroyed. But the status update
        and the transaction logging rely on the request pool.
      
        In practise this happens with the worker MPM if the client refuses to read
        the response from the handler. Then the unsent data (including the
        eor bucket) remains in a brigade allocated from the connection pool which
        is the parent of the request pool. This brigade is cleaned up during the
        cleanup of the ptrans pool in worker_thread. As the request pool gets
        destroyed during this cleanup operation *before* the brigade gets cleaned up
        eor_bucket_destroy starts the status update and the transaction logging with
        a destroyed request pool which leads to a segfault.
      
      
      git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@451279 13f79535-47bb-0310-9956-ffa450edef68
      aee0b251
  2. Sep 28, 2006
  3. Sep 27, 2006
  4. Sep 26, 2006
  5. Sep 24, 2006
  6. Sep 22, 2006
  7. Sep 21, 2006
  8. Sep 20, 2006
  9. Sep 16, 2006
  10. Sep 15, 2006
  11. Sep 14, 2006
  12. Sep 12, 2006
  13. Sep 10, 2006
  14. Sep 09, 2006
  15. Sep 06, 2006
  16. Sep 05, 2006
  17. Sep 04, 2006
  18. Sep 03, 2006
  19. Sep 02, 2006
  20. Aug 28, 2006
  21. Aug 24, 2006
  22. Aug 23, 2006
  23. Aug 22, 2006
  24. Aug 20, 2006