Adding a call_until_true function call to the dns query

Related-prod: PRODX-51199
Change-Id: I61c303145367293f09fcf4f4080dda99c8849633
diff --git a/designate_tempest_plugin/services/dns/query/query_client.py b/designate_tempest_plugin/services/dns/query/query_client.py
index 95fcb61..13cdf9e 100644
--- a/designate_tempest_plugin/services/dns/query/query_client.py
+++ b/designate_tempest_plugin/services/dns/query/query_client.py
@@ -15,6 +15,7 @@
 import dns.exception
 import dns.query
 from tempest import config
+from tempest.lib.common.utils import test_utils as utils
 from oslo_utils import netutils
 
 CONF = config.CONF
@@ -62,7 +63,17 @@
     @classmethod
     def _dig(cls, name, rdatatype, ip, port, timeout):
         query = cls._prepare_query(name, rdatatype)
-        return dns.query.udp(query, ip.strip('[]'), port=port, timeout=timeout)
+        utils.call_until_true(dns.query.udp,
+                              timeout * 5,
+                              1,
+                              query,
+                              ip.strip('[]'),
+                              port=port,
+                              timeout=timeout
+                              )
+
+        return dns.query.udp(
+                    query, ip.strip('[]'), port=port, timeout=timeout)
 
 
 class Nameserver(object):