]> ruin.nu Git - ND.git/blobdiff - DB.pm
Don't print warnings and clean up better
[ND.git] / DB.pm
diff --git a/DB.pm b/DB.pm
index 76cb9dd7773390112df42fabc26f7b52573afc49..53db830c0f30b2f38012dee396b48e40f54b4880 100644 (file)
--- a/DB.pm
+++ b/DB.pm
@@ -11,10 +11,14 @@ our @EXPORT = qw/DB/;
 
 sub DB {
        #Use domain sockets by default
-       my $dbh = DBI->connect_cached("dbi:Pg:dbname=ndawn", "ndawn", "", {AutoCommit => 1});
+       my $dbh = DBI->connect_cached("dbi:Pg:dbname=ndawn", "ndawn", "", {AutoCommit => 1, RaiseError => 1});
        #Easy to also use /etc/postgresql/pg_services.conf
        #my $dbh =  DBI->connect_cached("dbi:Pg:service=ndawn","", "", {AutoCommit => 1});
-       $dbh->rollback if $dbh->{Executed} || !$dbh->{AutoCommit};
+       {
+               no warnings;
+               local $dbh->{Warn} = 0;
+               $dbh->do('ABORT; RESET ALL; SET SESSION AUTHORIZATION DEFAULT; DEALLOCATE ALL');
+       }
        return $dbh;
 };
 1;