)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     kedar-vidvans \u003ckedar.vidvans@oracle.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-08-07 17:36:44 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement backend assisted volume migration for Oracle ZFSSA drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The Oracle ZFSSA drivers will migrate the volume directly from the source"},{"line_number":10,"context_line":"host to the destination host if both hosts are configured with Oracle ZFSSA."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a4dcd0f_d09fb7b2","line":7,"updated":"2015-08-10 11:32:36.000000000","message":"https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure\n\n\"The first line should be limited to 50 characters and should not end with a period\"","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     kedar-vidvans \u003ckedar.vidvans@oracle.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-08-07 17:36:44 -0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Implement backend assisted volume migration for Oracle ZFSSA drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The Oracle ZFSSA drivers will migrate the volume directly from the source"},{"line_number":10,"context_line":"host to the destination host if both hosts are configured with Oracle ZFSSA."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1a4dcd0f_942c759a","line":7,"in_reply_to":"1a4dcd0f_d09fb7b2","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13013,"name":"abhiram moturi","email":"abhiram.moturi@oracle.com","username":"amoturi"},"change_message_id":"7fb3bc403e1978100926f00dc7046cd9e5221c8f","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Assisted volume migration for Oracle ZFSSA drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The Oracle ZFSSA drivers will migrate the volume directly from the source"},{"line_number":10,"context_line":"host to the destination host if both hosts are configured with Oracle ZFSSA."},{"line_number":11,"context_line":"This type of volume migration will bypass the cinder host and will directly"},{"line_number":12,"context_line":"transfer the volume to the destination backend."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"fa1b9901_36c80da8","line":9,"updated":"2015-08-19 19:29:42.000000000","message":"Line seems longer than 72 chars. \nsee https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_Git_commit_message_structure","commit_id":"61cb5beb6941bf40dfae5a871a110285299cac92"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"2fc63cd115c22b67b7414382f7bce74e634fc185","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Assisted volume migration for Oracle ZFSSA drivers"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The Oracle ZFSSA drivers will migrate the volume directly from the source"},{"line_number":10,"context_line":"host to the destination host if both hosts are configured with Oracle ZFSSA."},{"line_number":11,"context_line":"This type of volume migration will bypass the cinder host and will directly"},{"line_number":12,"context_line":"transfer the volume to the destination backend."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":10,"id":"fa1b9901_9bbca1dd","line":9,"in_reply_to":"fa1b9901_36c80da8","updated":"2015-08-19 20:26:59.000000000","message":"Done","commit_id":"61cb5beb6941bf40dfae5a871a110285299cac92"}],"cinder/tests/unit/test_zfssa.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        self.configuration.zfssa_replication_ip \u003d \u00271.1.1.1\u0027"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    def _util_migrate_volume_exceptions(self):"},{"line_number":111,"context_line":"        self.drv.zfssa.get_lun.return_value \u003d \\"},{"line_number":112,"context_line":"            {\u0027targetgroup\u0027: \u0027test-target-grp1\u0027}"},{"line_number":113,"context_line":"        self.drv.zfssa.get_asn.return_value \u003d \\"},{"line_number":114,"context_line":"            \u00279a2b5a0f-e3af-6d14-9578-8825f229dc89\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_1f4e79c1","line":111,"updated":"2015-08-24 18:53:18.000000000","message":"For future patches, please try to avoid using \\ for line continuation. We don\u0027t allow them in the rest of the code, but we\u0027ve been lenient on the test code. We should avoid for any new code though.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":108,"context_line":"        self.configuration.zfssa_replication_ip \u003d \u00271.1.1.1\u0027"},{"line_number":109,"context_line":""},{"line_number":110,"context_line":"    def _util_migrate_volume_exceptions(self):"},{"line_number":111,"context_line":"        self.drv.zfssa.get_lun.return_value \u003d \\"},{"line_number":112,"context_line":"            {\u0027targetgroup\u0027: \u0027test-target-grp1\u0027}"},{"line_number":113,"context_line":"        self.drv.zfssa.get_asn.return_value \u003d \\"},{"line_number":114,"context_line":"            \u00279a2b5a0f-e3af-6d14-9578-8825f229dc89\u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_17189d83","line":111,"in_reply_to":"fa1b9901_1f4e79c1","updated":"2015-08-24 20:05:24.000000000","message":"Fixed in new patch.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"}],"cinder/volume/drivers/zfssa/zfssaiscsi.py":[{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"    def migrate_volume(self, ctxt, volume, host):"},{"line_number":515,"context_line":"        LOG.debug(\u0027Attempting ZFSSA enabled volume migration. volume: %(id)s, \u0027"},{"line_number":516,"context_line":"                  \u0027host: %(host)s, status\u003d%(status)s\u0027,"},{"line_number":517,"context_line":"                  {\u0027id\u0027: volume[\u0027id\u0027],"},{"line_number":518,"context_line":"                   \u0027host\u0027: host,"},{"line_number":519,"context_line":"                   \u0027status\u0027: volume[\u0027status\u0027]})"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_90804f48","line":516,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":513,"context_line":""},{"line_number":514,"context_line":"    def migrate_volume(self, ctxt, volume, host):"},{"line_number":515,"context_line":"        LOG.debug(\u0027Attempting ZFSSA enabled volume migration. volume: %(id)s, \u0027"},{"line_number":516,"context_line":"                  \u0027host: %(host)s, status\u003d%(status)s\u0027,"},{"line_number":517,"context_line":"                  {\u0027id\u0027: volume[\u0027id\u0027],"},{"line_number":518,"context_line":"                   \u0027host\u0027: host,"},{"line_number":519,"context_line":"                   \u0027status\u0027: volume[\u0027status\u0027]})"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_744e8970","line":516,"in_reply_to":"1a4dcd0f_90804f48","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":588,"context_line":"            if targets \u003d\u003d []:"},{"line_number":589,"context_line":"                LOG.debug(\u0027Target host: %(host)s for volume migration \u0027"},{"line_number":590,"context_line":"                          \u0027not configured as a replication target \u0027"},{"line_number":591,"context_line":"                          \u0027for volume: %(vol)s\u0027,"},{"line_number":592,"context_line":"                          {\u0027host\u0027: tgt_repl_ip,"},{"line_number":593,"context_line":"                           \u0027vol\u0027: volume[\u0027name\u0027]})"},{"line_number":594,"context_line":"                return default_ret"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_d0ed7726","line":591,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":588,"context_line":"            if targets \u003d\u003d []:"},{"line_number":589,"context_line":"                LOG.debug(\u0027Target host: %(host)s for volume migration \u0027"},{"line_number":590,"context_line":"                          \u0027not configured as a replication target \u0027"},{"line_number":591,"context_line":"                          \u0027for volume: %(vol)s\u0027,"},{"line_number":592,"context_line":"                          {\u0027host\u0027: tgt_repl_ip,"},{"line_number":593,"context_line":"                           \u0027vol\u0027: volume[\u0027name\u0027]})"},{"line_number":594,"context_line":"                return default_ret"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_345481fc","line":591,"in_reply_to":"1a4dcd0f_d0ed7726","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":602,"context_line":"            if target[\u0027address\u0027] !\u003d tgt_repl_ip + \u0027:216\u0027:"},{"line_number":603,"context_line":"                LOG.debug(\u0027Target with replication ip: %s not configured on \u0027"},{"line_number":604,"context_line":"                          \u0027the source appliance for backend enabled volume \u0027"},{"line_number":605,"context_line":"                          \u0027migration. Proceeding with default migration\u0027,"},{"line_number":606,"context_line":"                          tgt_repl_ip)"},{"line_number":607,"context_line":"                return default_ret"},{"line_number":608,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_f0e67343","line":605,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":602,"context_line":"            if target[\u0027address\u0027] !\u003d tgt_repl_ip + \u0027:216\u0027:"},{"line_number":603,"context_line":"                LOG.debug(\u0027Target with replication ip: %s not configured on \u0027"},{"line_number":604,"context_line":"                          \u0027the source appliance for backend enabled volume \u0027"},{"line_number":605,"context_line":"                          \u0027migration. Proceeding with default migration\u0027,"},{"line_number":606,"context_line":"                          tgt_repl_ip)"},{"line_number":607,"context_line":"                return default_ret"},{"line_number":608,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_54590d34","line":605,"in_reply_to":"1a4dcd0f_f0e67343","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":701,"context_line":"        if not source:"},{"line_number":702,"context_line":"            err \u003d (_(\u0027Source with host ip/name: %s not found on the \u0027"},{"line_number":703,"context_line":"                     \u0027target appliance for backend enabled volume \u0027"},{"line_number":704,"context_line":"                     \u0027migration, procedding with default migration\u0027),"},{"line_number":705,"context_line":"                   driver.configuration.san_ip)"},{"line_number":706,"context_line":"            LOG.error(err)"},{"line_number":707,"context_line":"            raise exception.VolumeBackendAPIException(data\u003derr)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_50c1677f","line":704,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":701,"context_line":"        if not source:"},{"line_number":702,"context_line":"            err \u003d (_(\u0027Source with host ip/name: %s not found on the \u0027"},{"line_number":703,"context_line":"                     \u0027target appliance for backend enabled volume \u0027"},{"line_number":704,"context_line":"                     \u0027migration, procedding with default migration\u0027),"},{"line_number":705,"context_line":"                   driver.configuration.san_ip)"},{"line_number":706,"context_line":"            LOG.error(err)"},{"line_number":707,"context_line":"            raise exception.VolumeBackendAPIException(data\u003derr)"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_f442993d","line":704,"in_reply_to":"1a4dcd0f_50c1677f","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"fd1525d1c5d901a1fe74538988b8ef46920f4756","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    cfg.IntOpt(\u0027zfssa_rest_timeout\u0027,"},{"line_number":76,"context_line":"               help\u003d\u0027REST connection timeout. (seconds)\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027zfssa_replication_ip\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027IP address used for replication data. (may be same as \u0027"},{"line_number":79,"context_line":"                    \u0027data ip)\u0027)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_e5c9f37a","line":78,"updated":"2015-08-14 05:31:14.000000000","message":"/may be/maybe the/","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"3f0da9fbe631d21cfc01da79c9b3028a89d344d3","unresolved":false,"context_lines":[{"line_number":75,"context_line":"    cfg.IntOpt(\u0027zfssa_rest_timeout\u0027,"},{"line_number":76,"context_line":"               help\u003d\u0027REST connection timeout. (seconds)\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027zfssa_replication_ip\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027IP address used for replication data. (may be same as \u0027"},{"line_number":79,"context_line":"                    \u0027data ip)\u0027)"},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_15eea38b","line":78,"in_reply_to":"1a4dcd0f_e5c9f37a","updated":"2015-08-17 14:43:45.000000000","message":"Done","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"fd1525d1c5d901a1fe74538988b8ef46920f4756","unresolved":false,"context_lines":[{"line_number":545,"context_line":"            (tgt_host, auth_str, tgt_pool, tgt_project, tgt_tgtgroup,"},{"line_number":546,"context_line":"             tgt_repl_ip) \u003d loc_info.split(\u0027:\u0027)"},{"line_number":547,"context_line":"        except ValueError:"},{"line_number":548,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":549,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":550,"context_line":"                    \"generic volume migration.\") % loc_info"},{"line_number":551,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_e577b339","line":548,"updated":"2015-08-14 05:31:14.000000000","message":"_LE not _()","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"3f0da9fbe631d21cfc01da79c9b3028a89d344d3","unresolved":false,"context_lines":[{"line_number":545,"context_line":"            (tgt_host, auth_str, tgt_pool, tgt_project, tgt_tgtgroup,"},{"line_number":546,"context_line":"             tgt_repl_ip) \u003d loc_info.split(\u0027:\u0027)"},{"line_number":547,"context_line":"        except ValueError:"},{"line_number":548,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":549,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":550,"context_line":"                    \"generic volume migration.\") % loc_info"},{"line_number":551,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_d5e7cbaa","line":548,"in_reply_to":"1a4dcd0f_e577b339","updated":"2015-08-17 14:43:45.000000000","message":"Done","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":74,"context_line":"               help\u003d\u0027Network interfaces of iSCSI targets. (comma separated)\u0027),"},{"line_number":75,"context_line":"    cfg.IntOpt(\u0027zfssa_rest_timeout\u0027,"},{"line_number":76,"context_line":"               help\u003d\u0027REST connection timeout. (seconds)\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027zfssa_replication_ip\u0027, default\u003d\u0027\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027IP address used for replication data. (maybe the same as \u0027"},{"line_number":79,"context_line":"                    \u0027data ip)\u0027)"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_8a3c85c0","line":77,"updated":"2015-08-24 18:53:18.000000000","message":"I\u0027m concerned with calling this replication. Since we have Cinder based replication functionality, this should be named different to make it clear this is just for migration. Or does this tie in somehow with full replication support?","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":74,"context_line":"               help\u003d\u0027Network interfaces of iSCSI targets. (comma separated)\u0027),"},{"line_number":75,"context_line":"    cfg.IntOpt(\u0027zfssa_rest_timeout\u0027,"},{"line_number":76,"context_line":"               help\u003d\u0027REST connection timeout. (seconds)\u0027),"},{"line_number":77,"context_line":"    cfg.StrOpt(\u0027zfssa_replication_ip\u0027, default\u003d\u0027\u0027,"},{"line_number":78,"context_line":"               help\u003d\u0027IP address used for replication data. (maybe the same as \u0027"},{"line_number":79,"context_line":"                    \u0027data ip)\u0027)"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_fa5ab0f1","line":77,"in_reply_to":"fa1b9901_8a3c85c0","updated":"2015-08-24 20:05:24.000000000","message":"yes, it ties in with full replication support. this will enable us to search for the source on the target when doing failover_replication. We may need to add a few\nmore cinder.conf properties for replication v2 support though.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":530,"context_line":"                      \u0027assisted migration. Defaulting to generic migration.\u0027)"},{"line_number":531,"context_line":"            return default_ret"},{"line_number":532,"context_line":""},{"line_number":533,"context_line":"        if host[\u0027capabilities\u0027][\u0027vendor_name\u0027] !\u003d \u0027Oracle\u0027 or \\"},{"line_number":534,"context_line":"                host[\u0027capabilities\u0027][\u0027storage_protocol\u0027] !\u003d self.protocol:"},{"line_number":535,"context_line":"            LOG.debug(\u0027Source and destination drivers need to be Oracle iSCSI \u0027"},{"line_number":536,"context_line":"                      \u0027to use backend assisted migration. Defaulting to \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_ff4ce59e","line":533,"updated":"2015-08-24 18:53:18.000000000","message":"Please wrap in () to avoid using \\.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":530,"context_line":"                      \u0027assisted migration. Defaulting to generic migration.\u0027)"},{"line_number":531,"context_line":"            return default_ret"},{"line_number":532,"context_line":""},{"line_number":533,"context_line":"        if host[\u0027capabilities\u0027][\u0027vendor_name\u0027] !\u003d \u0027Oracle\u0027 or \\"},{"line_number":534,"context_line":"                host[\u0027capabilities\u0027][\u0027storage_protocol\u0027] !\u003d self.protocol:"},{"line_number":535,"context_line":"            LOG.debug(\u0027Source and destination drivers need to be Oracle iSCSI \u0027"},{"line_number":536,"context_line":"                      \u0027to use backend assisted migration. Defaulting to \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_7a6780b7","line":533,"in_reply_to":"fa1b9901_ff4ce59e","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":551,"context_line":"        except ValueError:"},{"line_number":552,"context_line":"            msg \u003d _LE(\"Location info needed for backend enabled volume \""},{"line_number":553,"context_line":"                      \"migration not in correct format: %s. Continuing with \""},{"line_number":554,"context_line":"                      \"generic volume migration.\") % loc_info"},{"line_number":555,"context_line":"            LOG.error(msg)"},{"line_number":556,"context_line":"            return default_ret"},{"line_number":557,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_9f112960","line":554,"updated":"2015-08-24 18:53:18.000000000","message":"Remove \"% loc_info\" from assignment to msg, then change the logger call to be:\n\nLOG.error(msg, loc_info)","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":551,"context_line":"        except ValueError:"},{"line_number":552,"context_line":"            msg \u003d _LE(\"Location info needed for backend enabled volume \""},{"line_number":553,"context_line":"                      \"migration not in correct format: %s. Continuing with \""},{"line_number":554,"context_line":"                      \"generic volume migration.\") % loc_info"},{"line_number":555,"context_line":"            LOG.error(msg)"},{"line_number":556,"context_line":"            return default_ret"},{"line_number":557,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_1a0524c1","line":554,"in_reply_to":"fa1b9901_9f112960","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":642,"context_line":""},{"line_number":643,"context_line":"        except Exception as e:"},{"line_number":644,"context_line":"            LOG.error(_LE(\"Error migrating volume: %s\"), volume[\u0027name\u0027])"},{"line_number":645,"context_line":"            raise e"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":"    def update_migrated_volume(self, ctxt, volume, new_volume,"},{"line_number":648,"context_line":"                               original_volume_status):"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_0a295589","line":645,"updated":"2015-08-24 18:53:18.000000000","message":"Should just be \"raise\", not \"raise e\".","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":642,"context_line":""},{"line_number":643,"context_line":"        except Exception as e:"},{"line_number":644,"context_line":"            LOG.error(_LE(\"Error migrating volume: %s\"), volume[\u0027name\u0027])"},{"line_number":645,"context_line":"            raise e"},{"line_number":646,"context_line":""},{"line_number":647,"context_line":"    def update_migrated_volume(self, ctxt, volume, new_volume,"},{"line_number":648,"context_line":"                               original_volume_status):"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_da0ecce4","line":645,"in_reply_to":"fa1b9901_0a295589","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"}],"cinder/volume/drivers/zfssa/zfssanfs.py":[{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":341,"context_line":"        except ValueError:"},{"line_number":342,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":343,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":344,"context_line":"                    \"generic volume migration\") % loc_info"},{"line_number":345,"context_line":"            LOG.error(msg)"},{"line_number":346,"context_line":"            return default_ret"},{"line_number":347,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_d06257ad","line":344,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":341,"context_line":"        except ValueError:"},{"line_number":342,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":343,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":344,"context_line":"                    \"generic volume migration\") % loc_info"},{"line_number":345,"context_line":"            LOG.error(msg)"},{"line_number":346,"context_line":"            return default_ret"},{"line_number":347,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_d4451d43","line":344,"in_reply_to":"1a4dcd0f_d06257ad","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"96fefea772d0e804597bb7ffb512da0b2ce96ebe","unresolved":false,"context_lines":[{"line_number":366,"context_line":"        original_name \u003d CONF.volume_name_template % volume[\u0027id\u0027]"},{"line_number":367,"context_line":"        current_name \u003d CONF.volume_name_template % new_volume[\u0027id\u0027]"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"        LOG.debug(\u0027Renaming migrated volume: %(cur)s to %(org)s\u0027,"},{"line_number":370,"context_line":"                  {\u0027cur\u0027: current_name,"},{"line_number":371,"context_line":"                   \u0027org\u0027: original_name})"},{"line_number":372,"context_line":"        self.zfssa.create_volume_from_snapshot_file(src_file\u003dcurrent_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_109c3f68","line":369,"updated":"2015-08-10 11:32:36.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"33508ba9c02c074a7618b0a07fcaabd45247f7a4","unresolved":false,"context_lines":[{"line_number":366,"context_line":"        original_name \u003d CONF.volume_name_template % volume[\u0027id\u0027]"},{"line_number":367,"context_line":"        current_name \u003d CONF.volume_name_template % new_volume[\u0027id\u0027]"},{"line_number":368,"context_line":""},{"line_number":369,"context_line":"        LOG.debug(\u0027Renaming migrated volume: %(cur)s to %(org)s\u0027,"},{"line_number":370,"context_line":"                  {\u0027cur\u0027: current_name,"},{"line_number":371,"context_line":"                   \u0027org\u0027: original_name})"},{"line_number":372,"context_line":"        self.zfssa.create_volume_from_snapshot_file(src_file\u003dcurrent_name,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1a4dcd0f_346b21bb","line":369,"in_reply_to":"1a4dcd0f_109c3f68","updated":"2015-08-11 15:15:14.000000000","message":"Done","commit_id":"f8db17a0db009c85a1729e2abd17aacc1223fd65"},{"author":{"_account_id":170,"name":"Mike Perez","email":"thingee@gmail.com","username":"thingee"},"change_message_id":"fd1525d1c5d901a1fe74538988b8ef46920f4756","unresolved":false,"context_lines":[{"line_number":339,"context_line":"        try:"},{"line_number":340,"context_line":"            (tgt_asn, tgt_share) \u003d loc_info.split(\u0027:\u0027)"},{"line_number":341,"context_line":"        except ValueError:"},{"line_number":342,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":343,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":344,"context_line":"                    \"generic volume migration.\") % loc_info"},{"line_number":345,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"1a4dcd0f_c5c87759","line":342,"updated":"2015-08-14 05:31:14.000000000","message":"_LE not _()","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"3f0da9fbe631d21cfc01da79c9b3028a89d344d3","unresolved":false,"context_lines":[{"line_number":339,"context_line":"        try:"},{"line_number":340,"context_line":"            (tgt_asn, tgt_share) \u003d loc_info.split(\u0027:\u0027)"},{"line_number":341,"context_line":"        except ValueError:"},{"line_number":342,"context_line":"            msg \u003d _(\"Location info needed for backend enabled volume \""},{"line_number":343,"context_line":"                    \"migration not in correct format: %s. Continuing with \""},{"line_number":344,"context_line":"                    \"generic volume migration.\") % loc_info"},{"line_number":345,"context_line":"            LOG.error(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"fa1b9901_159543e3","line":342,"in_reply_to":"1a4dcd0f_c5c87759","updated":"2015-08-17 14:43:45.000000000","message":"Done","commit_id":"5703aad802ed706596acb92ae7a7163c6b4eaeb1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                      \u0027assisted migration. Defaulting to generic migration.\u0027)"},{"line_number":328,"context_line":"            return default_ret"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"        if host[\u0027capabilities\u0027][\u0027vendor_name\u0027] !\u003d \u0027Oracle\u0027 or \\"},{"line_number":331,"context_line":"                host[\u0027capabilities\u0027][\u0027storage_protocol\u0027] !\u003d self.protocol:"},{"line_number":332,"context_line":"            LOG.debug(\u0027Source and destination drivers need to be Oracle iSCSI \u0027"},{"line_number":333,"context_line":"                      \u0027to use backend assisted migration. Defaulting to \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_ca703da7","line":330,"updated":"2015-08-24 18:53:18.000000000","message":"Wrap in () to avoid using \\ for line continuation.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":327,"context_line":"                      \u0027assisted migration. Defaulting to generic migration.\u0027)"},{"line_number":328,"context_line":"            return default_ret"},{"line_number":329,"context_line":""},{"line_number":330,"context_line":"        if host[\u0027capabilities\u0027][\u0027vendor_name\u0027] !\u003d \u0027Oracle\u0027 or \\"},{"line_number":331,"context_line":"                host[\u0027capabilities\u0027][\u0027storage_protocol\u0027] !\u003d self.protocol:"},{"line_number":332,"context_line":"            LOG.debug(\u0027Source and destination drivers need to be Oracle iSCSI \u0027"},{"line_number":333,"context_line":"                      \u0027to use backend assisted migration. Defaulting to \u0027"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_5a039cb8","line":330,"in_reply_to":"fa1b9901_ca703da7","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":347,"context_line":"        except ValueError:"},{"line_number":348,"context_line":"            msg \u003d _LE(\"Location info needed for backend enabled volume \""},{"line_number":349,"context_line":"                      \"migration not in correct format: %s. Continuing with \""},{"line_number":350,"context_line":"                      \"generic volume migration.\") % loc_info"},{"line_number":351,"context_line":"            LOG.error(msg)"},{"line_number":352,"context_line":"            return default_ret"},{"line_number":353,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_2a6219d9","line":350,"updated":"2015-08-24 18:53:18.000000000","message":"Remove \"% loc_info\" from msg assignment, change to LOG.error(msg, loc_info).","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":347,"context_line":"        except ValueError:"},{"line_number":348,"context_line":"            msg \u003d _LE(\"Location info needed for backend enabled volume \""},{"line_number":349,"context_line":"                      \"migration not in correct format: %s. Continuing with \""},{"line_number":350,"context_line":"                      \"generic volume migration.\") % loc_info"},{"line_number":351,"context_line":"            LOG.error(msg)"},{"line_number":352,"context_line":"            return default_ret"},{"line_number":353,"context_line":""}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_7afea0af","line":350,"in_reply_to":"fa1b9901_2a6219d9","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"}],"cinder/volume/drivers/zfssa/zfssarest.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def edit_inherit_replication_flag(self, pool, project, volume, set\u003dTrue):"},{"line_number":139,"context_line":"        \"\"\"Edit the inherit replication flag for volume.\"\"\""},{"line_number":140,"context_line":"        svc \u003d \u0027/api/storage/v1/pools/%s/projects/%s/filesystems/%s\u0027 \\"},{"line_number":141,"context_line":"              \u0027/replication\u0027 % (pool, project, volume)"},{"line_number":142,"context_line":"        arg \u003d {\u0027inherited\u0027: set}"},{"line_number":143,"context_line":"        ret \u003d self.rclient.put(svc, arg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_8aaa45d1","line":140,"updated":"2015-08-24 18:53:18.000000000","message":"Wrap in (). Used name variables since there is more than one value being formatted into the string.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":137,"context_line":""},{"line_number":138,"context_line":"    def edit_inherit_replication_flag(self, pool, project, volume, set\u003dTrue):"},{"line_number":139,"context_line":"        \"\"\"Edit the inherit replication flag for volume.\"\"\""},{"line_number":140,"context_line":"        svc \u003d \u0027/api/storage/v1/pools/%s/projects/%s/filesystems/%s\u0027 \\"},{"line_number":141,"context_line":"              \u0027/replication\u0027 % (pool, project, volume)"},{"line_number":142,"context_line":"        arg \u003d {\u0027inherited\u0027: set}"},{"line_number":143,"context_line":"        ret \u003d self.rclient.put(svc, arg)"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_3a2fc83f","line":140,"in_reply_to":"fa1b9901_8aaa45d1","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":242,"context_line":"            val \u003d json.loads(ret.data)"},{"line_number":243,"context_line":"            if val[\u0027action\u0027][\u0027last_result\u0027] \u003d\u003d \u0027success\u0027:"},{"line_number":244,"context_line":"                raise loopingcall.LoopingCallDone()"},{"line_number":245,"context_line":"            elif val[\u0027action\u0027][\u0027last_result\u0027] \u003d\u003d \u0027\u003cunknown\u003e\u0027 and \\"},{"line_number":246,"context_line":"                    val[\u0027action\u0027][\u0027state\u0027] \u003d\u003d \u0027sending\u0027:"},{"line_number":247,"context_line":"                pass"},{"line_number":248,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_aa406908","line":245,"updated":"2015-08-24 18:53:18.000000000","message":"()","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":242,"context_line":"            val \u003d json.loads(ret.data)"},{"line_number":243,"context_line":"            if val[\u0027action\u0027][\u0027last_result\u0027] \u003d\u003d \u0027success\u0027:"},{"line_number":244,"context_line":"                raise loopingcall.LoopingCallDone()"},{"line_number":245,"context_line":"            elif val[\u0027action\u0027][\u0027last_result\u0027] \u003d\u003d \u0027\u003cunknown\u003e\u0027 and \\"},{"line_number":246,"context_line":"                    val[\u0027action\u0027][\u0027state\u0027] \u003d\u003d \u0027sending\u0027:"},{"line_number":247,"context_line":"                pass"},{"line_number":248,"context_line":"            else:"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_5a1abc18","line":245,"in_reply_to":"fa1b9901_aa406908","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":285,"context_line":"           as the project name"},{"line_number":286,"context_line":"        \"\"\""},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        svc \u003d \u0027/api/storage/v1/replication/sources/%s/packages/%s/sever\u0027 \\"},{"line_number":289,"context_line":"              % (src_name, package)"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        if not project:"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_2a5539c5","line":288,"updated":"2015-08-24 18:53:18.000000000","message":"()","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":285,"context_line":"           as the project name"},{"line_number":286,"context_line":"        \"\"\""},{"line_number":287,"context_line":""},{"line_number":288,"context_line":"        svc \u003d \u0027/api/storage/v1/replication/sources/%s/packages/%s/sever\u0027 \\"},{"line_number":289,"context_line":"              % (src_name, package)"},{"line_number":290,"context_line":""},{"line_number":291,"context_line":"        if not project:"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_7a1540e3","line":288,"in_reply_to":"fa1b9901_2a5539c5","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":296,"context_line":""},{"line_number":297,"context_line":"        if ret.status !\u003d restclient.Status.ACCEPTED:"},{"line_number":298,"context_line":"            exception_msg \u003d (_(\u0027Error severing the package: %(package)s \u0027"},{"line_number":299,"context_line":"                               \u0027from source: %(src)s\u0027"},{"line_number":300,"context_line":"                               \u0027Return code: %(ret.status)d \u0027"},{"line_number":301,"context_line":"                               \u0027Message: %(ret.data)s .\u0027)"},{"line_number":302,"context_line":"                             % {\u0027package\u0027: package,"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_ca111d06","line":299,"updated":"2015-08-24 18:53:18.000000000","message":"Missing trailing space so it doesn\u0027t run in to the next line.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":296,"context_line":""},{"line_number":297,"context_line":"        if ret.status !\u003d restclient.Status.ACCEPTED:"},{"line_number":298,"context_line":"            exception_msg \u003d (_(\u0027Error severing the package: %(package)s \u0027"},{"line_number":299,"context_line":"                               \u0027from source: %(src)s\u0027"},{"line_number":300,"context_line":"                               \u0027Return code: %(ret.status)d \u0027"},{"line_number":301,"context_line":"                               \u0027Message: %(ret.data)s .\u0027)"},{"line_number":302,"context_line":"                             % {\u0027package\u0027: package,"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_1ad3e439","line":299,"in_reply_to":"fa1b9901_ca111d06","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"9618258a1fd960fa4e191195997ef389361da967","unresolved":false,"context_lines":[{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def move_volume(self, pool, project, volume, tgt_project):"},{"line_number":310,"context_line":"        \"\"\"Move a LUN from one project to another within the same pool.\"\"\""},{"line_number":311,"context_line":"        svc \u003d \u0027/api/storage/v1/pools/%s/projects/%s/filesystems/%s\u0027 % (pool,"},{"line_number":312,"context_line":"                                                                       project,"},{"line_number":313,"context_line":"                                                                       volume)"},{"line_number":314,"context_line":"        arg \u003d {\u0027project\u0027: tgt_project}"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_6ae7b112","line":311,"updated":"2015-08-24 18:53:18.000000000","message":"Use named variables.","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"},{"author":{"_account_id":13059,"name":"Kedar Vidvans","email":"kedar.vidvans@oracle.com","username":"kedar-vidvans"},"change_message_id":"06a9ec3f9dccfcbaae6303a4c0ebfe4d889877bc","unresolved":false,"context_lines":[{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def move_volume(self, pool, project, volume, tgt_project):"},{"line_number":310,"context_line":"        \"\"\"Move a LUN from one project to another within the same pool.\"\"\""},{"line_number":311,"context_line":"        svc \u003d \u0027/api/storage/v1/pools/%s/projects/%s/filesystems/%s\u0027 % (pool,"},{"line_number":312,"context_line":"                                                                       project,"},{"line_number":313,"context_line":"                                                                       volume)"},{"line_number":314,"context_line":"        arg \u003d {\u0027project\u0027: tgt_project}"}],"source_content_type":"text/x-python","patch_set":11,"id":"fa1b9901_3ad6e827","line":311,"in_reply_to":"fa1b9901_6ae7b112","updated":"2015-08-24 20:05:24.000000000","message":"Done","commit_id":"c3714a4b9680df7816c23040aa15d98292911e88"}]}
