ovn-org / ovn

Open Virtual Network
Apache License 2.0
476 stars 241 forks source link

Missing features in ovn-northd-ddlog #4

Open ryzhyk opened 4 years ago

ryzhyk commented 4 years ago

After rebasing ovn-northd-ddlog on top of the latest master, the following tests are failing:

In addition, @numansiddique is reporting:

It's not failing for me, so must be another instance of a missing wait.

ryzhyk commented 4 years ago

I started annotating test failures with recent ovn changes that seem to have caused them.

@numansiddique, @putnopvut, @LorenzoBianconi, @dceara, please comment if you know what causes some of the other bugs. Otherwise I will keep gradually working through them.

numansiddique commented 4 years ago

I haven't looked into the failures. There were many features added in c version like ha_chassis_group, external ports, virtual ports and others which are missing in ddlog version. So the corresponding test cases should get fixed when ddlog version has these features.

dceara commented 4 years ago

@ryzhyk I'll be sending a patch for 200: ovn -- IGMP snoop/querier/relay FAILED (ovs-macros.at:225) soon. Introduced by:

putnopvut commented 4 years ago

I'm working on fixing the ipam test failure. The issue is related to the addition @LorenzoBianconi made where we can now specify dynamic MAC addresses with static IP addresses. Specifically, the DDLog code does not account for the case where we specify a dynamic MAC and static IPv6 address. So far, my attempts to fix this have just caused the test to fail more miserably :)

I'm debugging to try to figure out what's going wrong.

ryzhyk commented 4 years ago

@putnopvut, let me know if I can help with ddlog debugging

dceara commented 4 years ago

As of now the following commits that changed ovn-northd.c are missing from the ddlog-dev-v2 branch. Probably not all need changes in ovn-northd-ddlog but we should triage them and update the missing features list.

$ base=$(git merge-base master ddlog-dev-v2)
$ git log --oneline  $base..master northd/ovn-northd.c                                                                                                                                                           
d2b3842 ovn-northd: Set stage-hint for Forwarding_Group, ECMP and SNAT
217cc5e ovn-northd: Set stage-hint for all applicable flows.
2dc7869 ovn-northd: Address scale issues with DNAT flows.
1be8ac6 ovn-northd: Support hairpinning for logical switch load balancing.
aa3e443 ovn-ic: Interconnection port controller.
452a670 ovn-sb: Add keys is_interconn and is_remote to Chassis's external_ids.
dfd1118 ovn-ic: Transit switch controller.
969f7f5 ovn-northd.c: Refactor allocate_tnlid.
bb9f2b9 ovn-northd: Consider load balancer active backends in router pipeline
677a3ba ovn: Add MLD support.
c6eb4c3 ovn-northd: Fix ipv4.mcast logical field.
70e7bb9 ovn-northd: Fix uninitialized 'prefix' in 'ip46_parse_cidr'.
edb2400 Forwarding group to load balance l2 traffic with liveness detection
4e53974 ovn-northd: Support ECMP routes.
71dd573 ovn-northd: Fix logical router pipeline table IDs in documentation.
511ab50 ovn-northd: Fix Pre-LB logical flows with IPv4 and IPv6.
6a57830 Restrict ARP/IPv6 ND replies for LB VIP only on chassis redirect port
63640c0 ovn-northd: ls_*_acl behavior not consistent for untracked flows
b441bf3 northd: Load config before processing nbdb contents
50fdc3e northd: Log all dynamic address assignments
d6a4481 northd: Remove misleading warning log message
9f7f466 Add support for Route Info Option in RA - RFC 4191
71f87ea Add support to Default Router Preference (PRF) - RFC 4191
75b3e40 northd: Improve handling of pause and resume
695df0e northd: Add `status` management command
93f3cdf Skip IPv6 NS packets in router egress SNAT pipeline
5a32990 northd: Match IPv4 or IPv6 for MAC resolution
8be01f4 Send service monitor health checks
ba0d6ea ovn-northd: Add support for Load Balancer health check
998617c ovn-northd: Avoid empty address list when limiting ARP/ND broadcast.
32f5ebb ovn-northd: Limit ARP/ND broadcast domain whenever possible.
d0ef9f0 ovn-northd: Fix get_router_load_balancer_ips() for mixed address families.
e02f2e4 ovn-northd: Validate dnat_and_snat external_mac/logical_ip.
cc87c48 OVN: Use ip4.src and ip4.dst actions for NAT rules
719f586 northd: Add lflows for IPv6 NAT.
8f773fa northd: Fix table ID for IPv6 router ingress.
5a12a94 Add DNSSL support to OVN
fd8175f Add RDNSS support to OVN
bde3907 ovn-northd.c: Fix datapath tunnel key allocation.
4fae57b Fix virtual port binding when the parents are scheduled in the same chassis
adcdbd9 ovn-northd: Fix IP multicast flooding to mrouter.
7930813 ovn-northd: Add static IP multicast flood configuration
84d337e northd: introduce logical flow for localnet egress shaping
82e377a northd: add the possibility to define localnet as qos capable port
783337b Learn the mac binding only if required