From 2f9dad3733e88b0eb9170560ee3004e444d594b7 Mon Sep 17 00:00:00 2001 From: Pieter Lexis Date: Tue, 12 Mar 2019 14:28:49 +0100 Subject: [PATCH] GSQLBackend::getUnfreshSlaveInfos: log data errors properly --- pdns/backends/gsql/gsqlbackend.cc | 46 +++++++++++++++++++++++++------ 1 file changed, 37 insertions(+), 9 deletions(-) diff --git a/pdns/backends/gsql/gsqlbackend.cc b/pdns/backends/gsql/gsqlbackend.cc index 29c890a8ab..9287010f51 100644 --- a/pdns/backends/gsql/gsqlbackend.cc +++ b/pdns/backends/gsql/gsqlbackend.cc @@ -341,23 +341,51 @@ void GSQLBackend::getUnfreshSlaveInfos(vector *unfreshDomains) for(const auto& row : d_result) { // id,name,master,last_check DomainInfo sd; - ASSERT_ROW_COLUMNS("info-all-slaves-query", row, 4); + try { + ASSERT_ROW_COLUMNS("info-all-slaves-query", row, 4); + } catch(const PDNSException &e) { + g_log< masters; - stringtok(masters, row[2], ", \t"); - for(const auto& m : masters) + vector masters; + stringtok(masters, row[2], ", \t"); + for(const auto& m : masters) { + try { sd.masters.emplace_back(m, 53); + } catch(const PDNSException &e) { + g_log<