diff --git a/inventory_provider/routes/msr.py b/inventory_provider/routes/msr.py
index 2c5d819fec6365ef09a8b602f70caae6cf174e51..cbacaa975e08d5f16742fc61a1aab1b47a93a572 100644
--- a/inventory_provider/routes/msr.py
+++ b/inventory_provider/routes/msr.py
@@ -882,7 +882,8 @@ def get_peering_services():
     return Response(response, mimetype="application/json")
 
 
-@functools.cache
+# TODO: @functools.cache is only available in py3.9
+@functools.lru_cache
 def _load_all_interfaces():
     """
     loads all ip interfaces in the network and returns as a dict
@@ -909,7 +910,8 @@ def _load_all_interfaces():
     return result
 
 
-@functools.cache
+# TODO: @functools.cache is only available in py3.9
+@functools.lru_cache
 def _load_redundant_access_peers():
     """
     load all peers that should be considered