Docker conductor wrap exception incorrectly

Bug #1499524 reported by hongbin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Magnum
Fix Released
Undecided
hongbin

Bug Description

In file magnum/conductor/handlers/docker_conductor.py, several methods are double-wrapping exceptions. For example:

* First wrap:
In method container_delete:
        except errors.APIError as api_error:
            raise exception.ContainerException(
                "Docker API Error : %s" % str(api_error))

* Second wrap:
In method wrap_container_exception:
            raise exception.ContainerException(
                "Docker internal Error: %s" % str(e))

The double-wrapping results in lost of information.

hongbin (hongbin034)
Changed in magnum:
assignee: nobody → hongbin (hongbin034)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to magnum (master)

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

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

Reviewed: https://review.openstack.org/227552
Committed: https://git.openstack.org/cgit/openstack/magnum/commit/?id=0d3a3035edd60b6129f121dd8c6de724f2b9736b
Submitter: Jenkins
Branch: master

commit 0d3a3035edd60b6129f121dd8c6de724f2b9736b
Author: Hongbin Lu <email address hidden>
Date: Thu Sep 24 16:48:35 2015 -0400

    Fix double-wrapping of exception in conductor

    In docker conductor, ContainerException are double-wrapped. In
    particular, methods with decorator @wrap_container_exception should
    not wrap a native exception into Container exception, since the
    decorator will wrap it again.

    Change-Id: If85db06c8bbee6bd58fde9ece13a4cc523e58e2d
    Closes-Bug: #1499524

Changed in magnum:
status: In Progress → Fix Committed
Adrian Otto (aotto)
Changed in magnum:
milestone: none → mitaka-1
status: Fix Committed → Fix Released
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.