https://bz.apache.org/bugzilla/show_bug.cgi?id=56984

[email protected] changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |[email protected]

--- Comment #6 from [email protected] ---
I think this is result of expected httpd-2.4.x behaviour change.

In httpd-2.2.x, after each request, httpd destroyed r->pool. Apparently, PHP
used that to clear its internal data before handling next request.

In httpd-2.4.x, we are passing EOR bucket down the stream and once it's freed,
r->pool is destroyed. Thanks to the scanning done in core_output_filter, the
response with EOR bucket does not have to be sent right after the
ap_pass_brigade call.

So the result is, that request is handled, EOR bucket is created, but it's not
sent yet. r->pool is therefore not cleared, but new request handling is
started. This leads to mod_php crash, because its internal data structures are
not cleared in r->pool clean-up *before* the next request comes.

In 2.2.x, r->pool has been cleaned-up once its handling has been finished.
In 2.4.x, r->pool is cleaned-up once it is fully sent.

I think PHP could should be fixed to not use r->pool to clean-up things before
next request.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to