Initialize_connection exceptions from driver should be properly handled

Bug #1256804 reported by Huang Zhiteng on 2013-12-02
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Cinder
Undecided
Huang Zhiteng

Bug Description

When examining a change in https://review.openstack.org/#/c/56350/6/, I notice that several volume drivers can possibly raise exception when initialize_connection() due to the fact that they need to communicate with back-ends to fetch needed info or even doing something more. But the whole calling chain in Cinder doesn't handle the exception, thus the exception is bubble up to volume manager and client (Nova) may end up getting HTTP 500 error. API service or Volume manager should catch the exceptions and give better error message to client when exception is caught.

Huang Zhiteng (zhiteng-huang) wrote :

GlusterFS, VMDK, HP 3Par FC/iSCSI, Storwize, XIV, windows volume drivers are capable to raise exceptions when initialize_connection().

Changed in cinder:
assignee: nobody → Huang Zhiteng (zhiteng-huang)
tags: added: driver exception

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

Changed in cinder:
status: New → In Progress

Reviewed: https://review.openstack.org/59334
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=17e556acf5c33583dcb6ed34bfd5a5fd9c148c9e
Submitter: Jenkins
Branch: master

commit 17e556acf5c33583dcb6ed34bfd5a5fd9c148c9e
Author: Zhiteng Huang <email address hidden>
Date: Mon Dec 2 17:05:08 2013 +0800

    Handle initialize_connection() exception in volume manager

    Due to the fact that several drivers require backend communication to fetch
    connection information for a volume, it's possile that these driver throw
    exceptions while doing that. Currently exceptions can bubble up to volume
    API not being handled. This patch logs exception in volume manager and
    then raises VolumeBackendAPIException to caller.

    Change-Id: Ib3cc152e04ba029dd835a64b0cfb0a77b8a6828e
    Closes-bug: 1256804

Changed in cinder:
status: In Progress → Fix Committed
Thierry Carrez (ttx) on 2014-01-22
Changed in cinder:
milestone: none → icehouse-2
status: Fix Committed → Fix Released
Thierry Carrez (ttx) on 2014-04-17
Changed in cinder:
milestone: icehouse-2 → 2014.1
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers