diff mbox series

[ovs-dev] northd-ddlog: Fix IP family match for DNAT flows.

Message ID 20210707140930.19952-1-dceara@redhat.com
State Accepted
Headers show
Series [ovs-dev] northd-ddlog: Fix IP family match for DNAT flows. | expand

Checks

Context Check Description
ovsrobot/apply-robot success apply and check: success
ovsrobot/github-robot-_Build_and_Test success github build: passed
ovsrobot/github-robot-_ovn-kubernetes success github build: passed

Commit Message

Dumitru Ceara July 7, 2021, 2:09 p.m. UTC
This was causing some IPv6 system tests to fail when run with
ovn-northd-ddlog.

Also fix cleanup of the northd process in system-ovn.at.  A few tests
were trying to stop ovn-northd (C version) even when run with
ovn-northd-ddlog.

Signed-off-by: Dumitru Ceara <dceara@redhat.com>
---
Note: There are some system-ovn.at tests that still fail with
ovn-northd-ddlog  and need more investigation to see if it's a
test issue or a real bug.
---
 northd/ovn_northd.dl |  2 +-
 tests/system-ovn.at  | 24 ++++++++++++------------
 2 files changed, 13 insertions(+), 13 deletions(-)

Comments

Mark Michelson July 8, 2021, 8:19 p.m. UTC | #1
Acked-by: Mark Michelson <mmichels@redhat.com>

