)]}'
{"gnocchi/rest/__init__.py":[{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"aa0cd84138ebb12e92eb8c29caa1a8e034c133e7","unresolved":false,"context_lines":[{"line_number":159,"context_line":"        abort(400, \"Unable to parse `%s\u0027: %s\" % (varname, six.text_type(e)))"},{"line_number":160,"context_line":""},{"line_number":161,"context_line":""},{"line_number":162,"context_line":"def refresh_metric(indexer, storage, metric):"},{"line_number":163,"context_line":"    s \u003d storage.incoming.sack_for_metric(metric.id)"},{"line_number":164,"context_line":"    lock \u003d storage.incoming.get_sack_lock(storage.coord, s)"},{"line_number":165,"context_line":"    if not lock.acquire(blocking\u003dpecan.request.conf.api.refresh_timeout):"}],"source_content_type":"text/x-python","patch_set":4,"id":"1f013ff3_168f1bcd","line":162,"updated":"2017-05-15 09:03:42.000000000","message":"can you implement that as a storage method maybe? that\u0027d be neater I think\n\nI don\u0027t like seeing the API messing with internal storage locks :)","commit_id":"c177f4bee3bb8939238a8a836915f349bf3514d1"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"af7707f335c75a39e47957493ee07c2fc27983f1","unresolved":false,"context_lines":[{"line_number":433,"context_line":"                    pecan.request.indexer, self.metric,"},{"line_number":434,"context_line":"                    pecan.request.conf.api.refresh_timeout)"},{"line_number":435,"context_line":"            except storage.SackLockTimeoutError as e:"},{"line_number":436,"context_line":"                abort(500, e)"},{"line_number":437,"context_line":"        try:"},{"line_number":438,"context_line":"            if aggregation in self.custom_agg:"},{"line_number":439,"context_line":"                measures \u003d self.custom_agg[aggregation].compute("}],"source_content_type":"text/x-python","patch_set":5,"id":"1f013ff3_b3f86cc4","line":436,"range":{"start_line":436,"start_character":22,"end_line":436,"end_character":25},"updated":"2017-05-15 15:54:09.000000000","message":"503 ?","commit_id":"b23ad8179c047cba9e9f810ce4faf22a3a32bc34"},{"author":{"_account_id":1669,"name":"Julien Danjou","display_name":"jd","email":"julien@danjou.info","username":"jdanjou"},"change_message_id":"af7707f335c75a39e47957493ee07c2fc27983f1","unresolved":false,"context_lines":[{"line_number":1629,"context_line":"                            pecan.request.indexer, m,"},{"line_number":1630,"context_line":"                            pecan.request.conf.api.refresh_timeout)"},{"line_number":1631,"context_line":"                    except storage.SackLockTimeoutError as e:"},{"line_number":1632,"context_line":"                        abort(500, e)"},{"line_number":1633,"context_line":"            if number_of_metrics \u003d\u003d 1:"},{"line_number":1634,"context_line":"                # NOTE(sileht): don\u0027t do the aggregation if we only have one"},{"line_number":1635,"context_line":"                # metric"}],"source_content_type":"text/x-python","patch_set":5,"id":"1f013ff3_93f570ce","line":1632,"range":{"start_line":1632,"start_character":30,"end_line":1632,"end_character":33},"updated":"2017-05-15 15:54:09.000000000","message":"503","commit_id":"b23ad8179c047cba9e9f810ce4faf22a3a32bc34"}]}
