RE: [PHP-DEV] add_*_vars() speed-up

2006-03-20 Thread Dmitry Stogov
Original Message- > From: Andrei Zmievski [mailto:[EMAIL PROTECTED] > Sent: Saturday, March 18, 2006 1:20 AM > To: Dmitry Stogov > Cc: 'php internals' > Subject: Re: [PHP-DEV] add_*_vars() speed-up > > > Dmitry, > > My patch is almost exactly the sam

Re: [PHP-DEV] add_*_vars() speed-up

2006-03-17 Thread Andrei Zmievski
This is the updated patch. * Remove check for SECURITY_HOLE_PASS_AUTHORIZATION, since we are not CGI and can always skip these headers. * The optimization is only done for main request now. We check for r->main (sub-request) and r->prev (internal redirect, like on ErrorDocument). If eit

Re: [PHP-DEV] add_*_vars() speed-up

2006-03-17 Thread Andrei Zmievski
Dmitry, My patch is almost exactly the same code as the original add_common_vars() and add_cgi_vars() functions except that it avoids the expensive ap_overlap_tables() call and replaces some ap_table_setn () calls with ap_table_addn(). -Andrei On Mar 16, 2006, at 11:25 PM, Dmitry Stogov

Re: [PHP-DEV] add_*_vars() speed-up

2006-03-16 Thread Rasmus Lerdorf
R_URL. May be not all of them necessary and available in apache, but AUTH_USER, HTTPS are required for PHP. Thanks. Dmitry. -Original Message- From: Andrei Zmievski [mailto:[EMAIL PROTECTED] Sent: Friday, March 17, 2006 1:47 AM To: php internals Subject: [PHP-DEV] add_*_vars() spe

RE: [PHP-DEV] add_*_vars() speed-up

2006-03-16 Thread Dmitry Stogov
L PROTECTED] > Sent: Friday, March 17, 2006 1:47 AM > To: php internals > Subject: [PHP-DEV] add_*_vars() speed-up > > > Based on Rasmus's profiling efforts, we have determined that > add_cgi_vars() and add_common_vars() are taking a lot of time. Having > taken a look at

[PHP-DEV] add_*_vars() speed-up

2006-03-16 Thread Andrei Zmievski
Based on Rasmus's profiling efforts, we have determined that add_cgi_vars() and add_common_vars() are taking a lot of time. Having taken a look at their implementation it seems that they are doing some unnecessary stuff, like creating a temporary table, filling it with entries and then calling