summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2023-05-09 00:22:22 +0000
committerGerrit Code Review <review@openstack.org>2023-05-09 00:22:22 +0000
commitf926758bd4015a9a1d8e884861d633607aa4061c (patch)
treecb1cc1b2998cbad49e10f65a3bdcb4565506d755
parentcec72275a10722abb69d8d2df711d41b01aee9b5 (diff)
parentb48dfd44c7dedd5e55f27d3692db82ce89c35b97 (diff)
downloadironic-f926758bd4015a9a1d8e884861d633607aa4061c.tar.gz
Merge "Use monotonic time for hashring reset"
-rw-r--r--ironic/common/hash_ring.py4
-rw-r--r--ironic/tests/unit/common/test_hash_ring.py2
2 files changed, 3 insertions, 3 deletions
diff --git a/ironic/common/hash_ring.py b/ironic/common/hash_ring.py
index 1f1107008..8986d5bd2 100644
--- a/ironic/common/hash_ring.py
+++ b/ironic/common/hash_ring.py
@@ -40,7 +40,7 @@ class HashRingManager(object):
@property
def ring(self):
interval = CONF.hash_ring_reset_interval
- limit = time.time() - interval
+ limit = time.monotonic() - interval
if not self.cache:
return self._load_hash_rings()
@@ -56,7 +56,7 @@ class HashRingManager(object):
if hash_rings is None or updated_at < limit:
LOG.debug('Rebuilding cached hash rings')
hash_rings = self._load_hash_rings()
- self.__class__._hash_rings = hash_rings, time.time()
+ self.__class__._hash_rings = hash_rings, time.monotonic()
LOG.debug('Finished rebuilding hash rings, available drivers '
'are %s', ', '.join(hash_rings))
return hash_rings
diff --git a/ironic/tests/unit/common/test_hash_ring.py b/ironic/tests/unit/common/test_hash_ring.py
index 9ecf34562..a84b9ffcf 100644
--- a/ironic/tests/unit/common/test_hash_ring.py
+++ b/ironic/tests/unit/common/test_hash_ring.py
@@ -129,7 +129,7 @@ class HashRingManagerTestCase(db_base.DbTestCase):
self.ring_manager.__class__._hash_rings = (
self.ring_manager.__class__._hash_rings[0],
- time.time() - 31
+ time.monotonic() - 31
)
ring = self.ring_manager.get_ring('hardware-type', '')
self.assertEqual(2, len(ring))