diff --git a/src/vpp-api/vom/route.cpp b/src/vpp-api/vom/route.cpp
index 3b86fb2..780881e 100644
--- a/src/vpp-api/vom/route.cpp
+++ b/src/vpp-api/vom/route.cpp
@@ -403,7 +403,7 @@
      * populating the route domain here
      */
     route_domain rd_temp(payload.table_id);
-    std::shared_ptr<route_domain> rd = route_domain::find(rd_temp);
+    std::shared_ptr<route_domain> rd = route_domain::find(payload.table_id);
     if (!rd) {
       OM::commit(key, rd_temp);
     }
@@ -450,7 +450,7 @@
 
     prefix_t pfx(1, payload.address, payload.address_length);
     route_domain rd_temp(payload.table_id);
-    std::shared_ptr<route_domain> rd = route_domain::find(rd_temp);
+    std::shared_ptr<route_domain> rd = route_domain::find(payload.table_id);
     if (!rd) {
       OM::commit(key, rd_temp);
     }
diff --git a/src/vpp-api/vom/route_domain.cpp b/src/vpp-api/vom/route_domain.cpp
index e8c1e59..626a9cd 100644
--- a/src/vpp-api/vom/route_domain.cpp
+++ b/src/vpp-api/vom/route_domain.cpp
@@ -108,28 +108,9 @@
 }
 
 std::shared_ptr<route_domain>
-route_domain::find(const route_domain& temp)
+route_domain::find(const key_t& k)
 {
-  std::shared_ptr<route_domain> rd;
-
-  auto it = m_db.cbegin();
-
-  while (it != m_db.cend()) {
-    /*
- * The key in the DB is a pair of the interface's name and prefix.
- * If the keys match, save the L3-config
- */
-    auto key = it->first;
-
-    if (temp.table_id() == key) {
-      rd = it->second.lock();
-      break;
-    }
-
-    ++it;
-  }
-
-  return (rd);
+  return (m_db.find(k));
 }
 
 void
diff --git a/src/vpp-api/vom/route_domain.hpp b/src/vpp-api/vom/route_domain.hpp
index 7d83154..19a3c18 100644
--- a/src/vpp-api/vom/route_domain.hpp
+++ b/src/vpp-api/vom/route_domain.hpp
@@ -81,7 +81,7 @@
   /**
    * Find the instnace of the route domain in the OM
    */
-  static std::shared_ptr<route_domain> find(const route_domain& temp);
+  static std::shared_ptr<route_domain> find(const key_t& temp);
 
   /**
    * Dump all route-doamin into the stream provided
