)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"3d56c5532ffc6194091531ba9fc930736bcf9f88","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2013-07-15 20:14:05 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adding support for iSER transport protocol"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Implements: blueprint add-iser-support-to-cinder"},{"line_number":10,"context_line":"Change-Id: I55fb7add68151141be571cb9004389951851226b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAQn%2F%2F3H4%3D","line":8,"updated":"2013-07-21 11:31:17.000000000","message":"Add DocImpact?","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":5,"context_line":"CommitDate: 2013-07-15 20:14:05 +0300"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Adding support for iSER transport protocol"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Implements: blueprint add-iser-support-to-cinder"},{"line_number":10,"context_line":"Change-Id: I55fb7add68151141be571cb9004389951851226b"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAQn%2F%2FxHo%3D","line":8,"in_reply_to":"AAAAQn%2F%2F3H4%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/brick/iser/iser.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"30ea424469517b2b958f4004520c3f90a13362dd","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                      % {\u0027vol_id\u0027: vol_id, \u0027e\u0027: str(e)})"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"            #Don\u0027t forget to remove the persistent file we created"},{"line_number":165,"context_line":"            os.unlink(volume_path)"},{"line_number":166,"context_line":"            raise exception.ISERTargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"        iqn \u003d \u0027%s%s\u0027 % (CONF.iser_target_prefix, vol_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F7s8%3D","line":165,"updated":"2013-06-18 05:16:54.000000000","message":"Shouldn\u0027t this be in a finally clause?","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"3e49275a33a3db2274e39640e62d90569240b195","unresolved":false,"context_lines":[{"line_number":162,"context_line":"                      % {\u0027vol_id\u0027: vol_id, \u0027e\u0027: str(e)})"},{"line_number":163,"context_line":""},{"line_number":164,"context_line":"            #Don\u0027t forget to remove the persistent file we created"},{"line_number":165,"context_line":"            os.unlink(volume_path)"},{"line_number":166,"context_line":"            raise exception.ISERTargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"        iqn \u003d \u0027%s%s\u0027 % (CONF.iser_target_prefix, vol_id)"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6ng%3D","line":165,"in_reply_to":"AAAAPn%2F%2F7s8%3D","updated":"2013-06-18 11:24:37.000000000","message":"It\u0027s should be here and not in a finally clause.\notherwise, it\u0027ll fail to remove the target, see line #185\nit\u0027ll enter the else condition and raise an exception.\n\nyou want to remove the file/path in a case of exception, else, you want to keep it for remove purpose.\n\nyou can also see \"iscsi.py\" that does the same thing.","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"30ea424469517b2b958f4004520c3f90a13362dd","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                      % {\u0027vol_id\u0027: vol_id, \u0027e\u0027: str(e)})"},{"line_number":202,"context_line":"            raise exception.ISERTargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"        os.unlink(volume_path)"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    def show_target(self, tid, iqn\u003dNone, **kwargs):"},{"line_number":207,"context_line":"        if iqn is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F7sI%3D","line":204,"updated":"2013-06-18 05:16:54.000000000","message":"in a finally clause ?","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"3e49275a33a3db2274e39640e62d90569240b195","unresolved":false,"context_lines":[{"line_number":201,"context_line":"                      % {\u0027vol_id\u0027: vol_id, \u0027e\u0027: str(e)})"},{"line_number":202,"context_line":"            raise exception.ISERTargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":203,"context_line":""},{"line_number":204,"context_line":"        os.unlink(volume_path)"},{"line_number":205,"context_line":""},{"line_number":206,"context_line":"    def show_target(self, tid, iqn\u003dNone, **kwargs):"},{"line_number":207,"context_line":"        if iqn is None:"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6nY%3D","line":204,"in_reply_to":"AAAAPn%2F%2F7sI%3D","updated":"2013-06-18 11:24:37.000000000","message":"see my above reply.\n\nIn remove case, you want to delete the file/path anyway.\nthis is why it\u0027s in a finally clause, you don\u0027t need it anymore.","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"3d56c5532ffc6194091531ba9fc930736bcf9f88","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2010 United States Government as represented by the"},{"line_number":4,"context_line":"# Administrator of the National Aeronautics and Space Administration."},{"line_number":5,"context_line":"# All Rights Reserved."},{"line_number":6,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F3IM%3D","line":3,"updated":"2013-07-21 11:31:17.000000000","message":"Fix copyright","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2010 United States Government as represented by the"},{"line_number":4,"context_line":"# Administrator of the National Aeronautics and Space Administration."},{"line_number":5,"context_line":"# All Rights Reserved."},{"line_number":6,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FxHg%3D","line":3,"in_reply_to":"AAAAQn%2F%2F3IM%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def create_iser_target(self, name, tid, lun, path,"},{"line_number":71,"context_line":"                           chap_auth\u003dNone, **kwargs):"},{"line_number":72,"context_line":"        \"\"\"Create a iSER target and logical unit\"\"\""},{"line_number":73,"context_line":"        raise NotImplementedError()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def remove_iser_target(self, tid, lun, vol_id, **kwargs):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4Zs%3D","line":72,"updated":"2013-07-19 21:33:45.000000000","message":"missing .","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":69,"context_line":""},{"line_number":70,"context_line":"    def create_iser_target(self, name, tid, lun, path,"},{"line_number":71,"context_line":"                           chap_auth\u003dNone, **kwargs):"},{"line_number":72,"context_line":"        \"\"\"Create a iSER target and logical unit\"\"\""},{"line_number":73,"context_line":"        raise NotImplementedError()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def remove_iser_target(self, tid, lun, vol_id, **kwargs):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FuM4%3D","line":72,"in_reply_to":"AAAAQn%2F%2F4Zs%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        raise NotImplementedError()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def remove_iser_target(self, tid, lun, vol_id, **kwargs):"},{"line_number":76,"context_line":"        \"\"\"Remove a iSER target and logical unit\"\"\""},{"line_number":77,"context_line":"        raise NotImplementedError()"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _new_target(self, name, tid, **kwargs):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4Zw%3D","line":76,"updated":"2013-07-19 21:33:45.000000000","message":"missing .","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":73,"context_line":"        raise NotImplementedError()"},{"line_number":74,"context_line":""},{"line_number":75,"context_line":"    def remove_iser_target(self, tid, lun, vol_id, **kwargs):"},{"line_number":76,"context_line":"        \"\"\"Remove a iSER target and logical unit\"\"\""},{"line_number":77,"context_line":"        raise NotImplementedError()"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"    def _new_target(self, name, tid, **kwargs):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FuM0%3D","line":76,"in_reply_to":"AAAAQn%2F%2F4Zw%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"3d56c5532ffc6194091531ba9fc930736bcf9f88","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        raise NotImplementedError()"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"class TgtAdm(TargetAdmin):"},{"line_number":101,"context_line":"    \"\"\"iSER target administration using tgtadm.\"\"\""},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def __init__(self, execute\u003dutils.execute):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F3II%3D","line":100,"updated":"2013-07-21 11:31:17.000000000","message":"This class is mainly copy-paste from iscsi/iscsi.py - can we remove some of the code duplication?","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":97,"context_line":"        raise NotImplementedError()"},{"line_number":98,"context_line":""},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"class TgtAdm(TargetAdmin):"},{"line_number":101,"context_line":"    \"\"\"iSER target administration using tgtadm.\"\"\""},{"line_number":102,"context_line":""},{"line_number":103,"context_line":"    def __init__(self, execute\u003dutils.execute):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FxGM%3D","line":100,"in_reply_to":"AAAAQn%2F%2F3II%3D","updated":"2013-07-24 13:33:25.000000000","message":"I guess you are right.. and it can be done.\nBut, I preferred it to be more understood, and I think that by using iser names instead of iscsi* it\u0027s more proper?","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/exception.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"class ISERTargetAttachFailed(CinderException):"},{"line_number":310,"context_line":"    message \u003d _(\"Failed to attach iSER target for volume %(volume_id)s.\")"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"class ISERTargetRemoveFailed(CinderException):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4X4%3D","line":310,"updated":"2013-07-19 21:33:45.000000000","message":"can we be consistent in the case used for iSER here and the other exceptions?\nThe other strings use \u0027iser\u0027 and you use \u0027iSER\u0027 here.","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":307,"context_line":""},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"class ISERTargetAttachFailed(CinderException):"},{"line_number":310,"context_line":"    message \u003d _(\"Failed to attach iSER target for volume %(volume_id)s.\")"},{"line_number":311,"context_line":""},{"line_number":312,"context_line":""},{"line_number":313,"context_line":"class ISERTargetRemoveFailed(CinderException):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FxIE%3D","line":310,"in_reply_to":"AAAAQn%2F%2F4X4%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/tests/fake_flags.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    conf.set_default(\u0027volume_driver\u0027,"},{"line_number":36,"context_line":"                     \u0027cinder.tests.fake_driver.FakeISCSIDriver\u0027)"},{"line_number":37,"context_line":"    conf.set_default(\u0027volume_driver\u0027,"},{"line_number":38,"context_line":"                     \u0027cinder.tests.fake_driver.FakeISERDriver\u0027)"},{"line_number":39,"context_line":"    conf.set_default(\u0027iscsi_helper\u0027, \u0027fake\u0027)"},{"line_number":40,"context_line":"    conf.set_default(\u0027iser_helper\u0027, \u0027fake\u0027)"},{"line_number":41,"context_line":"    conf.set_default(\u0027connection_type\u0027, \u0027fake\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4Xo%3D","line":38,"updated":"2013-07-19 21:33:45.000000000","message":"Duplicate setting.","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":35,"context_line":"    conf.set_default(\u0027volume_driver\u0027,"},{"line_number":36,"context_line":"                     \u0027cinder.tests.fake_driver.FakeISCSIDriver\u0027)"},{"line_number":37,"context_line":"    conf.set_default(\u0027volume_driver\u0027,"},{"line_number":38,"context_line":"                     \u0027cinder.tests.fake_driver.FakeISERDriver\u0027)"},{"line_number":39,"context_line":"    conf.set_default(\u0027iscsi_helper\u0027, \u0027fake\u0027)"},{"line_number":40,"context_line":"    conf.set_default(\u0027iser_helper\u0027, \u0027fake\u0027)"},{"line_number":41,"context_line":"    conf.set_default(\u0027connection_type\u0027, \u0027fake\u0027)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FxF8%3D","line":38,"in_reply_to":"AAAAQn%2F%2F4Xo%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/tests/test_iser.py":[{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"3d56c5532ffc6194091531ba9fc930736bcf9f88","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2011 Red Hat, Inc."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F3H8%3D","line":3,"updated":"2013-07-21 11:31:17.000000000","message":"Fix copyright","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2011 Red Hat, Inc."},{"line_number":4,"context_line":"#"},{"line_number":5,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"},{"line_number":6,"context_line":"#    not use this file except in compliance with the License. You may obtain"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FxCI%3D","line":3,"in_reply_to":"AAAAQn%2F%2F3H8%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/tests/test_volume.py":[{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":1303,"context_line":""},{"line_number":1304,"context_line":""},{"line_number":1305,"context_line":"class ISERTestCase(ISCSITestCase):"},{"line_number":1306,"context_line":"    \"\"\"Test Case for ISERDriver\"\"\""},{"line_number":1307,"context_line":"    driver_name \u003d \"cinder.volume.drivers.lvm.LVMISERDriver\""},{"line_number":1308,"context_line":""},{"line_number":1309,"context_line":"    def test_do_iscsi_discovery(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4XY%3D","line":1306,"updated":"2013-07-19 21:33:45.000000000","message":"missing .","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":1303,"context_line":""},{"line_number":1304,"context_line":""},{"line_number":1305,"context_line":"class ISERTestCase(ISCSITestCase):"},{"line_number":1306,"context_line":"    \"\"\"Test Case for ISERDriver\"\"\""},{"line_number":1307,"context_line":"    driver_name \u003d \"cinder.volume.drivers.lvm.LVMISERDriver\""},{"line_number":1308,"context_line":""},{"line_number":1309,"context_line":"    def test_do_iscsi_discovery(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FuMI%3D","line":1306,"in_reply_to":"AAAAQn%2F%2F4XY%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"b2cd7ebb98aba17f81a8fb1c9c29d468dbd60b2d","unresolved":false,"context_lines":[{"line_number":1331,"context_line":""},{"line_number":1332,"context_line":""},{"line_number":1333,"context_line":"class FibreChannelTestCase(DriverTestCase):"},{"line_number":1334,"context_line":"    \"\"\"Test Case for FibreChannelDriver\"\"\""},{"line_number":1335,"context_line":"    driver_name \u003d \"cinder.volume.driver.FibreChannelDriver\""},{"line_number":1336,"context_line":""},{"line_number":1337,"context_line":"    def test_initialize_connection(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F4XU%3D","line":1334,"updated":"2013-07-19 21:33:45.000000000","message":"missing .","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":1331,"context_line":""},{"line_number":1332,"context_line":""},{"line_number":1333,"context_line":"class FibreChannelTestCase(DriverTestCase):"},{"line_number":1334,"context_line":"    \"\"\"Test Case for FibreChannelDriver\"\"\""},{"line_number":1335,"context_line":"    driver_name \u003d \"cinder.volume.driver.FibreChannelDriver\""},{"line_number":1336,"context_line":""},{"line_number":1337,"context_line":"    def test_initialize_connection(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2FuME%3D","line":1334,"in_reply_to":"AAAAQn%2F%2F4XU%3D","updated":"2013-07-24 13:33:25.000000000","message":"Done","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/volume/driver.py":[{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"2c17d880b8fb7d042320ef115debe7632c95e4f7","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    cfg.IntOpt(\u0027iscsi_port\u0027,"},{"line_number":56,"context_line":"               default\u003d3260,"},{"line_number":57,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":58,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":59,"context_line":"               default\u003d3,"},{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6m4%3D","line":58,"updated":"2013-06-18 11:29:36.000000000","message":"maybe change to iser_num_scan_tries, to be consistent with the other options that have the \u0027iser_\u0027 prefix?","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"5891a37ea4d0caa5190f6e9cedf10730b6448635","unresolved":false,"context_lines":[{"line_number":55,"context_line":"    cfg.IntOpt(\u0027iscsi_port\u0027,"},{"line_number":56,"context_line":"               default\u003d3260,"},{"line_number":57,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":58,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":59,"context_line":"               default\u003d3,"},{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6kI%3D","line":58,"in_reply_to":"AAAAPn%2F%2F6m4%3D","updated":"2013-06-18 11:47:19.000000000","message":"it\u0027s possible. I preferred to be consistent with the iSCSI options.\nplease see \"num_iscsi_scan_tries\"","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"2c17d880b8fb7d042320ef115debe7632c95e4f7","unresolved":false,"context_lines":[{"line_number":57,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":58,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":59,"context_line":"               default\u003d3,"},{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":62,"context_line":"               default\u003d100,"},{"line_number":63,"context_line":"               help\u003d\u0027Number of iser target ids per host\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6m0%3D","line":60,"updated":"2013-06-18 11:29:36.000000000","message":"maximum number?  (If yes, fix iscsi option as well)","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"5891a37ea4d0caa5190f6e9cedf10730b6448635","unresolved":false,"context_lines":[{"line_number":57,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":58,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":59,"context_line":"               default\u003d3,"},{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":62,"context_line":"               default\u003d100,"},{"line_number":63,"context_line":"               help\u003d\u0027Number of iser target ids per host\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6j8%3D","line":60,"in_reply_to":"AAAAPn%2F%2F6m0%3D","updated":"2013-06-18 11:47:19.000000000","message":"yes. see line #499","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"2c17d880b8fb7d042320ef115debe7632c95e4f7","unresolved":false,"context_lines":[{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":62,"context_line":"               default\u003d100,"},{"line_number":63,"context_line":"               help\u003d\u0027Number of iser target ids per host\u0027),"},{"line_number":64,"context_line":"    cfg.StrOpt(\u0027iser_target_prefix\u0027,"},{"line_number":65,"context_line":"               default\u003d\u0027iqn.2010-10.org.iser.openstack:\u0027,"},{"line_number":66,"context_line":"               help\u003d\u0027prefix for iser volumes\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6mw%3D","line":63,"updated":"2013-06-18 11:29:36.000000000","message":"maximum number?  (If yes, fix iscsi option as well)","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"5891a37ea4d0caa5190f6e9cedf10730b6448635","unresolved":false,"context_lines":[{"line_number":60,"context_line":"               help\u003d\u0027number of times to rescan iSER target to find volume\u0027),"},{"line_number":61,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":62,"context_line":"               default\u003d100,"},{"line_number":63,"context_line":"               help\u003d\u0027Number of iser target ids per host\u0027),"},{"line_number":64,"context_line":"    cfg.StrOpt(\u0027iser_target_prefix\u0027,"},{"line_number":65,"context_line":"               default\u003d\u0027iqn.2010-10.org.iser.openstack:\u0027,"},{"line_number":66,"context_line":"               help\u003d\u0027prefix for iser volumes\u0027),"}],"source_content_type":"text/x-python","patch_set":1,"id":"AAAAPn%2F%2F6jw%3D","line":63,"in_reply_to":"AAAAPn%2F%2F6mw%3D","updated":"2013-06-18 11:47:19.000000000","message":"yes. see \"lvm.py\" line #427","commit_id":"814b17bd0b297f56a8b6405326b36bad0eaa8958"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"9936f21b06c779643b10dc2739db30acc5230af7","unresolved":false,"context_lines":[{"line_number":364,"context_line":""},{"line_number":365,"context_line":"        \"\"\""},{"line_number":366,"context_line":""},{"line_number":367,"context_line":"        if CONF.iser_helper \u003d\u003d \u0027lioadm\u0027:"},{"line_number":368,"context_line":"            self.tgtadm.initialize_connection(volume, connector)"},{"line_number":369,"context_line":""},{"line_number":370,"context_line":"        iser_properties \u003d self._get_iser_properties(volume)"}],"source_content_type":"text/x-python","patch_set":3,"id":"AAAAPn%2F%2F6X0%3D","line":367,"updated":"2013-06-18 13:30:41.000000000","message":"currently \"iser_helper\" can be \"fake\" OR by default \"tgtadm\"\nplease see \"iser.py\".\n\nI\u0027ll add LIO support later after tgtadm.","commit_id":"e8c6c066c464a4fa399d9c7d326f4979338b1b51"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"7a29ea702e7a892bf24126b81a80987193a46c94","unresolved":false,"context_lines":[{"line_number":214,"context_line":"        pass"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"class ISERDriver(VolumeDriver):"},{"line_number":218,"context_line":"    \"\"\"Executes commands relating to ISER volumes."},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"    We make use of model provider properties as follows:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FdLY%3D","line":217,"updated":"2013-07-01 15:59:11.000000000","message":"Should this just inherit from ISCSIDriver to avoid duplicating utility methods?","commit_id":"2829d56012deb14abe0a9e56aea83175aef54624"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"78ccd6d04874dbab8ddbc515e0a6fcf4429e1c94","unresolved":false,"context_lines":[{"line_number":214,"context_line":"        pass"},{"line_number":215,"context_line":""},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"class ISERDriver(VolumeDriver):"},{"line_number":218,"context_line":"    \"\"\"Executes commands relating to ISER volumes."},{"line_number":219,"context_line":""},{"line_number":220,"context_line":"    We make use of model provider properties as follows:"}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2Fa0s%3D","line":217,"in_reply_to":"AAAAPn%2F%2FdLY%3D","updated":"2013-07-02 11:55:04.000000000","message":"I\u0027m working on that.. got the same comment on the nova side. I\u0027ll change that on both sides and re-push. Thanks","commit_id":"2829d56012deb14abe0a9e56aea83175aef54624"},{"author":{"_account_id":24,"name":"Chuck Short","email":"charles.short@windriver.com","username":"zulcss"},"change_message_id":"11f9608dc7b800cbc0ca2293601872e2e10421ac","unresolved":false,"context_lines":[{"line_number":42,"context_line":"               help\u003d\u0027The percentage of backend capacity is reserved\u0027),"},{"line_number":43,"context_line":"    cfg.IntOpt(\u0027num_iscsi_scan_tries\u0027,"},{"line_number":44,"context_line":"               default\u003d3,"},{"line_number":45,"context_line":"               help\u003d\u0027The maximum number of times to rescan iSCSI target\\"},{"line_number":46,"context_line":"               to find volume\u0027),"},{"line_number":47,"context_line":"    cfg.IntOpt(\u0027iscsi_num_targets\u0027,"},{"line_number":48,"context_line":"               default\u003d100,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAQn%2F%2FPCI%3D","line":45,"updated":"2013-08-05 01:00:56.000000000","message":"line continutation is not necessary here it should be\nhelp\u003d\u0027The maximum...\u0027\n        \u0027to find the volume\u0027),","commit_id":"208d557841ddb5d8659539b2c220b0181ead5b1d"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"0df23c9c57dcdaf0db683fdcd54065965c3f6509","unresolved":false,"context_lines":[{"line_number":42,"context_line":"               help\u003d\u0027The percentage of backend capacity is reserved\u0027),"},{"line_number":43,"context_line":"    cfg.IntOpt(\u0027num_iscsi_scan_tries\u0027,"},{"line_number":44,"context_line":"               default\u003d3,"},{"line_number":45,"context_line":"               help\u003d\u0027The maximum number of times to rescan iSCSI target\\"},{"line_number":46,"context_line":"               to find volume\u0027),"},{"line_number":47,"context_line":"    cfg.IntOpt(\u0027iscsi_num_targets\u0027,"},{"line_number":48,"context_line":"               default\u003d100,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAQn%2F%2FNa0%3D","line":45,"in_reply_to":"AAAAQn%2F%2FPCI%3D","updated":"2013-08-05 13:18:21.000000000","message":"Done","commit_id":"208d557841ddb5d8659539b2c220b0181ead5b1d"},{"author":{"_account_id":24,"name":"Chuck Short","email":"charles.short@windriver.com","username":"zulcss"},"change_message_id":"11f9608dc7b800cbc0ca2293601872e2e10421ac","unresolved":false,"context_lines":[{"line_number":58,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":59,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":60,"context_line":"               default\u003d3,"},{"line_number":61,"context_line":"               help\u003d\u0027The maximum number of times to rescan iSER target\\"},{"line_number":62,"context_line":"               to find volume\u0027),"},{"line_number":63,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":64,"context_line":"               default\u003d100,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAQn%2F%2FPCA%3D","line":61,"updated":"2013-08-05 01:00:56.000000000","message":"ditto","commit_id":"208d557841ddb5d8659539b2c220b0181ead5b1d"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"0df23c9c57dcdaf0db683fdcd54065965c3f6509","unresolved":false,"context_lines":[{"line_number":58,"context_line":"               help\u003d\u0027The port that the iSCSI daemon is listening on\u0027),"},{"line_number":59,"context_line":"    cfg.IntOpt(\u0027num_iser_scan_tries\u0027,"},{"line_number":60,"context_line":"               default\u003d3,"},{"line_number":61,"context_line":"               help\u003d\u0027The maximum number of times to rescan iSER target\\"},{"line_number":62,"context_line":"               to find volume\u0027),"},{"line_number":63,"context_line":"    cfg.IntOpt(\u0027iser_num_targets\u0027,"},{"line_number":64,"context_line":"               default\u003d100,"}],"source_content_type":"text/x-python","patch_set":8,"id":"AAAAQn%2F%2FNa4%3D","line":61,"in_reply_to":"AAAAQn%2F%2FPCA%3D","updated":"2013-08-05 13:18:21.000000000","message":"Done","commit_id":"208d557841ddb5d8659539b2c220b0181ead5b1d"}],"cinder/volume/drivers/lvm.py":[{"author":{"_account_id":4355,"name":"Avishay Traeger","email":"avishay@stratoscale.com","username":"avishay-il"},"change_message_id":"3d56c5532ffc6194091531ba9fc930736bcf9f88","unresolved":false,"context_lines":[{"line_number":601,"context_line":"        return \"%s %s %s\" % (chap, name, password)"},{"line_number":602,"context_line":""},{"line_number":603,"context_line":""},{"line_number":604,"context_line":"class LVMISERDriver(LVMISCSIDriver, driver.ISERDriver):"},{"line_number":605,"context_line":"    \"\"\"Executes commands relating to ISER volumes."},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"    We make use of model provider properties as follows:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2F3IA%3D","line":604,"updated":"2013-07-21 11:31:17.000000000","message":"Is it possible to inherit more from LVMISCSIDriver to remove duplicated code?  \"No\" is an acceptable answer :)","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"d64c4e076fc150bbf90e9c3d6923e7624a212418","unresolved":false,"context_lines":[{"line_number":601,"context_line":"        return \"%s %s %s\" % (chap, name, password)"},{"line_number":602,"context_line":""},{"line_number":603,"context_line":""},{"line_number":604,"context_line":"class LVMISERDriver(LVMISCSIDriver, driver.ISERDriver):"},{"line_number":605,"context_line":"    \"\"\"Executes commands relating to ISER volumes."},{"line_number":606,"context_line":""},{"line_number":607,"context_line":"    We make use of model provider properties as follows:"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAQn%2F%2Fuhc%3D","line":604,"in_reply_to":"AAAAQn%2F%2F3IA%3D","updated":"2013-07-24 13:33:25.000000000","message":"I\u0027ll try :)","commit_id":"cb479e1c8b61b495339bb2649d604cd429c9d427"}],"cinder/volume/manager.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"7a29ea702e7a892bf24126b81a80987193a46c94","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \u0027cinder.volume.drivers.zadara.ZadaraVPSAISCSIDriver\u0027,"},{"line_number":104,"context_line":"    \u0027cinder.volume.driver.ISCSIDriver\u0027:"},{"line_number":105,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISCSIDriver\u0027,"},{"line_number":106,"context_line":"    \u0027cinder.volume.driver.ISERDriver\u0027:"},{"line_number":107,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISERDriver\u0027}"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2FdLM%3D","line":106,"updated":"2013-07-01 15:59:11.000000000","message":"This is for backwards-compat and shouldn\u0027t be needed for a new driver.","commit_id":"2829d56012deb14abe0a9e56aea83175aef54624"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"3002568d731e47b8650aba24487db6f3c5213968","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \u0027cinder.volume.drivers.zadara.ZadaraVPSAISCSIDriver\u0027,"},{"line_number":104,"context_line":"    \u0027cinder.volume.driver.ISCSIDriver\u0027:"},{"line_number":105,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISCSIDriver\u0027,"},{"line_number":106,"context_line":"    \u0027cinder.volume.driver.ISERDriver\u0027:"},{"line_number":107,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISERDriver\u0027}"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAP3%2F%2F850%3D","line":106,"in_reply_to":"AAAAPn%2F%2Fa0I%3D","updated":"2013-07-08 17:22:29.000000000","message":"They just set volume_driver \u003d cinder.volume.drivers.lvm.LVMISERDriver, right?\n\ncinder.volume.driver.ISERDriver shouldn\u0027t ever be in anyone\u0027s config.","commit_id":"2829d56012deb14abe0a9e56aea83175aef54624"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"78ccd6d04874dbab8ddbc515e0a6fcf4429e1c94","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \u0027cinder.volume.drivers.zadara.ZadaraVPSAISCSIDriver\u0027,"},{"line_number":104,"context_line":"    \u0027cinder.volume.driver.ISCSIDriver\u0027:"},{"line_number":105,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISCSIDriver\u0027,"},{"line_number":106,"context_line":"    \u0027cinder.volume.driver.ISERDriver\u0027:"},{"line_number":107,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISERDriver\u0027}"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"AAAAPn%2F%2Fa0I%3D","line":106,"in_reply_to":"AAAAPn%2F%2FdLM%3D","updated":"2013-07-02 11:55:04.000000000","message":"So, how the user can choose between iSER or iSCSI/TCP?\ncurrently, In order to enable iSER, need to adjust these values at \"/etc/cinder/cinder.conf\":\niser_ip_address \u003d \u003cipoib/roce_address\u003e\nvolume_driver \u003d cinder.volume.drivers.lvm.LVMISERDriver","commit_id":"2829d56012deb14abe0a9e56aea83175aef54624"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"5188c05bd0f8bfd89e54dbe82b05c38317f6df29","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \u0027cinder.volume.drivers.zadara.ZadaraVPSAISCSIDriver\u0027,"},{"line_number":104,"context_line":"    \u0027cinder.volume.driver.ISCSIDriver\u0027:"},{"line_number":105,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISCSIDriver\u0027,"},{"line_number":106,"context_line":"    \u0027cinder.volume.driver.ISERDriver\u0027:"},{"line_number":107,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISERDriver\u0027}"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAP3%2F%2F85Y%3D","line":106,"updated":"2013-07-08 17:22:40.000000000","message":"See comments in patch set 4, shouldn\u0027t be needed?","commit_id":"9b05636c67ccb6689a4d1bc8bad2583a304397ed"},{"author":{"_account_id":6575,"name":"Shlomi Sasson","email":"shlomis@mellanox.com","username":"shlomis"},"change_message_id":"67c1817819d8f0cfa38ba6975cb3d47a053e31cc","unresolved":false,"context_lines":[{"line_number":103,"context_line":"    \u0027cinder.volume.drivers.zadara.ZadaraVPSAISCSIDriver\u0027,"},{"line_number":104,"context_line":"    \u0027cinder.volume.driver.ISCSIDriver\u0027:"},{"line_number":105,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISCSIDriver\u0027,"},{"line_number":106,"context_line":"    \u0027cinder.volume.driver.ISERDriver\u0027:"},{"line_number":107,"context_line":"    \u0027cinder.volume.drivers.lvm.LVMISERDriver\u0027}"},{"line_number":108,"context_line":""},{"line_number":109,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"AAAAP3%2F%2F5%2Fg%3D","line":106,"in_reply_to":"AAAAP3%2F%2F85Y%3D","updated":"2013-07-09 13:12:37.000000000","message":"Done","commit_id":"9b05636c67ccb6689a4d1bc8bad2583a304397ed"}]}
