← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1896735] Re: Scenario tests from neutron_tempest_plugin.scenario.test_port_forwardings.PortForwardingTestJSON failing due to ssh failure

 

Reviewed:  https://review.opendev.org/756107
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=2325ad1950412d3eef0cde848c56bb94fbbb7495
Submitter: Zuul
Branch:    master

commit 2325ad1950412d3eef0cde848c56bb94fbbb7495
Author: Slawek Kaplonski <skaplons@xxxxxxxxxx>
Date:   Mon Oct 5 17:07:43 2020 +0200

    Add locks for methods which sets nat rules in router
    
    Router_info class and port_forwarding L3 extensions are using same
    instance of the iptables manager class and it could happend that
    method which sets address scope rules and method which sets
    port forwarding nat rules where run in almost same time and
    one of them was adding rules which wasn't expected to be added.
    Because of that port forwarding rules wasn't configured properly.
    
    This patch fixed that by adding lock for methods which are changing
    rules in iptables_manager's nat table in both router_info and
    port_forwarding extension.
    
    Change-Id: Ic1d5f893a81b7b841745da82f38b7583e47e468d
    Closes-Bug: #1896735


** Changed in: neutron
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1896735

Title:
  Scenario tests from
  neutron_tempest_plugin.scenario.test_port_forwardings.PortForwardingTestJSON
  failing due to ssh failure

Status in neutron:
  Fix Released

Bug description:
  It happens mostly when scenario job is run on Ubuntu Focal and it
  seems that we have race between spawning guest vm and checking it's
  hostname during the tests.

  See example of error:

  Traceback (most recent call last):
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/neutron_tempest_plugin/scenario/test_port_forwardings.py", line 136, in test_port_forwarding_editing_and_deleting_tcp_rule
      self.check_servers_hostnames(server)
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/neutron_tempest_plugin/scenario/base.py", line 473, in check_servers_hostnames
      ssh_client.exec_command('hostname'))
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/tenacity/__init__.py", line 329, in wrapped_f
      return self.call(f, *args, **kw)
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/tenacity/__init__.py", line 409, in call
      do = self.iter(retry_state=retry_state)
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/tenacity/__init__.py", line 356, in iter
      return fut.result()
    File "/usr/lib/python3.8/concurrent/futures/_base.py", line 432, in result
      return self.__get_result()
    File "/usr/lib/python3.8/concurrent/futures/_base.py", line 388, in __get_result
      raise self._exception
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/tenacity/__init__.py", line 412, in call
      result = fn(*args, **kwargs)
    File "/opt/stack/tempest/.tox/tempest/lib/python3.8/site-packages/neutron_tempest_plugin/common/ssh.py", line 178, in exec_command
      return super(Client, self).exec_command(cmd=cmd, encoding=encoding)
    File "/opt/stack/tempest/tempest/lib/common/ssh.py", line 158, in exec_command
      ssh = self._get_ssh_connection()
    File "/opt/stack/tempest/tempest/lib/common/ssh.py", line 126, in _get_ssh_connection
      raise exceptions.SSHTimeout(host=self.host,
  tempest.lib.exceptions.SSHTimeout: Connection to the 172.24.5.12 via SSH timed out.
  User: cirros, Password: None

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1896735/+subscriptions


References