]> git.ipfire.org Git - thirdparty/pdns.git/commitdiff
Factor DomainInfo writing code. 17516/head
authorMiod Vallat <miod.vallat@powerdns.com>
Thu, 4 Jun 2026 12:53:34 +0000 (14:53 +0200)
committerMiod Vallat <miod.vallat@powerdns.com>
Thu, 4 Jun 2026 12:53:34 +0000 (14:53 +0200)
Signed-off-by: Miod Vallat <miod.vallat@powerdns.com>
modules/lmdbbackend/lmdbbackend.cc
modules/lmdbbackend/lmdbbackend.hh

index 9f0cecba9b8e4e106d28fc3cdbe99485145c303f..c926dfd229efd36767c788b352134e782b832330 100644 (file)
@@ -1354,6 +1354,13 @@ void LMDBBackend::consolidateDomainInfo(DomainInfo& info) const
   }
 }
 
+void LMDBBackend::writeDomainInfo(const DomainInfo& info)
+{
+  auto txn = d_tdomains->getRWTransaction();
+  txn.put(info, info.id);
+  txn.commit();
+}
+
 void LMDBBackend::writeTransientDomainInfo(const DomainInfo& info)
 {
   // If the DomainInfo table is split, write the TransientDomainInfo part
@@ -1384,9 +1391,7 @@ void LMDBBackend::updateDomainInfo(const DomainInfo& info)
     return;
   }
 
-  auto txn = d_tdomains->getRWTransaction();
-  txn.put(info, info.id);
-  txn.commit();
+  writeDomainInfo(info);
   writeTransientDomainInfo(info);
 }
 
@@ -2437,9 +2442,7 @@ bool LMDBBackend::genChangeTransientDomain(domainid_t id, const std::function<vo
       writeTransientDomainInfo(info);
     }
     else {
-      auto txn = d_tdomains->getRWTransaction();
-      txn.put(info, info.id);
-      txn.commit();
+      writeDomainInfo(info);
     }
   }
   return true;
@@ -3752,9 +3755,7 @@ void LMDBBackend::flush()
           writeTransientDomainInfo(info);
         }
         else {
-          auto txn = d_tdomains->getRWTransaction();
-          txn.put(info, info.id);
-          txn.commit();
+          writeDomainInfo(info);
         }
       }
       else {
index be2c553c4bd873c038e93647200fc1d8f7a7e7e7..1d3cb2ae609c56248f72f7808ed58ca5866be533 100644 (file)
@@ -359,6 +359,7 @@ private:
   bool findDomain(domainid_t domainid, DomainInfo& info) const;
   void consolidateDomainInfo(DomainInfo& info) const;
   void updateDomainInfo(const DomainInfo& info);
+  void writeDomainInfo(const DomainInfo& info);
   void writeTransientDomainInfo(const DomainInfo& info);
 
   void setLastCheckTime(domainid_t domain_id, time_t last_check);