From: Byron Jones Date: Tue, 15 Nov 2011 08:13:10 +0000 (+0800) Subject: Bug 702208: TheSchwartz should not open a new db connection for each email X-Git-Tag: bugzilla-4.2rc1~40 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=67b98255f72cc42f7efbd832e15f39ba1376d99a;p=thirdparty%2Fbugzilla.git Bug 702208: TheSchwartz should not open a new db connection for each email r=mkanat, a=mkanat --- diff --git a/Bugzilla/JobQueue.pm b/Bugzilla/JobQueue.pm index 2804b9179a..7ea678345e 100644 --- a/Bugzilla/JobQueue.pm +++ b/Bugzilla/JobQueue.pm @@ -35,6 +35,11 @@ use constant JOB_MAP => { send_mail => 'Bugzilla::Job::Mailer', }; +# Without a driver cache TheSchwartz opens a new database connection +# for each email it sends. This cached connection doesn't persist +# across requests. +use constant DRIVER_CACHE_TIME => 300; # 5 minutes + sub job_map { if (!defined(Bugzilla->request_cache->{job_map})) { my $job_map = JOB_MAP; @@ -62,6 +67,7 @@ sub new { pass => $lc->{db_pass}, prefix => 'ts_', }], + driver_cache_expiration => DRIVER_CACHE_TIME, ); return $self;