setup_server interface is not covered by unittests for share drivers

Bug #1396953 reported by Valeriy Ponomaryov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Shared File Systems Service (Manila)
Fix Released
Low
Unassigned

Bug Description

When setup_server interface was changed and share driver that use it not - unittests did not fail.

For example, cmode share driver started failing indeed on commit

https://review.openstack.org/#/c/136724/4

with trace:

http://paste.openstack.org/show/138166/

Here is list of failed tests:

http://logs.openstack.org/24/136724/4/check/gate-manila-python27/5e708fb/testr_results.html.gz

Unit tests were still passing, when interface and driver became incompatible indeed.

So, we have poor unit test coverage for following share drivers:

- EMC VNX
- NetApp cluster_mode

Tags: driver
description: updated
summary: - setup_server interface is not covered by unittests for cmode driver
+ setup_server interface is not covered by unittests for share drivers
description: updated
description: updated
tags: added: cmode driver emc netapp vnx
Changed in manila:
importance: Undecided → High
Changed in manila:
importance: High → Medium
Changed in manila:
importance: Medium → Low
Revision history for this message
Clinton Knight (clintonk) wrote :

This bug is known fixed in the cDOT driver refactoring, targeted for K-3. The unit tests for cDOT were completely replaced and coverage is ~100% for driver library methods.

Changed in manila:
assignee: nobody → Clinton Knight (clintonk)
Changed in manila:
status: New → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to manila (master)

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

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

Reviewed: https://review.openstack.org/153622
Committed: https://git.openstack.org/cgit/openstack/manila/commit/?id=12eeedb6392462c8aa2a0afa5763e0a4612cc475
Submitter: Jenkins
Branch: master

commit 12eeedb6392462c8aa2a0afa5763e0a4612cc475
Author: Clinton Knight <email address hidden>
Date: Thu Jan 8 18:01:08 2015 -0500

    Manila NetApp cDOT driver refactoring

    The Manila cDOT driver is a single file exceeding 1200 lines. It contains
    multiple things (driver code, protocol helpers, ZAPI invocation code,
    options) that should be split apart to allow for easier maintenance and
    readability and add the potential for code sharing when we reintroduce
    a 7-mode driver, add a single-SVM cDOT driver, etc.

    We recently refactored NetApp's DOT Cinder drivers into a 4-layer
    structure (interface, library, client, API) that separates concerns and
    achieves the goals set forth above. This commit satisfies a plan to
    do the same thing in Manila. The implementation steps are:

    1. Update directory structure to match that of the Cinder NetApp drivers
    2. Create driver interface shim
    3. Move driver code to library (with base & C-mode classes, to allow for
       7-mode code sharing later)
    4. Move protocol helpers to separate files (already organized by base &
       C-mode classes)
    5. Split out ZAPI code to client layer (with base & C-mode classes, to
       allow for 7-mode code sharing later)
    6. Implement NetApp driver factory as in Cinder
    7. Implement common NetApp options file as in Cinder
    8. Implement cDOT API call optimizations
    9. Update all unit tests as needed

    Note that this patch appears to treble the total number of code lines.
    This is due to the addition of many more unit tests plus a large amount
    of fake controller API data to feed the API client tests.

    Implements: blueprint netapp-manila-cdot-driver-refactoring
    Closes-Bug: #1410317
    Partial-Bug: #1396953
    Closes-Bug: #1370965
    Closes-Bug: #1418690
    Closes-Bug: #1418696

    Change-Id: I3fc0d09adf84a3708f110a89a7c8c760f4ce3588

Revision history for this message
Clinton Knight (clintonk) wrote :

Removed NetApp tags from this bug, as the recent cDOT driver refactoring resolved the issue for that driver.

tags: removed: netapp
tags: removed: cmode
Changed in manila:
assignee: Clinton Knight (clintonk) → nobody
Revision history for this message
jay.xu (jay.xu) wrote :

Removed EMC VNX tags from this bug.

tags: removed: emc vnx
Tom Barron (tpb)
Changed in manila:
status: In Progress → 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.