diff --git a/inventory_provider/opsdb.py b/inventory_provider/opsdb.py
index 0dfc532b9501df85d0ceeb80cea0792e144e891f..c400b432b6eb8147360d2137bddc8e060fbabd77 100644
--- a/inventory_provider/opsdb.py
+++ b/inventory_provider/opsdb.py
@@ -2,104 +2,171 @@ import contextlib
 import mysql.connector
 
 
-equipment_location_query = "SELECT " \
-                        "  e.absid, " \
-                        "  e.name AS equipment_name, " \
-                        "  p.name AS pop_name, " \
-                        "  p.abbreviation AS pop_abbreviation, " \
-                        "  p.site_id AS pop_site_id, " \
-                        "  p.country, " \
-                        "  g.longitude, " \
-                        "  g.latitude " \
-                        "FROM " \
-                        "  equipment e " \
-                        "INNER JOIN pop p " \
-                        "  ON p.absid = e.PTR_pop " \
-                        "INNER JOIN geocoding g " \
-                        "  ON g.absid = p.PTR_geocoding " \
-                        "WHERE " \
-                        "  e.status != 'terminated' " \
-                        "  AND e.status != 'disposed'"
-
-
-circuit_hierarchy_query = "SELECT " \
-                     "  pc.name AS parent_circuit, " \
-                     "  pc.absid AS parent_circuit_id, " \
-                     "  pc.status AS parent_circuit_status, " \
-                     "  cc.name AS child_circuit, " \
-                     "  cc.absid AS child_circuit_id, " \
-                     "  cc.status AS child_circuit_status, " \
-                     "  cg.segment_group AS segment_group " \
-                     "FROM circuit_glue cg " \
-                     "INNER JOIN circuit pc ON pc.absid = cg.PTR_circuit " \
-                     "INNER JOIN circuit cc ON cc.absid = cg.PTR_component"
-
-
-retrieve_services_query_template = "SELECT " \
-                          "  c.absid AS id, " \
-                          "  c.name, " \
-                          "  c.status, " \
-                          "  c.circuit_type, " \
-                          "  c.service_type, " \
-                          "  events.short_descr AS project, " \
-                          "  e.name AS equipment, " \
-                          "  cc.{} AS port, " \
-                          "  cc.{} AS logical_unit, " \
-                          "  LOWER(o.name) AS manufacturer, " \
-                          "  LOWER(ec.card_id) AS card_id, " \
-                          "  LOWER(IF(pp.interface_name IS NULL," \
-                                   " ''," \
-                                   " pp.interface_name))" \
-                                   " AS interface_name " \
-                          "FROM circuit c " \
-                          "INNER JOIN circuit_connections cc " \
-                          "  ON cc.circ_absid = c.absid " \
-                          "INNER JOIN equipment e " \
-                          "  ON e.absid = cc.{} " \
-                          "LEFT JOIN events " \
-                          "  ON events.absid = cc.PTR_project " \
-                          "INNER JOIN equipment_card ec " \
-                          "  ON ec.absid = cc.{} " \
-                          "LEFT JOIN organisation o " \
-                          "  ON o.absid = ec.manufacturer " \
-                          "LEFT JOIN port_plugin pp " \
-                          "  ON pp.PTR_card = cc.{} " \
-                          "  AND pp.port = cc.{} " \
-                          "WHERE " \
-                          "  c.status  != 'terminated' " \
-                          "  AND is_circuit = 1 "
-
-order_services_outer_query = "SELECT * FROM ({}) AS inner_query " \
-                 " ORDER BY FIELD(status, 'spare', 'planned'," \
-                 " 'ordered', 'installed', 'operational')"
-
-
-connection_variants = [
-    ['port_a',
-     'int_LU_a',
-     'PTR_equip_a',
-     'PTR_card_a',
-     'PTR_card_a',
-     'port_a'],
-    ['port_b',
-     'int_LU_b',
-     'PTR_equip_b',
-     'PTR_card_b',
-     'PTR_card_b',
-     'port_b'],
-    ['port_a_OUT',
-     'int_LU_a',
-     'PTR_equip_a',
-     'PTR_card_a_OUT',
-     'PTR_card_a_OUT',
-     'port_a_OUT'],
-    ['port_b_OUT',
-     'int_LU_b',
-     'PTR_equip_b',
-     'PTR_card_b_OUT',
-     'PTR_card_b_OUT',
-     'port_b_OUT']
-]
+equipment_location_query = """SELECT
+                          e.absid,
+                          e.name AS equipment_name,
+                          p.name AS pop_name,
+                          p.abbreviation AS pop_abbreviation,
+                          p.site_id AS pop_site_id,
+                          p.country,
+                          g.longitude,
+                          g.latitude
+                        FROM
+                          equipment e
+                        INNER JOIN pop p
+                          ON p.absid = e.PTR_pop
+                        INNER JOIN geocoding g
+                          ON g.absid = p.PTR_geocoding
+                        WHERE
+                          e.status != 'terminated'
+                          AND e.status != 'disposed'"""
+
+
+circuit_hierarchy_query = """SELECT
+                       pc.name AS parent_circuit,
+                       pc.absid AS parent_circuit_id,
+                       pc.status AS parent_circuit_status,
+                       cc.name AS child_circuit,
+                       cc.absid AS child_circuit_id,
+                       cc.status AS child_circuit_status,
+                       cg.segment_group AS segment_group
+                     FROM circuit_glue cg
+                     INNER JOIN circuit pc ON pc.absid = cg.PTR_circuit
+                     INNER JOIN circuit cc ON cc.absid = cg.PTR_component"""
+
+
+retrieve_services_query = """SELECT *
+                    FROM (SELECT
+                      c.absid AS id,
+                      c.name,
+                      c.status,
+                      c.circuit_type,
+                      c.service_type,
+                      events.short_descr AS project,
+                      e.name AS equipment,
+                      cc.port_a AS port,
+                      cc.int_LU_a AS logical_unit,
+                      LOWER(o.name) AS manufacturer,
+                      LOWER(ec.card_id) AS card_id,
+                      LOWER(
+                        IF(pp.interface_name IS NULL,
+                        '', pp.interface_name)) AS interface_name
+                    FROM circuit c
+                      INNER JOIN circuit_connections cc
+                        ON cc.circ_absid = c.absid
+                      INNER JOIN equipment e
+                        ON e.absid = cc.PTR_equip_a
+                      LEFT JOIN events
+                        ON events.absid = cc.PTR_project
+                      INNER JOIN equipment_card ec
+                        ON ec.absid = cc.PTR_card_a
+                      LEFT JOIN organisation o
+                        ON o.absid = ec.manufacturer
+                      LEFT JOIN port_plugin pp
+                        ON pp.PTR_card = cc.PTR_card_a AND pp.port = cc.port_a
+                    WHERE c.status != 'terminated' AND is_circuit = 1
+                    UNION
+                    SELECT
+                      c.absid AS id,
+                      c.name,
+                      c.status,
+                      c.circuit_type,
+                      c.service_type,
+                      events.short_descr AS project,
+                      e.name AS equipment,
+                      cc.port_b AS port,
+                      cc.int_LU_b AS logical_unit,
+                      LOWER(o.name) AS manufacturer,
+                      LOWER(ec.card_id) AS card_id,
+                      LOWER(
+                        IF(pp.interface_name IS NULL,
+                        '', pp.interface_name)) AS interface_name
+                    FROM circuit c
+                      INNER JOIN circuit_connections cc
+                        ON cc.circ_absid = c.absid
+                      INNER JOIN equipment e
+                        ON e.absid = cc.PTR_equip_b
+                      LEFT JOIN events
+                        ON events.absid = cc.PTR_project
+                      INNER JOIN equipment_card ec
+                        ON ec.absid = cc.PTR_card_b
+                      LEFT JOIN organisation o
+                        ON o.absid = ec.manufacturer
+                      LEFT JOIN port_plugin pp
+                        ON pp.PTR_card = cc.PTR_card_b AND pp.port = cc.port_b
+                    WHERE c.status != 'terminated' AND is_circuit = 1
+                    UNION
+                    SELECT
+                      c.absid AS id,
+                      c.name,
+                      c.status,
+                      c.circuit_type,
+                      c.service_type,
+                      events.short_descr AS project,
+                      e.name AS equipment,
+                      cc.port_a_OUT AS port,
+                      cc.int_LU_a AS logical_unit,
+                      LOWER(o.name) AS manufacturer,
+                      LOWER(ec.card_id) AS card_id,
+                      LOWER(
+                        IF(pp.interface_name IS NULL,
+                        '', pp.interface_name)) AS interface_name
+                    FROM circuit c
+                      INNER JOIN circuit_connections cc
+                        ON cc.circ_absid = c.absid
+                      INNER JOIN equipment e
+                        ON e.absid = cc.PTR_equip_a
+                      LEFT JOIN events
+                        ON events.absid = cc.PTR_project
+                      INNER JOIN equipment_card ec
+                        ON ec.absid = cc.PTR_card_a_OUT
+                      LEFT JOIN organisation o
+                        ON o.absid = ec.manufacturer
+                      LEFT JOIN port_plugin pp
+                        ON pp.PTR_card = cc.PTR_card_a_OUT
+                         AND pp.port = cc.port_a_OUT
+                    WHERE c.status != 'terminated' AND is_circuit = 1
+                    UNION
+                    SELECT
+                      c.absid AS id,
+                      c.name,
+                      c.status,
+                      c.circuit_type,
+                      c.service_type,
+                      events.short_descr AS project,
+                      e.name AS equipment,
+                      cc.port_b_OUT AS port,
+                      cc.int_LU_b AS logical_unit,
+                      LOWER(o.name) AS manufacturer,
+                      LOWER(ec.card_id) AS card_id,
+                      LOWER(
+                        IF(pp.interface_name IS NULL,
+                        '', pp.interface_name)) AS interface_name
+                    FROM circuit c
+                      INNER JOIN circuit_connections cc
+                        ON cc.circ_absid = c.absid
+                      INNER JOIN equipment e
+                        ON e.absid = cc.PTR_equip_b
+                      LEFT JOIN events
+                        ON events.absid = cc.PTR_project
+                      INNER JOIN equipment_card ec
+                        ON ec.absid = cc.PTR_card_b_OUT
+                      LEFT JOIN organisation o
+                        ON o.absid = ec.manufacturer
+                      LEFT JOIN port_plugin pp
+                        ON pp.PTR_card = cc.PTR_card_b_OUT
+                         AND pp.port = cc.port_b_OUT
+                    WHERE
+                     c.status != 'terminated'
+                      AND is_circuit = 1)
+                    AS inner_query
+                    ORDER BY
+                     FIELD(status,
+                      'spare',
+                      'planned',
+                      'ordered',
+                      'installed',
+                      'operational')"""
 
 
 @contextlib.contextmanager
