diff options
author | Robert Haas | 2009-05-24 02:00:19 +0000 |
---|---|---|
committer | Robert Haas | 2009-05-24 02:00:19 +0000 |
commit | c393c68db3df467ee02dbc83aad4662e36cc7629 (patch) | |
tree | 4ec308daa9e4846e017d706960d16bfa2c73b351 /perl-lib/PgCommitFest/Handler.pm | |
parent | a1bb7bcda0069888fb580d0b7089bd9e3634de06 (diff) |
Avoid opening the database connection sooner than necessary.
Diffstat (limited to 'perl-lib/PgCommitFest/Handler.pm')
-rw-r--r-- | perl-lib/PgCommitFest/Handler.pm | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/perl-lib/PgCommitFest/Handler.pm b/perl-lib/PgCommitFest/Handler.pm index 13af0fd..6ad00d9 100644 --- a/perl-lib/PgCommitFest/Handler.pm +++ b/perl-lib/PgCommitFest/Handler.pm @@ -27,16 +27,11 @@ our %ACTION = ( 'patch_comment_delete' => \&PgCommitFest::PatchComment::delete ); -our $PG = 'dbi:Pg:dbname=pgcommitfest'; -our $PGUSERNAME = 'pgcommitfest'; -our $PGPASSWORD = ''; - sub main_loop { $SIG{'PIPE'} = sub { die "SIGPIPE\n"; }; while (1) { # Invoke main request handler and save any resulting error message. - my $db = PgCommitFest::DB->connect($PG, $PGUSERNAME, $PGPASSWORD); - my $r = PgCommitFest::Request->new($db); + my $r = PgCommitFest::Request->new(); last if !defined $r; eval { handler($r); @@ -47,7 +42,7 @@ sub main_loop { my $err = $@; # Roll back any uncommited database work. - $db->tidy; + $r->db->tidy if $r->db_is_connected; # Print errors to system log. if ($err && $err ne "SIGPIPE\n" && $err ne "DONE\n") { @@ -57,7 +52,6 @@ sub main_loop { $r->render_template('error', { 'error_list' => [ $err ] }); } } - $db->disconnect; } } |