)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"6cfa127d0ab1686f1f91abfcd54675396f6257b6","unresolved":false,"context_lines":[{"line_number":9,"context_line":"Two changes from the version that was removed from Cinder:"},{"line_number":10,"context_line":"- drop the RetypeVD base class"},{"line_number":11,"context_line":"- specify \"sparse_copy_volume\" for faster initial volume filling"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I5188e66d9a9204fc9fa15785d0ef3cf10e57ffb5"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"fa80f949_bcef11e8","line":12,"updated":"2015-11-06 02:33:04.000000000","message":"This will need a DocImpact since configuration options are being added with this driver. \n\nAlso, it would be helpful to have a blueprint for this so that it can be added to the release notes at the end of the cycle and highlighted that the driver is available.","commit_id":"26528be9d6d852dffa6457d166271777351fb24c"},{"author":{"_account_id":18602,"name":"Gábor Antal","email":"antal@inf.u-szeged.hu","username":"antal"},"change_message_id":"0d0258d446400500a067cf98b83ff15e25cc04e5","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Peter Penchev \u003copenstack-dev@storpool.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2015-11-30 17:26:08 +0200"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Reintroduce the StorPool driver."},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Two changes from the version that was removed from Cinder:"},{"line_number":10,"context_line":"- drop the RetypeVD base class"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"9a8ffd7b_c4f5d2cb","line":7,"updated":"2015-11-30 17:10:55.000000000","message":"I think you should follow the commit guidelines and not put an extra period to the first line.","commit_id":"f5e6d42979688b8c82ae0f9fdadd51b0cb416f47"},{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"9400db5b79f24cae8b54accd4ea066d6bd80e33e","unresolved":false,"context_lines":[{"line_number":11,"context_line":"- specify \"sparse_copy_volume\" for faster initial volume filling"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: I5188e66d9a9204fc9fa15785d0ef3cf10e57ffb5"},{"line_number":14,"context_line":"DocImpact"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"3a7e1126_d277e406","line":14,"updated":"2015-12-22 15:37:15.000000000","message":"Can you add a blueprint for the reintroduction of your driver here?","commit_id":"50dc48c2b47c01ac02839c874b567930597ae746"}],"cinder/exception.py":[{"author":{"_account_id":16708,"name":"Kendall Nelson","display_name":"Kendall (diablo_rojo)","email":"kennelson11@gmail.com","username":"kjnelson"},"change_message_id":"9400db5b79f24cae8b54accd4ea066d6bd80e33e","unresolved":false,"context_lines":[{"line_number":978,"context_line":"# StorPool driver"},{"line_number":979,"context_line":"class StorPoolConfigurationMissing(CinderException):"},{"line_number":980,"context_line":"    message \u003d _(\"Missing parameter %(param)s in the %(section)s section \""},{"line_number":981,"context_line":"                \"of the /etc/storpool.conf file\")"},{"line_number":982,"context_line":""},{"line_number":983,"context_line":""},{"line_number":984,"context_line":"class StorPoolConfigurationInvalid(CinderException):"}],"source_content_type":"text/x-python","patch_set":5,"id":"3a7e1126_12fb2c49","line":981,"range":{"start_line":981,"start_character":47,"end_line":981,"end_character":49},"updated":"2015-12-22 15:37:15.000000000","message":"\".\" at EOL","commit_id":"50dc48c2b47c01ac02839c874b567930597ae746"}],"cinder/volume/drivers/storpool.py":[{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"afcec2d5cfa46944d48e4f03900d8b64ca01af1c","unresolved":false,"context_lines":[{"line_number":453,"context_line":"            LOG.error(_LE(\u0027StorPool update_migrated_volume(): it seems \u0027"},{"line_number":454,"context_line":"                          \u0027that the StorPool volume \"%(tid)s\" was not \u0027"},{"line_number":455,"context_line":"                          \u0027created as part of the migration from \u0027"},{"line_number":456,"context_line":"                          \u0027\"%(oid)s\"\u0027), {\u0027tid\u0027: temp_id, \u0027oid\u0027: orig_id})"},{"line_number":457,"context_line":"            return {\u0027_name_id\u0027: new_volume[\u0027_name_id\u0027] or new_volume[\u0027id\u0027]}"},{"line_number":458,"context_line":"        elif orig_name in vols:"},{"line_number":459,"context_line":"            LOG.error(_LE(\u0027StorPool update_migrated_volume(): both \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_0b231657","line":456,"updated":"2015-09-07 07:17:57.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"26528be9d6d852dffa6457d166271777351fb24c"},{"author":{"_account_id":17151,"name":"chenying","email":"chenyingko@gmail.com","username":"chenying"},"change_message_id":"afcec2d5cfa46944d48e4f03900d8b64ca01af1c","unresolved":false,"context_lines":[{"line_number":459,"context_line":"            LOG.error(_LE(\u0027StorPool update_migrated_volume(): both \u0027"},{"line_number":460,"context_line":"                          \u0027the original volume \"%(oid)s\" and the migrated \u0027"},{"line_number":461,"context_line":"                          \u0027StorPool volume \"%(tid)s\" seem to exist on \u0027"},{"line_number":462,"context_line":"                          \u0027the StorPool cluster\u0027),"},{"line_number":463,"context_line":"                      {\u0027oid\u0027: orig_id, \u0027tid\u0027: temp_id})"},{"line_number":464,"context_line":"            return {\u0027_name_id\u0027: new_volume[\u0027_name_id\u0027] or new_volume[\u0027id\u0027]}"},{"line_number":465,"context_line":"        else:"}],"source_content_type":"text/x-python","patch_set":1,"id":"da20952f_2b1e1a0c","line":462,"updated":"2015-09-07 07:17:57.000000000","message":"Add a \u0027.\u0027 to the EOL.","commit_id":"26528be9d6d852dffa6457d166271777351fb24c"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f703bab4f37115d8a8132237e21b44950260a814","unresolved":false,"context_lines":[{"line_number":69,"context_line":"                  - drop the CloneableVD and RetypeVD base classes"},{"line_number":70,"context_line":"                  - enable faster volume copying by specifying"},{"line_number":71,"context_line":"                    sparse_volume_copy\u003dtrue in the stats report"},{"line_number":72,"context_line":"    \"\"\""},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"    VERSION \u003d \u00271.1.0\u0027"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_7790374f","line":72,"updated":"2016-06-10 13:29:39.000000000","message":"Should we add a new version with a comment: \"Re-introduce driver in Newton\"?","commit_id":"e5f136770e056d03d51d8ca22e6e5d77be075d1a"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"f703bab4f37115d8a8132237e21b44950260a814","unresolved":false,"context_lines":[{"line_number":136,"context_line":"                    \u0027volume\u0027: volume[\u0027id\u0027],"},{"line_number":137,"context_line":"                }}"},{"line_number":138,"context_line":""},{"line_number":139,"context_line":"    def terminate_connection(self, volume, connector, **kwargs):"},{"line_number":140,"context_line":"        pass"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"    def create_snapshot(self, snapshot):"}],"source_content_type":"text/x-python","patch_set":6,"id":"7aa08908_97a3239e","line":139,"updated":"2016-06-10 13:29:39.000000000","message":"Please, do not copy-paste method which are the same in the parent class","commit_id":"e5f136770e056d03d51d8ca22e6e5d77be075d1a"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"a5c6849dbda3059e2ac4804bea75c97619a47360","unresolved":false,"context_lines":[{"line_number":56,"context_line":"CONF.register_opts(storpool_opts)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"class StorPoolDriver(driver.VolumeDriver):"},{"line_number":60,"context_line":"    \"\"\"The StorPool block device driver."},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"    Version history:"}],"source_content_type":"text/x-python","patch_set":8,"id":"df87a7cf_172d9542","line":59,"updated":"2017-12-04 20:18:56.000000000","message":"Please add @interface.volumedriver\n\nhttps://github.com/openstack/cinder/blob/master/cinder/volume/drivers/lvm.py#L87","commit_id":"902aa1739b69045a10055c2aaab191b5e0490f75"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"a5c6849dbda3059e2ac4804bea75c97619a47360","unresolved":false,"context_lines":[{"line_number":78,"context_line":"        1.2.0   - Inherit from VolumeDriver, implement get_pool()"},{"line_number":79,"context_line":"    \"\"\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"    VERSION \u003d \u00271.2.0\u0027"},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"    def __init__(self, *args, **kwargs):"},{"line_number":84,"context_line":"        super(StorPoolDriver, self).__init__(*args, **kwargs)"}],"source_content_type":"text/x-python","patch_set":8,"id":"df87a7cf_9718c51d","line":81,"updated":"2017-12-04 20:18:56.000000000","message":"We need a CI_WIKI_NAME constant now too.","commit_id":"902aa1739b69045a10055c2aaab191b5e0490f75"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"177d74c12ef609ed44cdbf4db885b6c9cc8e47e6","unresolved":false,"context_lines":[{"line_number":81,"context_line":"        1.1.2   - Bring the driver up to date with Pike: do not"},{"line_number":82,"context_line":"                  translate the error messages"},{"line_number":83,"context_line":"        1.2.0   - Inherit from VolumeDriver, implement get_pool()"},{"line_number":84,"context_line":"        1.2.1   - Implement interface.volumedriver, add CI_WIKI_NAME,"},{"line_number":85,"context_line":"                  fix the docstring formatting"},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"    \"\"\""}],"source_content_type":"text/x-python","patch_set":10,"id":"bf8cb3f7_ae86c0da","line":84,"updated":"2017-12-25 16:38:31.000000000","message":"Seems like it would be good to indicate when the driver was added back in.  Increment the version.","commit_id":"9c11dc29daf10f537834653a78451e3524f1ee26"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"177d74c12ef609ed44cdbf4db885b6c9cc8e47e6","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        except spapi.ApiError as e:"},{"line_number":171,"context_line":"            raise self._backendException(e)"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":174,"context_line":"        size \u003d int(volume[\u0027size\u0027]) * units.Gi"},{"line_number":175,"context_line":"        volname \u003d self._attach.volumeName(volume[\u0027id\u0027])"},{"line_number":176,"context_line":"        name \u003d self._attach.snapshotName(\u0027snap\u0027, snapshot[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":10,"id":"bf8cb3f7_6e68b820","line":173,"updated":"2017-12-25 16:38:31.000000000","message":"There have been changes in other drivers to extend a volume if creating from snapshot but if the requested size is larger.  Might be worth adding here.","commit_id":"9c11dc29daf10f537834653a78451e3524f1ee26"},{"author":{"_account_id":12988,"name":"Peter Penchev","email":"openstack-dev@storpool.com","username":"ppenchev"},"change_message_id":"15d01a54d742a914e8676d82fcdeb030be5bbef9","unresolved":false,"context_lines":[{"line_number":170,"context_line":"        except spapi.ApiError as e:"},{"line_number":171,"context_line":"            raise self._backendException(e)"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def create_volume_from_snapshot(self, volume, snapshot):"},{"line_number":174,"context_line":"        size \u003d int(volume[\u0027size\u0027]) * units.Gi"},{"line_number":175,"context_line":"        volname \u003d self._attach.volumeName(volume[\u0027id\u0027])"},{"line_number":176,"context_line":"        name \u003d self._attach.snapshotName(\u0027snap\u0027, snapshot[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":10,"id":"bf8cb3f7_89d176d0","line":173,"in_reply_to":"bf8cb3f7_6e68b820","updated":"2017-12-25 21:42:33.000000000","message":"Actually, correct me if I\u0027m wrong, but isn\u0027t \"the requested size\" the value passed as volume[\u0027size\u0027] here?  If so, this is already done: the size is calculated on the next line (174) and is then passed to our API\u0027s volumeCreate() method on line 180; the API will then DTRT.","commit_id":"9c11dc29daf10f537834653a78451e3524f1ee26"}]}