@@ -136,14 +203,19 @@ def _convert_to_dict(crs):
 def _infinera_field_update(record):
     equipment_parts = record["equipment"].rsplit("-", 1)
     card_parts = record["card_id"].split("-", 1)
+    record["interface_name"] = ""
+    record["equipment"] = equipment_parts[0]
     try:
-        record["equipment"] = equipment_parts[0]
-        record["interface_name"] = equipment_parts[1] + "-" + card_parts[1]
+        record["interface_name"] = equipment_parts[1] + "-"
     except IndexError:
         pass  # Nothing to see here
+    try:
+        record["interface_name"] += card_parts[1]
+    except IndexError:
+        record["interface_name"] += card_parts[0]
     if record["port"] is not None and record["port"] != "":
         record["interface_name"] += "-" + record["port"]
-    record["interface_name"] = record["interface_name"]\
+    record["interface_name"] = record["interface_name"] \
         .replace("--", "-").upper()
     return record
 
@@ -153,7 +225,7 @@ def _juniper_field_update(record):
         record["interface_name"] = record["card_id"]
         if record["port"] is not None and record["port"] != "":
             separator = "/" if "-" in record["interface_name"] else ""
-            record["interface_name"] += separator + record["port"]
+            record["interface_name"] += separator + str(record["port"])
     if record["logical_unit"] is not None and record["logical_unit"] != "":
         record["interface_name"] += "." + str(record["logical_unit"])
     return record
@@ -165,7 +237,6 @@ def _update_fields(r):
 
 
 def get_circuits(db):
-    retrieve_services_query = _generate_get_circuits_sql()
     with cursor(db) as crs:
         crs.execute(retrieve_services_query)
         r = _convert_to_dict(crs)
@@ -173,15 +244,6 @@ def get_circuits(db):
     return r
 
 
-def _generate_get_circuits_sql():
-    retrieve_services_inner_query = " UNION ".join(
-        map(lambda e: retrieve_services_query_template.format(*e),
-            connection_variants))
-    retrieve_services_query = order_services_outer_query.\
-        format(retrieve_services_inner_query)
-    return retrieve_services_query
-
-
 def get_circuit_hierarchy(db):
     with cursor(db) as crs:
         crs.execute(circuit_hierarchy_query)