Comment 4 for bug 1274123

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to cinder (master)

Reviewed: https://review.openstack.org/72113
Committed: https://git.openstack.org/cgit/openstack/cinder/commit/?id=5ba26c8aa5b295a1202fbc6c01eb050ce3f3af3d
Submitter: Jenkins
Branch: master

commit 5ba26c8aa5b295a1202fbc6c01eb050ce3f3af3d
Author: Avishay Traeger <email address hidden>
Date: Sat Feb 8 22:59:58 2014 +0200

    Storwize/SVC: Fix races in host-related functions

    In the Storwize/SVC driver, initialize_connection checks if a host
    object exists on the storage, and if not, creates one. Similarly,
    terminate_connection checks if there are any more mappings for this
    host, and deletes the host object if there are none. Consequently, there
    exist races between two initialize_connection calls, two
    terminate_connection calls, or one and one.

    The easy solution here is to use locks. Because locks are files on the
    local machine, this implies that all cinder-volume processes managing a
    given Storwize/SVC contoller run on the same machine.

    Change-Id: I62cd992e7150e7d16f1a2b2be6ef61c64b638858
    Closes-Bug: #1274123