Bug 1856078 - test_port_pool tests fail using OSP13+OCP3.11
Summary: test_port_pool tests fail using OSP13+OCP3.11
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Networking
Version: 3.11.0
Hardware: Unspecified
OS: Unspecified
urgent
high
Target Milestone: ---
: 3.11.z
Assignee: Luis Tomas Bolivar
QA Contact: GenadiC
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2020-07-12 14:21 UTC by Itzik Brown
Modified: 2020-08-26 22:44 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2020-08-26 22:44:37 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github openshift openshift-ansible pull 12218 0 None closed Bug 1856078: Ensure port/subport created by heat has tags if Kuryr is used 2020-10-22 00:38:03 UTC
Red Hat Product Errata RHBA-2020:3245 0 None None None 2020-08-26 22:44:51 UTC

Description Itzik Brown 2020-07-12 14:21:58 UTC
Description of problem:
The following tests fail:
test_port_pool_min_max_update
test_port_pool_noop_update
test_port_pool_update

Trace for test_port_pool_noop_update:
Traceback (most recent call last):
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/oslo_concurrency/lockutils.py", line 360, in inner
    return f(*args, **kwargs)
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/kuryr_tempest_plugin/tests/scenario/test_port_pool.py", line 286, in test_port_pool_noop_update
    self.assertEqual(initial_ports_num+1, new_port_list_num)
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/testcase.py", line 415, in assertEqual
    self.assertThat(observed, matcher, message)
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/testcase.py", line 502, in assertThat
    raise mismatch_error

testtools.matchers._impl.MismatchError: 2 != 6

Version-Release number of selected component (if applicable):
v3.11.219
2020-07-01.

How reproducible:
100%

Steps to Reproduce:
1.
2.
3.

Actual results:


Expected results:


Additional info:

Comment 1 Luis Tomas Bolivar 2020-07-17 07:10:32 UTC
Seems to be a problem with the test itself. The only tests failing are the ones trying to change the configmap and the outcome seems to be that modification is somehow not enforced. As this only applies to 3.11 since 4.x will reconcile the configmap, I'm setting the target release to 3.11. Anyway this change seems will land in kuryr-tempest-plugin.

Comment 3 Itzik Brown 2020-08-03 12:00:07 UTC
Luis.
The config map is updated but test_port_pool fails:


Traceback (most recent call last):
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/oslo_concurrency/lockutils.py", line 360, in inner
    return f(*args, **kwargs)
  File "/home/stack/plugins/kuryr/kuryr_tempest_plugin/tests/scenario/test_port_pool.py", line 157, in test_port_pool
    self.assertEqual(num_ports_expected, updated3_port_list_num)
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/testcase.py", line 415, in assertEqual
    self.assertThat(observed, matcher, message)
  File "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/testcase.py", line 502, in assertThat
    raise mismatch_error
testtools.matchers._impl.MismatchError: 6 != 11

It seems like a problem after restarting(Deleting the controller) the kuryr controller, without the restart it works.

Luis,Please let me know if you want me to open a new bug.

Comment 4 Luis Tomas Bolivar 2020-08-10 07:07:33 UTC
(In reply to Itzik Brown from comment #3)
> Luis.
> The config map is updated but test_port_pool fails:
> 
> 
> Traceback (most recent call last):
>   File
> "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/
> oslo_concurrency/lockutils.py", line 360, in inner
>     return f(*args, **kwargs)
>   File
> "/home/stack/plugins/kuryr/kuryr_tempest_plugin/tests/scenario/
> test_port_pool.py", line 157, in test_port_pool
>     self.assertEqual(num_ports_expected, updated3_port_list_num)
>   File
> "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/
> testcase.py", line 415, in assertEqual
>     self.assertThat(observed, matcher, message)
>   File
> "/home/stack/.virtualenvs/.tempest/lib64/python3.6/site-packages/testtools/
> testcase.py", line 502, in assertThat
>     raise mismatch_error
> testtools.matchers._impl.MismatchError: 6 != 11
> 
> It seems like a problem after restarting(Deleting the controller) the kuryr
> controller, without the restart it works.
> 
> Luis,Please let me know if you want me to open a new bug.

No, we saw the problem was not that the kuryr configmap was not modified. The problem was that the controller was not being restarted, therefore the new configmap was not being used.

If now you are seeing a different problem that is completely different from before. Note the test you are pasting there was passing before as that one does not require update of the config map.

Comment 5 Luis Tomas Bolivar 2020-08-11 15:03:01 UTC
I saw the problem was with adding tagging support to ensure loadbalancer cleanup (https://github.com/openshift/openshift-ansible/commit/10b3c1440cf10ed4f6b5a949011a883e027405a0). The subports created by Kuryr are tagged but the parent ports (OpenShift VM nodes) are created with Heat and not tagged, thus Kuryr skips them and the port pool recovery upon kuryr controller is broken by that.

Temporal workaround is to tag the OpenShift VM ports with openshift_openstack_clusterid (by default "openshift" if not modified).

Comment 8 Itzik Brown 2020-08-18 05:25:37 UTC
OSP13 
OCP 3.11 2020-08-15.1

Comment 10 errata-xmlrpc 2020-08-26 22:44:37 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (OpenShift Container Platform 3.11.272 bug fix and enhancement update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2020:3245


Note You need to log in before you can comment on or make changes to this bug.