)]}'
{"monasca_api/common/repositories/influxdb/metrics_repository.py":[{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"9bb10e5c992b7ad50d4e1e1d9af69a9bb2241df9","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        try:"},{"line_number":42,"context_line":"            self.conf \u003d cfg.CONF.influxdb"},{"line_number":43,"context_line":"            self.influxdb_client \u003d client.InfluxDBClient("},{"line_number":44,"context_line":"                self.conf.ip_address,"},{"line_number":45,"context_line":"                self.conf.port,"},{"line_number":46,"context_line":"                self.conf.user,"},{"line_number":47,"context_line":"                self.conf.password,"},{"line_number":48,"context_line":"                self.conf.database_name)"},{"line_number":49,"context_line":"            self._version \u003d None"},{"line_number":50,"context_line":"            self._init_version()"},{"line_number":51,"context_line":"        except Exception as ex:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_89dec46a","line":48,"range":{"start_line":42,"start_character":0,"end_line":48,"end_character":40},"updated":"2019-08-05 12:41:53.000000000","message":"Strictly, this refactoring is unrelated to the change and should be a separate commit. You could layer it under this change.","commit_id":"fbb40d000a45f5a5133599f64f517f6a369a50fb"},{"author":{"_account_id":28022,"name":"Bharat Kunwar","email":"brtknr@bath.edu","username":"brtknr"},"change_message_id":"451fa578d3a494629edddd2819aed6b810c77fbb","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self):"},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"        try:"},{"line_number":42,"context_line":"            self.conf \u003d cfg.CONF.influxdb"},{"line_number":43,"context_line":"            self.influxdb_client \u003d client.InfluxDBClient("},{"line_number":44,"context_line":"                self.conf.ip_address,"},{"line_number":45,"context_line":"                self.conf.port,"},{"line_number":46,"context_line":"                self.conf.user,"},{"line_number":47,"context_line":"                self.conf.password,"},{"line_number":48,"context_line":"                self.conf.database_name)"},{"line_number":49,"context_line":"            self._version \u003d None"},{"line_number":50,"context_line":"            self._init_version()"},{"line_number":51,"context_line":"        except Exception as ex:"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_290a30d1","line":48,"range":{"start_line":42,"start_character":0,"end_line":48,"end_character":40},"in_reply_to":"7faddb67_89dec46a","updated":"2019-08-05 12:44:26.000000000","message":"Sure no problem.","commit_id":"fbb40d000a45f5a5133599f64f517f6a369a50fb"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"9bb10e5c992b7ad50d4e1e1d9af69a9bb2241df9","unresolved":false,"context_lines":[{"line_number":310,"context_line":""},{"line_number":311,"context_line":"    def switch_db_and_query(self, query, tenant_id):"},{"line_number":312,"context_line":"        database \u003d tenant_id if self.conf.db_per_tenant else None"},{"line_number":313,"context_line":"        return self.influxdb_client.query(query, database)"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"},{"line_number":316,"context_line":"                     limit, start_timestamp\u003dNone, end_timestamp\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_a9c2a083","line":313,"range":{"start_line":313,"start_character":49,"end_line":313,"end_character":58},"updated":"2019-08-05 12:41:53.000000000","message":"If this is None because the feature is off, then presumably the query will fail? Set to self.conf.database_name?","commit_id":"fbb40d000a45f5a5133599f64f517f6a369a50fb"},{"author":{"_account_id":28022,"name":"Bharat Kunwar","email":"brtknr@bath.edu","username":"brtknr"},"change_message_id":"451fa578d3a494629edddd2819aed6b810c77fbb","unresolved":false,"context_lines":[{"line_number":310,"context_line":""},{"line_number":311,"context_line":"    def switch_db_and_query(self, query, tenant_id):"},{"line_number":312,"context_line":"        database \u003d tenant_id if self.conf.db_per_tenant else None"},{"line_number":313,"context_line":"        return self.influxdb_client.query(query, database)"},{"line_number":314,"context_line":""},{"line_number":315,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"},{"line_number":316,"context_line":"                     limit, start_timestamp\u003dNone, end_timestamp\u003dNone):"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_6966e8bd","line":313,"range":{"start_line":313,"start_character":49,"end_line":313,"end_character":58},"in_reply_to":"7faddb67_a9c2a083","updated":"2019-08-05 12:44:26.000000000","message":"This defaults to self.conf.database_name if the provided database\u003dNone here as the client is configured that way.","commit_id":"fbb40d000a45f5a5133599f64f517f6a369a50fb"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"fd7d12484edd6daac0840553f376445a99973012","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            self.influxdb_client \u003d client.InfluxDBClient("},{"line_number":44,"context_line":"                self.conf.influxdb.ip_address, self.conf.influxdb.port,"},{"line_number":45,"context_line":"                self.conf.influxdb.user, self.conf.influxdb.password,"},{"line_number":46,"context_line":"                self.conf.influxdb.database_name)"},{"line_number":47,"context_line":"            self._version \u003d None"},{"line_number":48,"context_line":"            self._init_version()"},{"line_number":49,"context_line":"        except Exception as ex:"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_1d900b4e","line":46,"range":{"start_line":46,"start_character":16,"end_line":46,"end_character":48},"updated":"2019-09-02 09:04:57.000000000","message":"If we have db per tenant enabled then it doesn\u0027t make sense to set this. For readability I would prefer that in the query we explicitly specify the database name.","commit_id":"7f126286abeea6e8c93aa17382212fcb3f601d6d"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"fd7d12484edd6daac0840553f376445a99973012","unresolved":false,"context_lines":[{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def query_tenant_db(self, query, tenant_id):"},{"line_number":310,"context_line":"        database \u003d (\u0027%s_%s\u0027 % (self.conf.influxdb.database_name, tenant_id)"},{"line_number":311,"context_line":"                    if self.conf.influxdb.db_per_tenant else None)"},{"line_number":312,"context_line":"        return self.influxdb_client.query(query, database\u003ddatabase)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_7d9fbf64","line":311,"range":{"start_line":311,"start_character":61,"end_line":311,"end_character":65},"updated":"2019-09-02 09:04:57.000000000","message":"I think we should explicitly set this for clarity.","commit_id":"7f126286abeea6e8c93aa17382212fcb3f601d6d"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"fdc2eec3b729a2f610d60a4df0bcc39be139f831","unresolved":false,"context_lines":[{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def query_tenant_db(self, query, tenant_id):"},{"line_number":310,"context_line":"        database \u003d (\u0027%s_%s\u0027 % (self.conf.influxdb.database_name, tenant_id)"},{"line_number":311,"context_line":"                    if self.conf.influxdb.db_per_tenant else None)"},{"line_number":312,"context_line":"        return self.influxdb_client.query(query, database\u003ddatabase)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_003f3eb5","line":311,"range":{"start_line":311,"start_character":61,"end_line":311,"end_character":65},"in_reply_to":"7faddb67_1d9ecb53","updated":"2019-09-02 09:46:48.000000000","message":"I think we should remove it on line 46 and explicitly set it here.","commit_id":"7f126286abeea6e8c93aa17382212fcb3f601d6d"},{"author":{"_account_id":28022,"name":"Bharat Kunwar","email":"brtknr@bath.edu","username":"brtknr"},"change_message_id":"09cbba3756a55f364c8d7080d179f85465a71e8e","unresolved":false,"context_lines":[{"line_number":308,"context_line":""},{"line_number":309,"context_line":"    def query_tenant_db(self, query, tenant_id):"},{"line_number":310,"context_line":"        database \u003d (\u0027%s_%s\u0027 % (self.conf.influxdb.database_name, tenant_id)"},{"line_number":311,"context_line":"                    if self.conf.influxdb.db_per_tenant else None)"},{"line_number":312,"context_line":"        return self.influxdb_client.query(query, database\u003ddatabase)"},{"line_number":313,"context_line":""},{"line_number":314,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"}],"source_content_type":"text/x-python","patch_set":14,"id":"7faddb67_1d9ecb53","line":311,"range":{"start_line":311,"start_character":61,"end_line":311,"end_character":65},"in_reply_to":"7faddb67_7d9fbf64","updated":"2019-09-02 09:20:23.000000000","message":"The default behaviour when database\u003dNone here is to query the database specified when the client is created. But if you want, I can set this explicitly.","commit_id":"7f126286abeea6e8c93aa17382212fcb3f601d6d"},{"author":{"_account_id":17669,"name":"Doug Szumski","email":"doug@stackhpc.com","username":"DougSzumski"},"change_message_id":"dfd8282f98f94f046ee7edd50cddb80d0b11d620","unresolved":false,"context_lines":[{"line_number":325,"context_line":""},{"line_number":326,"context_line":"            result \u003d self.query_tenant_db(query, tenant_id)"},{"line_number":327,"context_line":""},{"line_number":328,"context_line":"            json_metric_list \u003d self._build_serie_metric_list(result,"},{"line_number":329,"context_line":"                                                             tenant_id,"},{"line_number":330,"context_line":"                                                             region,"},{"line_number":331,"context_line":"                                                             start_timestamp,"}],"source_content_type":"text/x-python","patch_set":15,"id":"7faddb67_e9f44d57","line":328,"updated":"2019-09-02 14:38:00.000000000","message":"When this is enabled, can we get rid of the redundant `where tenant_id\u003d\u003dblah` in the query to InfluxDB?","commit_id":"a8b1eb119b1fa45db0f5f0b10d5bb3f17f75124d"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"06f4db76ef804223023a0ef22e965e6debb1be34","unresolved":false,"context_lines":[{"line_number":43,"context_line":"            self.influxdb_client \u003d client.InfluxDBClient("},{"line_number":44,"context_line":"                self.conf.influxdb.ip_address, self.conf.influxdb.port,"},{"line_number":45,"context_line":"                self.conf.influxdb.user, self.conf.influxdb.password,"},{"line_number":46,"context_line":"                self.conf.influxdb.database_name)"},{"line_number":47,"context_line":"            self._version \u003d None"},{"line_number":48,"context_line":"            self._init_version()"},{"line_number":49,"context_line":"        except Exception as ex:"}],"source_content_type":"text/x-python","patch_set":21,"id":"5faad753_42c9bca9","side":"PARENT","line":46,"range":{"start_line":46,"start_character":16,"end_line":46,"end_character":48},"updated":"2019-09-13 15:30:09.000000000","message":"try testing with this in place","commit_id":"a0f002c812644930f35fb01e396448be0895db52"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"06f4db76ef804223023a0ef22e965e6debb1be34","unresolved":false,"context_lines":[{"line_number":255,"context_line":"                else name.replace(\"\u0027\", \"\\\\\u0027\").encode(\u0027utf-8\u0027)"},{"line_number":256,"context_line":"            where_clause +\u003d \u0027 from  \"{}\" \u0027.format(clean_name)"},{"line_number":257,"context_line":""},{"line_number":258,"context_line":"        # region"},{"line_number":259,"context_line":"        where_clause +\u003d \" where _region \u003d \u0027{}\u0027 \".format(region)"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"        # tenant id"},{"line_number":262,"context_line":"        if not self.conf.influxdb.db_per_tenant:"},{"line_number":263,"context_line":"            where_clause +\u003d \" and _tenant_id \u003d \u0027{}\u0027 \".format(tenant_id)"},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"        # dimensions - optional"},{"line_number":266,"context_line":"        if dimensions:"}],"source_content_type":"text/x-python","patch_set":21,"id":"5faad753_df282798","line":263,"range":{"start_line":258,"start_character":0,"end_line":263,"end_character":71},"updated":"2019-09-13 15:30:09.000000000","message":"try testing with original ordering","commit_id":"9f0eeda09c97fd6bb001bf00960cc3723b578c3a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"f783b41ec2008a7a13fd86b1de93cb2fa47a2d78","unresolved":false,"context_lines":[{"line_number":315,"context_line":"            return self.influxdb_client.query(query, database\u003ddatabase)"},{"line_number":316,"context_line":"        except InfluxDBClientError as ex:"},{"line_number":317,"context_line":"            if str(ex).startswith(DATABASE_NOT_FOUND_MSG):"},{"line_number":318,"context_line":"                return None"},{"line_number":319,"context_line":"            else:"},{"line_number":320,"context_line":"                raise err"},{"line_number":321,"context_line":""}],"source_content_type":"text/x-python","patch_set":21,"id":"5faad753_0223c457","line":318,"range":{"start_line":318,"start_character":16,"end_line":318,"end_character":27},"updated":"2019-09-13 15:34:24.000000000","message":"Probably only want to do this in DB per tenancy mode?","commit_id":"9f0eeda09c97fd6bb001bf00960cc3723b578c3a"},{"author":{"_account_id":14826,"name":"Mark Goddard","email":"markgoddard86@gmail.com","username":"mgoddard"},"change_message_id":"f783b41ec2008a7a13fd86b1de93cb2fa47a2d78","unresolved":false,"context_lines":[{"line_number":317,"context_line":"            if str(ex).startswith(DATABASE_NOT_FOUND_MSG):"},{"line_number":318,"context_line":"                return None"},{"line_number":319,"context_line":"            else:"},{"line_number":320,"context_line":"                raise err"},{"line_number":321,"context_line":""},{"line_number":322,"context_line":"    def list_metrics(self, tenant_id, region, name, dimensions, offset,"},{"line_number":323,"context_line":"                     limit, start_timestamp\u003dNone, end_timestamp\u003dNone):"}],"source_content_type":"text/x-python","patch_set":21,"id":"5faad753_e2fc68b6","line":320,"range":{"start_line":320,"start_character":22,"end_line":320,"end_character":25},"updated":"2019-09-13 15:34:24.000000000","message":"this should be \u0027ex\u0027. But actually you can just do \u0027raise\u0027","commit_id":"9f0eeda09c97fd6bb001bf00960cc3723b578c3a"}]}