On 7/7/21 10:09 AM, Dumitru Ceara wrote:
> This was causing some IPv6 system tests to fail when run with
> ovn-northd-ddlog.
> 
> Also fix cleanup of the northd process in system-ovn.at.  A few tests
> were trying to stop ovn-northd (C version) even when run with
> ovn-northd-ddlog.
> 
> Signed-off-by: Dumitru Ceara <dceara@redhat.com>
> ---
> Note: There are some system-ovn.at tests that still fail with
> ovn-northd-ddlog  and need more investigation to see if it's a
> test issue or a real bug.
> ---
>   northd/ovn_northd.dl |  2 +-
>   tests/system-ovn.at  | 24 ++++++++++++------------
>   2 files changed, 13 insertions(+), 13 deletions(-)
> 
> diff --git a/northd/ovn_northd.dl b/northd/ovn_northd.dl
> index e27c944a0..dea13a91f 100644
> --- a/northd/ovn_northd.dl
> +++ b/northd/ovn_northd.dl
> @@ -5687,7 +5687,7 @@ for (r in &Router(._uuid = lr_uuid,
>                                  } in
>               if (nat.nat.__type == "dnat" or nat.nat.__type == "dnat_and_snat") {
>                   None = l3dgw_port in
> -                var __match = "ip && ip4.dst == ${nat.nat.external_ip}" in
> +                var __match = "ip && ${ipX}.dst == ${nat.nat.external_ip}" in
>                   (var ext_ip_match, var ext_flow) = lrouter_nat_add_ext_ip_match(
>                       r, nat, __match, ipX, true, mask) in
>                   {
> diff --git a/tests/system-ovn.at b/tests/system-ovn.at
> index f42cfc0db..c01fde131 100644
> --- a/tests/system-ovn.at
> +++ b/tests/system-ovn.at
> @@ -1348,7 +1348,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -3121,7 +3121,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -4577,7 +4577,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -4663,7 +4663,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -4903,7 +4903,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -5287,7 +5287,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -5717,7 +5717,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -5879,7 +5879,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -5928,7 +5928,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
> @@ -6021,7 +6021,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
> @@ -6083,7 +6083,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
> @@ -6234,7 +6234,7 @@ as ovn-nb
>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>   
>   as northd
> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>   
>   as
>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
>
Mark Michelson July 12, 2021, 3:46 p.m. UTC | #2
I pushed this to master and branch-21.06.

On 7/8/21 4:19 PM, Mark Michelson wrote:
> Acked-by: Mark Michelson <mmichels@redhat.com>
> 
> On 7/7/21 10:09 AM, Dumitru Ceara wrote:
>> This was causing some IPv6 system tests to fail when run with
>> ovn-northd-ddlog.
>>
>> Also fix cleanup of the northd process in system-ovn.at.  A few tests
>> were trying to stop ovn-northd (C version) even when run with
>> ovn-northd-ddlog.
>>
>> Signed-off-by: Dumitru Ceara <dceara@redhat.com>
>> ---
>> Note: There are some system-ovn.at tests that still fail with
>> ovn-northd-ddlog  and need more investigation to see if it's a
>> test issue or a real bug.
>> ---
>>   northd/ovn_northd.dl |  2 +-
>>   tests/system-ovn.at  | 24 ++++++++++++------------
>>   2 files changed, 13 insertions(+), 13 deletions(-)
>>
>> diff --git a/northd/ovn_northd.dl b/northd/ovn_northd.dl
>> index e27c944a0..dea13a91f 100644
>> --- a/northd/ovn_northd.dl
>> +++ b/northd/ovn_northd.dl
>> @@ -5687,7 +5687,7 @@ for (r in &Router(._uuid = lr_uuid,
>>                                  } in
>>               if (nat.nat.__type == "dnat" or nat.nat.__type == 
>> "dnat_and_snat") {
>>                   None = l3dgw_port in
>> -                var __match = "ip && ip4.dst == 
>> ${nat.nat.external_ip}" in
>> +                var __match = "ip && ${ipX}.dst == 
>> ${nat.nat.external_ip}" in
>>                   (var ext_ip_match, var ext_flow) = 
>> lrouter_nat_add_ext_ip_match(
>>                       r, nat, __match, ipX, true, mask) in
>>                   {
>> diff --git a/tests/system-ovn.at b/tests/system-ovn.at
>> index f42cfc0db..c01fde131 100644
>> --- a/tests/system-ovn.at
>> +++ b/tests/system-ovn.at
>> @@ -1348,7 +1348,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -3121,7 +3121,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -4577,7 +4577,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -4663,7 +4663,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -4903,7 +4903,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -5287,7 +5287,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -5717,7 +5717,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -5879,7 +5879,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -5928,7 +5928,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
>> @@ -6021,7 +6021,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
>> @@ -6083,7 +6083,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
>> @@ -6234,7 +6234,7 @@ as ovn-nb
>>   OVS_APP_EXIT_AND_WAIT([ovsdb-server])
>>   as northd
>> -OVS_APP_EXIT_AND_WAIT([ovn-northd])
>> +OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
>>   as
>>   OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
>>
>
diff mbox series

Patch

diff --git a/northd/ovn_northd.dl b/northd/ovn_northd.dl
index e27c944a0..dea13a91f 100644
--- a/northd/ovn_northd.dl
+++ b/northd/ovn_northd.dl
@@ -5687,7 +5687,7 @@  for (r in &Router(._uuid = lr_uuid,
                                } in
             if (nat.nat.__type == "dnat" or nat.nat.__type == "dnat_and_snat") {
                 None = l3dgw_port in
-                var __match = "ip && ip4.dst == ${nat.nat.external_ip}" in
+                var __match = "ip && ${ipX}.dst == ${nat.nat.external_ip}" in
                 (var ext_ip_match, var ext_flow) = lrouter_nat_add_ext_ip_match(
                     r, nat, __match, ipX, true, mask) in
                 {
diff --git a/tests/system-ovn.at b/tests/system-ovn.at
index f42cfc0db..c01fde131 100644
--- a/tests/system-ovn.at
+++ b/tests/system-ovn.at
@@ -1348,7 +1348,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -3121,7 +3121,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -4577,7 +4577,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -4663,7 +4663,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -4903,7 +4903,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -5287,7 +5287,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -5717,7 +5717,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -5879,7 +5879,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -5928,7 +5928,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/failed to query port patch-.*/d
@@ -6021,7 +6021,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
@@ -6083,7 +6083,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d
@@ -6234,7 +6234,7 @@  as ovn-nb
 OVS_APP_EXIT_AND_WAIT([ovsdb-server])
 
 as northd
-OVS_APP_EXIT_AND_WAIT([ovn-northd])
+OVS_APP_EXIT_AND_WAIT([NORTHD_TYPE])
 
 as
 OVS_TRAFFIC_VSWITCHD_STOP(["/.*error receiving.*/d