It was possible for these rules to generate multiple Flow records that differed only in their stage_hint. This caused a lot of duplication for the load balancer benchmark.
With the benchmark at https://mail.openvswitch.org/pipermail/ovs-dev/2021-July/385333.html, this reduces memory consumption from 53 GB to 17 GB and elapsed time from 14 minutes to 5 minutes. Signed-off-by: Ben Pfaff <b...@ovn.org> --- northd/ovn_northd.dl | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/northd/ovn_northd.dl b/northd/ovn_northd.dl index dd69126ff..38b97aa6b 100644 --- a/northd/ovn_northd.dl +++ b/northd/ovn_northd.dl @@ -3163,7 +3163,7 @@ Flow(.logical_datapath = sw._uuid, .actions = actions.intern(), .io_port = None, .controller_meter = meter, - .stage_hint = stage_hint(lb._uuid)) :- + .stage_hint = 0) :- sw in &Switch(), LBVIPWithStatus[lbvip@&LBVIPWithStatus{.lb = lb}], sw.load_balancer.contains(lb._uuid), @@ -4587,7 +4587,7 @@ Flow(.logical_datapath = sw._uuid, .priority = 90, .__match = i"${fLAGBIT_NOT_VXLAN()} && arp.op == 1 && arp.tpa == ${ipv4}", .actions = i"outport = ${flood}; output;", - .stage_hint = stage_hint(sp.lsp._uuid), + .stage_hint = 0, .io_port = None, .controller_meter = None) :- sp in &SwitchPort(.sw = sw, .peer = Some{rp}), @@ -6666,7 +6666,7 @@ for (RouterLBVIP( .priority = prio, .__match = __match.intern(), .actions = __actions, - .stage_hint = stage_hint(lb._uuid), + .stage_hint = 0, .io_port = None, .controller_meter = None); @@ -6712,7 +6712,7 @@ for (RouterLBVIP( .priority = prio, .__match = est_match.intern(), .actions = actions, - .stage_hint = stage_hint(lb._uuid), + .stage_hint = 0, .io_port = None, .controller_meter = None); @@ -6797,7 +6797,7 @@ Flow(.logical_datapath = r._uuid, .actions = actions.intern(), .io_port = None, .controller_meter = meter, - .stage_hint = stage_hint(lb._uuid)) :- + .stage_hint = 0) :- r in &Router(), r.l3dgw_ports.len() > 0 or r.is_gateway, LBVIPWithStatus[lbvip@&LBVIPWithStatus{.lb = lb}], -- 2.31.1 _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev