Tests: Swift + S3 backup driver unit tests fail w/ RunTimeError

Bug #1941011 reported by Eric Harney
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
New
Medium
Unassigned

Bug Description

https://zuul.opendev.org/t/openstack/build/39436dec08d6463696d3ff349cbbcc1f from https://review.opendev.org/c/openstack/cinder/+/788366/6

8 unit tests in the s3 and swift backup drivers failed, some with messages like this:

cinder.tests.unit.backup.drivers.test_backup_s3.BackupS3TestCase.test_restore
-----------------------------------------------------------------------------

Captured traceback:
~~~~~~~~~~~~~~~~~~~
    Traceback (most recent call last):

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/moto/core/models.py", line 111, in wrapper
    result = func(*args, **kwargs)

      File "/home/zuul/src/opendev.org/openstack/cinder/cinder/tests/unit/backup/drivers/test_backup_s3.py", line 528, in test_restore
    service.backup(backup, self.volume_file)

      File "/home/zuul/src/opendev.org/openstack/cinder/cinder/backup/chunkeddriver.py", line 595, in backup
    shalist = eventlet.tpool.execute(self._calculate_sha, data)

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/tpool.py", line 124, in execute
    rv = e.wait()

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/event.py", line 125, in wait
    result = hub.switch()

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/hub.py", line 313, in switch
    return self.greenlet.switch()

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/hub.py", line 365, in run
    self.wait(sleep_time)

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/poll.py", line 80, in wait
    presult = self.do_poll(seconds)

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/epolls.py", line 31, in do_poll
    return self.poll.poll(seconds)

      File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/fixtures/_fixtures/timeout.py", line 52, in signal_handler
    raise TimeoutException()

    fixtures._fixtures.timeout.TimeoutException

Captured pythonlogging:
~~~~~~~~~~~~~~~~~~~~~~~
    2021-08-24 19:58:43,601 INFO [keystonemiddleware.auth_token] Starting Keystone auth_token middleware
2021-08-24 19:58:43,604 WARNING [keystonemiddleware._common.config] The option "auth_url" is not known to keystonemiddleware
2021-08-24 19:58:43,604 WARNING [keystonemiddleware.auth_token] AuthToken middleware is set with keystone_authtoken.service_token_roles_required set to False. This is backwards compatible but deprecated behaviour. Please set this to True.
2021-08-24 19:58:43,606 WARNING [keystonemiddleware.auth_token] Configuring www_authenticate_uri to point to the public identity endpoint is required; clients may not be able to authenticate against an admin endpoint

Captured stderr:
~~~~~~~~~~~~~~~~
    Traceback (most recent call last):
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/hub.py", line 476, in fire_timers
    timer()
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/timer.py", line 59, in __call__
    cb(*args, **kw)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/tpool.py", line 60, in tpool_trampoline
    _c = _rsock.recv(1)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/greenio/base.py", line 367, in recv
    return self._recv_loop(self.fd.recv, b'', bufsize, flags)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/greenio/base.py", line 361, in _recv_loop
    self._read_trampoline()
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/greenio/base.py", line 333, in _read_trampoline
    timeout_exc=socket_timeout('timed out'))
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/greenio/base.py", line 210, in _trampoline
    mark_as_closed=self._mark_as_closed)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/__init__.py", line 155, in trampoline
    listener = hub.add(hub.READ, fileno, current.switch, current.throw, mark_as_closed)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/epolls.py", line 22, in add
    listener = hub.BaseHub.add(self, evtype, fileno, cb, tb, mac)
  File "/home/zuul/src/opendev.org/openstack/cinder/.tox/py36/lib/python3.6/site-packages/eventlet/hubs/hub.py", line 185, in add
    evtype, fileno, evtype, cb, bucket[fileno]))
RuntimeError: Second simultaneous read on fileno 10 detected. Unless you really know what you're doing, make sure that only one greenthread can read any particular socket. Consider using a pools.Pool. If you do know what you're doing and want to disable this error, call eventlet.debug.hub_prevent_multiple_readers(False) - MY THREAD=<built-in method switch of greenlet.greenlet object at 0x7f7334ac8930>; THAT THREAD=FdListener('read', 10, <built-in method switch of greenlet.greenlet object at 0x7f733556f0e0>, <built-in method throw of greenlet.greenlet object at 0x7f733556f0e0>)

Revision history for this message
Eric Harney (eharney) wrote :
summary: - Tests: Swift backup driver unit tests fail w/ RunTimeError
+ Tests: Swift + S3 backup driver unit tests fail w/ RunTimeError
tags: added: backup-service gate-failure s3 swift tests unit
Changed in cinder:
importance: Undecided → Medium
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.