diff mbox series

[ovs-dev,RFC,7/7] HACK: Remove load balancer routable/unroutable logic.

Message ID 20211125213543.11165.32783.stgit@dceara.remote.csb
State RFC
Headers show
Series northd-ddlog: Benchmark and improve Load Balancer performance. | expand

Commit Message

Dumitru Ceara Nov. 25, 2021, 9:35 p.m. UTC
This is a forceful revert, completely breaking functionality with the
only goal of determining the impact of the commented out lines on
performance.

Signed-off-by: Dumitru Ceara <dceara@redhat.com>
---
 northd/lrouter.dl    |   54 +++++++++++++++++++++++++-------------------------
 northd/ovn_northd.dl |   23 ++++++++++++---------
 2 files changed, 40 insertions(+), 37 deletions(-)
diff mbox series

Patch

diff --git a/northd/lrouter.dl b/northd/lrouter.dl
index 4782599e5..7ee99beb7 100644
--- a/northd/lrouter.dl
+++ b/northd/lrouter.dl
@@ -541,33 +541,33 @@  typedef LogicalRouterLBIPs = LogicalRouterLBIPs {
 
 relation LogicalRouterLBIPs[Intern<LogicalRouterLBIPs>]
 
-LogicalRouterLBIPs[LogicalRouterLBIPs{
-        .lr = lr_uuid,
-        .lb_ipv4s_routable = lb_ipv4s_routable,
-        .lb_ipv4s_unroutable = lb_ipv4s_unroutable,
-        .lb_ipv6s_routable = lb_ipv6s_routable,
-        .lb_ipv6s_unroutable = lb_ipv6s_unroutable
-    }.intern()
-] :-
-    LogicalRouterLBs(lr_uuid, lbs),
-    (var lb_ipv4s_routable, var lb_ipv4s_unroutable,
-     var lb_ipv6s_routable, var lb_ipv6s_unroutable) = {
-        var lb_ipv4s_routable = set_empty();
-        var lb_ipv4s_unroutable = set_empty();
-        var lb_ipv6s_routable = set_empty();
-        var lb_ipv6s_unroutable = set_empty();
-        for (lb in lbs) {
-            if (lb.routable) {
-                lb_ipv4s_routable = lb_ipv4s_routable.union(lb.ipv4s);
-                lb_ipv6s_routable = lb_ipv6s_routable.union(lb.ipv6s);
-            } else {
-                lb_ipv4s_unroutable = lb_ipv4s_unroutable.union(lb.ipv4s);
-                lb_ipv6s_unroutable = lb_ipv6s_unroutable.union(lb.ipv6s);
-            }
-        };
-        (lb_ipv4s_routable, lb_ipv4s_unroutable,
-         lb_ipv6s_routable, lb_ipv6s_unroutable)
-    }.
+//LogicalRouterLBIPs[LogicalRouterLBIPs{
+//        .lr = lr_uuid,
+//        .lb_ipv4s_routable = lb_ipv4s_routable,
+//        .lb_ipv4s_unroutable = lb_ipv4s_unroutable,
+//        .lb_ipv6s_routable = lb_ipv6s_routable,
+//        .lb_ipv6s_unroutable = lb_ipv6s_unroutable
+//    }.intern()
+//] :-
+//    LogicalRouterLBs(lr_uuid, lbs),
+//    (var lb_ipv4s_routable, var lb_ipv4s_unroutable,
+//     var lb_ipv6s_routable, var lb_ipv6s_unroutable) = {
+//        var lb_ipv4s_routable = set_empty();
+//        var lb_ipv4s_unroutable = set_empty();
+//        var lb_ipv6s_routable = set_empty();
+//        var lb_ipv6s_unroutable = set_empty();
+//        for (lb in lbs) {
+//            if (lb.routable) {
+//                lb_ipv4s_routable = lb_ipv4s_routable.union(lb.ipv4s);
+//                lb_ipv6s_routable = lb_ipv6s_routable.union(lb.ipv6s);
+//            } else {
+//                lb_ipv4s_unroutable = lb_ipv4s_unroutable.union(lb.ipv4s);
+//                lb_ipv6s_unroutable = lb_ipv6s_unroutable.union(lb.ipv6s);
+//            }
+//        };
+//        (lb_ipv4s_routable, lb_ipv4s_unroutable,
+//         lb_ipv6s_routable, lb_ipv6s_unroutable)
+//    }.
 
 /* Router - to - LB-uuid */
 relation RouterLB(router: Intern<Router>, lb_uuid: uuid)
diff --git a/northd/ovn_northd.dl b/northd/ovn_northd.dl
index 90558a7c4..bc25bf041 100644
--- a/northd/ovn_northd.dl
+++ b/northd/ovn_northd.dl
@@ -1006,17 +1006,20 @@  relation OutProxy_Multicast_Group (
     ports: Set<uuid>
 )
 
+// FIXME: When commenting out LogicalRouterLBIPs() relations, ovn-northd
+// started continuously trying to write empty updates to mC_FLOOD() in
+// the southbound.
 /* Only create flood group if the switch has enabled ports */
-sb::Out_Multicast_Group (._uuid      = hash128((datapath,name)),
-                        .datapath   = datapath,
-                        .name       = name,
-                        .tunnel_key = tunnel_key,
-                        .ports      = port_ids) :-
-    &SwitchPort(.lsp = lsp, .sw = sw),
-    lsp.is_enabled(),
-    var datapath = sw._uuid,
-    var port_ids = lsp._uuid.group_by((datapath)).to_set(),
-    (var name, var tunnel_key) = mC_FLOOD().
+// sb::Out_Multicast_Group (._uuid      = hash128((datapath,name)),
+//                         .datapath   = datapath,
+//                         .name       = name,
+//                         .tunnel_key = tunnel_key,
+//                         .ports      = port_ids) :-
+//     &SwitchPort(.lsp = lsp, .sw = sw),
+//     lsp.is_enabled(),
+//     var datapath = sw._uuid,
+//     var port_ids = lsp._uuid.group_by((datapath)).to_set(),
+//     (var name, var tunnel_key) = mC_FLOOD().
 
 /* Create a multicast group to flood to all switch ports except router ports.
  */