volume qos specs list errors occasionally

Bug #1687083 reported by Dean Troyer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
python-openstackclient
Fix Released
Low
Dean Troyer

Bug Description

This is seen occasionally in functional tests:

  tempest.lib.exceptions.CommandFailed: Command 'openstack --debug volume qos list -f json' returned non-zero exit status 1.

With debug enabled, here is the actual problem:

  GET call to volumev3 for http://15.184.65.35:8776/v3/03609d20f65441f784f65cae3eba798e/qos-specs/f14d32e9-7902-436f-b8d6-905dfa8a0db8/associations used request id req-b5af9a65-6d64-4325-9e9a-8da978911d59
  No such QoS spec f14d32e9-7902-436f-b8d6-905dfa8a0db8. (HTTP 404) (Request-ID: req-b5af9a65-6d64-4325-9e9a-8da978911d59)

The volume qos spec list command gets the list of specs, then does a detail lookup on each one to get the rest of the desired information. If the detailed lookup errors, we see the above.

In functional tests the list includes specs form other tests, and occasionally another test delets its spec between the list and detail calls. Doh!

We should ignore the not found error in the detail lookup and either a) include what we do have on the spec or b) drop the not-found spec from the list. Either way the list command should not be aborted.

Dean Troyer (dtroyer)
Changed in python-openstackclient:
assignee: nobody → Dean Troyer (dtroyer)
status: New → Triaged
importance: Undecided → Low
Revision history for this message
Dean Troyer (dtroyer) wrote :

Upon further review, the failure is in a secondary lookup for associations, this should be skipped for that spec and the lookups continue.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to python-openstackclient (master)

Fix proposed to branch: master
Review: https://review.openstack.org/461153

Changed in python-openstackclient:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to python-openstackclient (master)

Reviewed: https://review.openstack.org/461153
Committed: https://git.openstack.org/cgit/openstack/python-openstackclient/commit/?id=2c5405ed5e69eb5b000d47d92e1019b8bb9b54f9
Submitter: Jenkins
Branch: master

commit 2c5405ed5e69eb5b000d47d92e1019b8bb9b54f9
Author: Dean Troyer <email address hidden>
Date: Fri Apr 28 14:25:00 2017 -0500

    Fix volume qos spec list

    This has been sporadically failing in functional tests due to the way
    the volume qos spec list command calls get_associations() for each spec.
    When tests run in parallel occasionally a spec from another test is present
    in the list returned and is deleted before the get_associations() call is
    made, causing a NotFound exception. We should just keep going when this
    occurs.

    * make v1 match v2
    * add tests to ensure the exception is being caught and handled

    Closes-Bug: #1687083
    Change-Id: If2d17c1deb53d293fc2c7f0c527a4e4ef6f69976

Changed in python-openstackclient:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/python-openstackclient 3.10.0

This issue was fixed in the openstack/python-openstackclient 3.10.0 release.

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.