)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"48d95bdf715094847e61e1a479b18eeb5d86b3a2","unresolved":false,"context_lines":[{"line_number":11,"context_line":""},{"line_number":12,"context_line":"This microversion introduced pagination, which doesn\u0027t work properly."},{"line_number":13,"context_line":"Nova API will sort the instances using the tenant id and instance uuid,"},{"line_number":14,"context_line":"but \u0027os-simple-tenant-usage\u0027 will not preserve the order when returning"},{"line_number":15,"context_line":"the results."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"For this reason, subsequent API calls made by the client will use the"},{"line_number":18,"context_line":"wrong marker (which is supposed to be the last instance id), ending"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_01b4ff1b","line":15,"range":{"start_line":14,"start_character":29,"end_line":15,"end_character":12},"updated":"2018-10-25 15:20:22.000000000","message":"Hence the OrderedDict.","commit_id":"964d94737a6108f4849b818c8dcc5db5a43fce6e"}],"nova/tests/functional/api_sample_tests/test_simple_tenant_usage.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"48d95bdf715094847e61e1a479b18eeb5d86b3a2","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        super(SimpleTenantUsageV240Test, self).setUp()"},{"line_number":80,"context_line":"        self.api.microversion \u003d self.microversion"},{"line_number":81,"context_line":""},{"line_number":82,"context_line":"        self.project_id_0 \u003d astb.PROJECT_ID"},{"line_number":83,"context_line":"        self.project_id_1 \u003d \u00270000000e737461636b20342065000000\u0027"},{"line_number":84,"context_line":""},{"line_number":85,"context_line":"        started \u003d timeutils.utcnow()"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_210edb32","line":82,"range":{"start_line":82,"start_character":33,"end_line":82,"end_character":43},"updated":"2018-10-25 15:20:22.000000000","message":"OK this is the 6f70656e737461636b20342065766572 in the samples which is hard-coded in TestOpenStackClient.","commit_id":"964d94737a6108f4849b818c8dcc5db5a43fce6e"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"48d95bdf715094847e61e1a479b18eeb5d86b3a2","unresolved":false,"context_lines":[{"line_number":140,"context_line":"                     end\u003dself.query[\u0027end\u0027])"},{"line_number":141,"context_line":""},{"line_number":142,"context_line":"        response \u003d self._do_get(url % (parse.urlencode(query)))"},{"line_number":143,"context_line":"        template_name \u003d \u0027simple-tenant-usage-get-all\u0027"},{"line_number":144,"context_line":"        self._verify_response(template_name, {}, response, 200)"},{"line_number":145,"context_line":""},{"line_number":146,"context_line":"        last_server \u003d response.json()[\u0027tenant_usages\u0027][-1][\u0027server_usages\u0027][-1]"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_21d81b7e","line":143,"range":{"start_line":143,"start_character":25,"end_line":143,"end_character":53},"updated":"2018-10-25 15:20:22.000000000","message":"Huh, so I guess the 2.40 change never even had any testing for paging across all tenants...that seems like a pretty big gap in test coverage.","commit_id":"964d94737a6108f4849b818c8dcc5db5a43fce6e"}],"nova/tests/functional/api_samples_test_base.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"48d95bdf715094847e61e1a479b18eeb5d86b3a2","unresolved":false,"context_lines":[{"line_number":306,"context_line":"    @property"},{"line_number":307,"context_line":"    def project_id(self):"},{"line_number":308,"context_line":"        # We\u0027ll allow test cases to override the default project id. This is"},{"line_number":309,"context_line":"        # usefull when using multiple tenants."},{"line_number":310,"context_line":"        project_id \u003d None"},{"line_number":311,"context_line":"        try:"},{"line_number":312,"context_line":"            project_id \u003d self.api.project_id"}],"source_content_type":"text/x-python","patch_set":3,"id":"3f79a3b5_614e136e","line":309,"range":{"start_line":309,"start_character":10,"end_line":309,"end_character":17},"updated":"2018-10-25 15:20:22.000000000","message":"useful","commit_id":"964d94737a6108f4849b818c8dcc5db5a43fce6e"}]}
