diff options
author | Dylan Hardison <dylan@mozilla.com> | 2016-02-29 19:16:41 +0100 |
---|---|---|
committer | Dylan William Hardison <dylan@hardison.net> | 2016-03-01 14:04:47 +0100 |
commit | 1d3186c171465b173a42f8ecd168662eccccc4d1 (patch) | |
tree | a56cdae23a4ebe02fd7b85075de067819b3449fd | |
parent | 0e0fd130959a40f11425d3e517e2c626b0be448f (diff) | |
download | bugzilla-1d3186c171465b173a42f8ecd168662eccccc4d1.tar.gz bugzilla-1d3186c171465b173a42f8ecd168662eccccc4d1.tar.xz |
Bug 1251208 - Bugzilla->request_cache() can be faster
r=dkl,a=dylan
-rw-r--r-- | Bugzilla.pm | 35 |
1 files changed, 6 insertions, 29 deletions
diff --git a/Bugzilla.pm b/Bugzilla.pm index 0ce152e48..c50d22523 100644 --- a/Bugzilla.pm +++ b/Bugzilla.pm @@ -736,7 +736,6 @@ sub local_timezone { ||= DateTime::TimeZone->new(name => 'local'); } -# Send messages to syslog for the auditing systems (eg. mozdef) to pick up. sub audit { my ($class, $message) = @_; openlog('apache', 'cons,pid', 'local4'); @@ -744,43 +743,21 @@ sub audit { closelog(); } -# This creates the request cache for non-mod_perl installations. -# This is identical to Install::Util::_cache so that things loaded -# into Install::Util::_cache during installation can be read out -# of request_cache later in installation. -our $_request_cache = $Bugzilla::Install::Util::_cache; - -sub request_cache { - if ($ENV{MOD_PERL}) { - require Apache2::RequestUtil; - # Sometimes (for example, during mod_perl.pl), the request - # object isn't available, and we should use $_request_cache instead. - my $request = eval { Apache2::RequestUtil->request }; - return $_request_cache if !$request; - return $request->pnotes(); - } - return $_request_cache; -} +my $request_cache = {}; + +sub request_cache { return $request_cache } sub clear_request_cache { - $_request_cache = {}; - if ($ENV{MOD_PERL}) { - require Apache2::RequestUtil; - my $request = eval { Apache2::RequestUtil->request }; - if ($request) { - my $pnotes = $request->pnotes; - delete @$pnotes{(keys %$pnotes)}; - } - } + %$request_cache = (); } # This is a per-process cache. Under mod_cgi it's identical to the # request_cache. When using mod_perl, items in this cache live until the # worker process is terminated. -our $_process_cache = {}; +my $process_cache = {}; sub process_cache { - return $_process_cache; + return $process_cache; } # BMO - Instrumentation |