)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"94dcee72e5317aadb663da5c16098b81f4b16400","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Depends-On: 1c8fe0ade43da925c5b810ef0cd27817f1c11c7b"},{"line_number":17,"context_line":"Change-Id: I2e92b27c36357120fcf0ec5917c6484441c946a8"},{"line_number":18,"context_line":"Partial-Implements: bp add-amount-info-in-list-api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"3f4b6375_f7bd4ad8","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":18},"updated":"2017-10-23 19:07:13.000000000","message":"Shouldn\u0027t this just be Implements: here?\n\nAre there further Cinder changes needed for this?","commit_id":"cc00ab4870fce1d1ca3d96cc1b16df8ab36cf76c"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"a068beecb37d2bc727a606331d009cc5cd466ac2","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Depends-On: 1c8fe0ade43da925c5b810ef0cd27817f1c11c7b"},{"line_number":17,"context_line":"Change-Id: I2e92b27c36357120fcf0ec5917c6484441c946a8"},{"line_number":18,"context_line":"Partial-Implements: bp add-amount-info-in-list-api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"3f4b6375_f0577b57","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":18},"in_reply_to":"3f4b6375_3eee16b4","updated":"2017-10-24 14:17:52.000000000","message":"Right, but this implements the change and finishes the blueprint, so it should be marked Implements:","commit_id":"cc00ab4870fce1d1ca3d96cc1b16df8ab36cf76c"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"c67105f2cf43f6ba7a522d07cf9e85e2990fdfd2","unresolved":false,"context_lines":[{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Depends-On: 1c8fe0ade43da925c5b810ef0cd27817f1c11c7b"},{"line_number":17,"context_line":"Change-Id: I2e92b27c36357120fcf0ec5917c6484441c946a8"},{"line_number":18,"context_line":"Partial-Implements: bp add-amount-info-in-list-api"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":9,"id":"3f4b6375_3eee16b4","line":18,"range":{"start_line":18,"start_character":0,"end_line":18,"end_character":18},"in_reply_to":"3f4b6375_f7bd4ad8","updated":"2017-10-24 03:13:21.000000000","message":"The another one is the spec patch: https://review.openstack.org/#/c/500665/","commit_id":"cc00ab4870fce1d1ca3d96cc1b16df8ab36cf76c"}],"api-ref/source/v3/parameters.yaml":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"51761bae04eec4291e5539e27ac3a67408dd895e","unresolved":false,"context_lines":[{"line_number":189,"context_line":"with_count:"},{"line_number":190,"context_line":"  description: |"},{"line_number":191,"context_line":"    Whether show \"count\" in API response, default is \"False\"."},{"line_number":192,"context_line":"  in: path"},{"line_number":193,"context_line":"  required: false"},{"line_number":194,"context_line":"  type: boolean"},{"line_number":195,"context_line":"  min_version: 3.45"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7f515b1d_0063531c","line":192,"range":{"start_line":192,"start_character":6,"end_line":192,"end_character":10},"updated":"2017-09-23 15:13:11.000000000","message":"I think this actually needs to be added as a \"query\" type.","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"4415fcb73bb54551c88ed9898717c7c232245414","unresolved":false,"context_lines":[{"line_number":189,"context_line":"with_count:"},{"line_number":190,"context_line":"  description: |"},{"line_number":191,"context_line":"    Whether show \"count\" in API response, default is \"False\"."},{"line_number":192,"context_line":"  in: path"},{"line_number":193,"context_line":"  required: false"},{"line_number":194,"context_line":"  type: boolean"},{"line_number":195,"context_line":"  min_version: 3.45"}],"source_content_type":"text/x-yaml","patch_set":4,"id":"7f515b1d_8c92d9f5","line":192,"range":{"start_line":192,"start_character":6,"end_line":192,"end_character":10},"in_reply_to":"7f515b1d_0063531c","updated":"2017-09-25 01:26:07.000000000","message":"Done","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"},{"author":{"_account_id":18529,"name":"Dongdong Pei","email":"peidongdong121@163.com","username":"dongdongpei"},"change_message_id":"23047e50f5b47e9aa8c8a8baec598e6fab1ca430","unresolved":false,"context_lines":[{"line_number":192,"context_line":"    The action. Valid values are \"set\" or \"unset.\""},{"line_number":193,"context_line":"  in: query"},{"line_number":194,"context_line":"  required: true"},{"line_number":195,"context_line":"  type: svtring"},{"line_number":196,"context_line":"all-tenants:"},{"line_number":197,"context_line":"  description: |"},{"line_number":198,"context_line":"    Shows details for all project. Admin only.."}],"source_content_type":"text/x-yaml","patch_set":5,"id":"7f515b1d_678fb6cc","line":195,"range":{"start_line":195,"start_character":8,"end_line":195,"end_character":15},"updated":"2017-09-25 03:41:32.000000000","message":"string?","commit_id":"010bb15cf199ef2956edcc7b35fca134e48b6945"}],"cinder/api/contrib/backups.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"173f9c8f236b84a388c46806b52e3fc0e09152ea","unresolved":false,"context_lines":[{"line_number":30,"context_line":"from cinder import exception"},{"line_number":31,"context_line":"from cinder.i18n import _"},{"line_number":32,"context_line":"from cinder import utils"},{"line_number":33,"context_line":"from cinder import volume as volumeAPI"},{"line_number":34,"context_line":""},{"line_number":35,"context_line":"LOG \u003d logging.getLogger(__name__)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":8,"id":"7f515b1d_39733750","line":33,"range":{"start_line":33,"start_character":29,"end_line":33,"end_character":38},"updated":"2017-10-04 16:44:12.000000000","message":"Seems a little odd to be using the volume API to get backup info. Can this be moved into a util class or something?","commit_id":"6838460e10ec74ff65539ea2f0e47bfb563a285a"}],"cinder/api/v2/views/volumes.py":[{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"b70da7fa288b396abdf206a2928e0457c2ef19cf","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        if volumes_links:"},{"line_number":165,"context_line":"            volumes_dict[\u0027volumes_links\u0027] \u003d volumes_links"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"        if volume_count is not None:"},{"line_number":168,"context_line":"            volumes_dict[\u0027count\u0027] \u003d volume_count"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        return volumes_dict"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f515b1d_217e4e6b","line":168,"range":{"start_line":167,"start_character":8,"end_line":168,"end_character":48},"updated":"2017-09-24 15:33:23.000000000","message":"I don\u0027t think it\u0027s appropriate for this to be added to V2?","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"4415fcb73bb54551c88ed9898717c7c232245414","unresolved":false,"context_lines":[{"line_number":164,"context_line":"        if volumes_links:"},{"line_number":165,"context_line":"            volumes_dict[\u0027volumes_links\u0027] \u003d volumes_links"},{"line_number":166,"context_line":""},{"line_number":167,"context_line":"        if volume_count is not None:"},{"line_number":168,"context_line":"            volumes_dict[\u0027count\u0027] \u003d volume_count"},{"line_number":169,"context_line":""},{"line_number":170,"context_line":"        return volumes_dict"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f515b1d_ec714de2","line":168,"range":{"start_line":167,"start_character":8,"end_line":168,"end_character":48},"in_reply_to":"7f515b1d_217e4e6b","updated":"2017-09-25 01:26:07.000000000","message":"This should work for v2 requests, because the volume_count will always equal to None in that case. But  it\u0027s appropriate to overwrite\nthe method in v3\u0027 version :) thanks","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"}],"cinder/api/v3/views/volumes.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"2797a4830728139fc8192f0a2113335f9dff87ab","unresolved":false,"context_lines":[{"line_number":73,"context_line":"                                                   volumes,"},{"line_number":74,"context_line":"                                                   coll_name,"},{"line_number":75,"context_line":"                                                   volume_count)"},{"line_number":76,"context_line":"        volumes_dict \u003d dict(volumes\u003dvolumes_list)"},{"line_number":77,"context_line":""},{"line_number":78,"context_line":"        if volumes_links:"},{"line_number":79,"context_line":"            volumes_dict[\u0027volumes_links\u0027] \u003d volumes_links"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f515b1d_cd244bc9","line":76,"range":{"start_line":76,"start_character":23,"end_line":76,"end_character":49},"updated":"2017-09-25 09:22:16.000000000","message":"just use literal dict construct\n\n  {\"volumes\": volumn_list}","commit_id":"6df0e7c7e9a967bf35a23bebdd79d7665a548da7"}],"cinder/api/v3/volumes.py":[{"author":{"_account_id":2243,"name":"John Griffith","email":"john.griffith8@gmail.com","username":"john-griffith"},"change_message_id":"b70da7fa288b396abdf206a2928e0457c2ef19cf","unresolved":false,"context_lines":[{"line_number":132,"context_line":"                                          filters\u003dfilters.copy(),"},{"line_number":133,"context_line":"                                          viewable_admin_meta\u003dTrue,"},{"line_number":134,"context_line":"                                          offset\u003doffset)"},{"line_number":135,"context_line":"        total_count \u003d None"},{"line_number":136,"context_line":"        if show_count:"},{"line_number":137,"context_line":"            total_count \u003d self.volume_api.calculate_resource_count("},{"line_number":138,"context_line":"                context, \u0027volume\u0027, filters)"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        for volume in volumes:"},{"line_number":141,"context_line":"            utils.add_visible_admin_metadata(volume)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f515b1d_01835255","line":138,"range":{"start_line":135,"start_character":8,"end_line":138,"end_character":43},"updated":"2017-09-24 15:33:23.000000000","message":"I know this is probably a stupid/silly question; but why are we going through so much churn on this instead of something say like \"len(volumes)\" ?","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"4415fcb73bb54551c88ed9898717c7c232245414","unresolved":false,"context_lines":[{"line_number":132,"context_line":"                                          filters\u003dfilters.copy(),"},{"line_number":133,"context_line":"                                          viewable_admin_meta\u003dTrue,"},{"line_number":134,"context_line":"                                          offset\u003doffset)"},{"line_number":135,"context_line":"        total_count \u003d None"},{"line_number":136,"context_line":"        if show_count:"},{"line_number":137,"context_line":"            total_count \u003d self.volume_api.calculate_resource_count("},{"line_number":138,"context_line":"                context, \u0027volume\u0027, filters)"},{"line_number":139,"context_line":""},{"line_number":140,"context_line":"        for volume in volumes:"},{"line_number":141,"context_line":"            utils.add_visible_admin_metadata(volume)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7f515b1d_0c46e97d","line":138,"range":{"start_line":135,"start_character":8,"end_line":138,"end_character":43},"in_reply_to":"7f515b1d_01835255","updated":"2017-09-25 01:26:07.000000000","message":"Thanks, the volume list only consits of this page\u0027s volumes, not the total length.","commit_id":"6c4e02b206acb109a0d07580a278725315288df2"}],"cinder/db/api.py":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"2797a4830728139fc8192f0a2113335f9dff87ab","unresolved":false,"context_lines":[{"line_number":270,"context_line":""},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"def calculate_resource_count(context, resource_type, filters):"},{"line_number":273,"context_line":"    return IMPL.calculate_resource_count(context, resource_type,"},{"line_number":274,"context_line":"                                         filters)"},{"line_number":275,"context_line":""},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"def volume_get_all_by_host(context, host, filters\u003dNone):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f515b1d_ed4a677e","line":274,"range":{"start_line":273,"start_character":0,"end_line":274,"end_character":49},"updated":"2017-09-25 09:22:16.000000000","message":"this can be in one line","commit_id":"6df0e7c7e9a967bf35a23bebdd79d7665a548da7"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"d8bf22e71142133fe540f7bfeb056c7a7b7ae9e2","unresolved":false,"context_lines":[{"line_number":270,"context_line":""},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"def calculate_resource_count(context, resource_type, filters):"},{"line_number":273,"context_line":"    return IMPL.calculate_resource_count(context, resource_type,"},{"line_number":274,"context_line":"                                         filters)"},{"line_number":275,"context_line":""},{"line_number":276,"context_line":""},{"line_number":277,"context_line":"def volume_get_all_by_host(context, host, filters\u003dNone):"}],"source_content_type":"text/x-python","patch_set":7,"id":"7f515b1d_f627ba11","line":274,"range":{"start_line":273,"start_character":0,"end_line":274,"end_character":49},"in_reply_to":"7f515b1d_ed4a677e","updated":"2017-10-08 08:37:47.000000000","message":"Done","commit_id":"6df0e7c7e9a967bf35a23bebdd79d7665a548da7"}],"cinder/tests/unit/api/v3/test_volumes.py":[{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"94dcee72e5317aadb663da5c16098b81f4b16400","unresolved":false,"context_lines":[{"line_number":173,"context_line":"        req.environ[\u0027cinder.context\u0027] \u003d ctxt"},{"line_number":174,"context_line":"        res_dict \u003d self.controller._get_volumes(req, is_detail\u003dis_detail)"},{"line_number":175,"context_line":"        self.assertNotIn(\u0027count\u0027, res_dict)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    @ddt.data(\u0027volumes\u0027, \u0027volumes/detail\u0027)"},{"line_number":178,"context_line":"    def test_list_volume_with_count_param(self, action):"},{"line_number":179,"context_line":"        self._create_multiple_volumes_with_different_project()"}],"source_content_type":"text/x-python","patch_set":9,"id":"3f4b6375_77e83ae1","line":176,"updated":"2017-10-23 19:07:13.000000000","message":"We should have a similar test demonstrating with_count\u003d1 since that should behave the same way according to \n    https://specs.openstack.org/openstack/api-wg/guidelines/counting.html\n\nIt would also be good to have a test for with_count\u003dFalse.","commit_id":"cc00ab4870fce1d1ca3d96cc1b16df8ab36cf76c"},{"author":{"_account_id":23083,"name":"TommyLike","email":"tommylikehu@gmail.com","username":"TommyLike"},"change_message_id":"c67105f2cf43f6ba7a522d07cf9e85e2990fdfd2","unresolved":false,"context_lines":[{"line_number":173,"context_line":"        req.environ[\u0027cinder.context\u0027] \u003d ctxt"},{"line_number":174,"context_line":"        res_dict \u003d self.controller._get_volumes(req, is_detail\u003dis_detail)"},{"line_number":175,"context_line":"        self.assertNotIn(\u0027count\u0027, res_dict)"},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"    @ddt.data(\u0027volumes\u0027, \u0027volumes/detail\u0027)"},{"line_number":178,"context_line":"    def test_list_volume_with_count_param(self, action):"},{"line_number":179,"context_line":"        self._create_multiple_volumes_with_different_project()"}],"source_content_type":"text/x-python","patch_set":9,"id":"3f4b6375_fe34fe94","line":176,"in_reply_to":"3f4b6375_77e83ae1","updated":"2017-10-24 03:13:21.000000000","message":"Thanks, done!","commit_id":"cc00ab4870fce1d1ca3d96cc1b16df8ab36cf76c"}]}
