]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Reinstate behaviour that we cycle a backend if it throws an AhuException. Temporary...
authorBert Hubert <bert.hubert@netherlabs.nl>
Wed, 3 Oct 2012 18:18:48 +0000 (18:18 +0000)
committerBert Hubert <bert.hubert@netherlabs.nl>
Wed, 3 Oct 2012 18:18:48 +0000 (18:18 +0000)
We do keep the logging of such an error.
Closes ticket 386, reverts commit 2100.

git-svn-id: svn://svn.powerdns.com/pdns/trunk/pdns@2734 d19b8d6e-7fed-0310-83ef-9ca221ded41b

pdns/packethandler.cc

index ce6f934b682661f61e2b84a86c46e542feb45623..1986dbf15ac3a8d77d1243f05528237d84ce2984 100644 (file)
@@ -1331,10 +1331,8 @@ DNSPacket *PacketHandler::questionOrRecurse(DNSPacket *p, bool *shouldRecurse)
     S.ringAccount("servfail-queries",p->qdomain);
   }
   catch(AhuException &e) {
-    L<<Logger::Error<<"Database module reported condition which prevented lookup ("+e.reason+") sending out servfail"<<endl;
-    r->setRcode(RCode::ServFail);
-    S.inc("servfail-packets");
-    S.ringAccount("servfail-queries",p->qdomain);
+    L<<Logger::Error<<"Database module reported permanent error which prevented lookup ("+e.reason+") sending out servfail"<<endl;
+    throw; // we WANT to die at this point
   }
   catch(std::exception &e) {
     L<<Logger::Error<<"Exception building answer packet ("<<e.what()<<") sending out servfail"<<endl;