)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     vrovachev \u003cvrovachev@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-01-29 18:32:32 +0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added compute notifications tests for ceilometer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added ceilometer test for measurements: instance, instance:\u003ctype\u003e, memory, vcpus, disk.root.size, disk.ephemeral.size"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAUH%2F%2BEFw%3D","line":7,"updated":"2014-01-31 02:30:22.000000000","message":"We normally use \u0027Add\u0027 not \u0027Added\u0027 in the first line.","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     vrovachev \u003cvrovachev@mirantis.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2014-01-29 18:32:32 +0400"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added compute notifications tests for ceilometer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added ceilometer test for measurements: instance, instance:\u003ctype\u003e, memory, vcpus, disk.root.size, disk.ephemeral.size"},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAUH%2F9%2Bt4%3D","line":7,"in_reply_to":"AAAAUH%2F%2BEFw%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added compute notifications tests for ceilometer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added ceilometer test for measurements: instance, instance:\u003ctype\u003e, memory, vcpus, disk.root.size, disk.ephemeral.size"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ic99229d38f17cd81e147d86031aca75c13171057"},{"line_number":12,"context_line":"Partially implements: blueprint add-basic-ceilometer-tests"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAUH%2F%2BEG0%3D","line":9,"updated":"2014-01-31 02:30:22.000000000","message":"Commit message lines should be wrapped at 72 characters. \nSee: https://wiki.openstack.org/wiki/GitCommitMessages#Summary_of_GIT_commit_message_structure","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Added compute notifications tests for ceilometer"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Added ceilometer test for measurements: instance, instance:\u003ctype\u003e, memory, vcpus, disk.root.size, disk.ephemeral.size"},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Ic99229d38f17cd81e147d86031aca75c13171057"},{"line_number":12,"context_line":"Partially implements: blueprint add-basic-ceilometer-tests"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"AAAAUH%2F9%2Bt0%3D","line":9,"in_reply_to":"AAAAUH%2F%2BEG0%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"}],"tempest/api/telemetry/base.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":49,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":50,"context_line":"            self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":51,"context_line":"            i +\u003d 1"},{"line_number":52,"context_line":"            if i \u003e 60:"},{"line_number":53,"context_line":"                self.fail(\u0027get sample for metric:%s with query:%s not added \u0027"},{"line_number":54,"context_line":"                          \u0027to the database in 60 seconds\u0027 % (metric, query))"},{"line_number":55,"context_line":"        return resp, body"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2BEDM%3D","line":52,"updated":"2014-01-31 02:30:22.000000000","message":"60 seconds have a special meaning in this test? If not, I think this 60 should be configurable.","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":49,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":50,"context_line":"            self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":51,"context_line":"            i +\u003d 1"},{"line_number":52,"context_line":"            if i \u003e 60:"},{"line_number":53,"context_line":"                self.fail(\u0027get sample for metric:%s with query:%s not added \u0027"},{"line_number":54,"context_line":"                          \u0027to the database in 60 seconds\u0027 % (metric, query))"},{"line_number":55,"context_line":"        return resp, body"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9%2Bto%3D","line":52,"in_reply_to":"AAAAUH%2F%2BEDM%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7729,"name":"Ilya Tyaptin","email":"ityaptin@mirantis.com","username":"ityaptin"},"change_message_id":"24d7dcf3e34dd540492afcc8177ec28f50d326eb","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        cls.flavors_client \u003d os.flavors_client"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        cls.nova_notifications \u003d [\u0027instance\u0027, \u0027memory\u0027, \u0027vcpus\u0027,"},{"line_number":38,"context_line":"                                  \u0027disk.root.size\u0027, \u0027disk.ephemeral.size\u0027]"},{"line_number":39,"context_line":"        cls.server_id \u003d None"},{"line_number":40,"context_line":"        cls.alarm_ids \u003d []"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAXH%2F%2F8IQ%3D","line":38,"updated":"2014-04-16 11:36:38.000000000","message":"Ceilometer measurements doc has one more nova notification metric - \u0027instance:\u003ctype\u003e\u0027. I think it will be good if you test this metric too.","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6282c8d9c6380da617be5a91e524ac1ce92a0d2b","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        cls.flavors_client \u003d os.flavors_client"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        cls.nova_notifications \u003d [\u0027instance\u0027, \u0027memory\u0027, \u0027vcpus\u0027,"},{"line_number":38,"context_line":"                                  \u0027disk.root.size\u0027, \u0027disk.ephemeral.size\u0027]"},{"line_number":39,"context_line":"        cls.server_id \u003d None"},{"line_number":40,"context_line":"        cls.alarm_ids \u003d []"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAXH%2F%2FrQE%3D","line":38,"in_reply_to":"AAAAXH%2F%2F8IQ%3D","updated":"2014-04-18 10:24:36.000000000","message":"tempest/api/telemetry/test_telemetry_notification_api.py\nline 38","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"4e8f95146b39511cff7a84b2d903961233f8fa30","unresolved":false,"context_lines":[{"line_number":69,"context_line":"            try:"},{"line_number":70,"context_line":"                cls.servers_client.delete_server(cls.server_id)"},{"line_number":71,"context_line":"            except exceptions.NotFound:"},{"line_number":72,"context_line":"                pass"},{"line_number":73,"context_line":"        cls.clear_isolated_creds()"},{"line_number":74,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAWH%2F%2BOwA%3D","line":72,"updated":"2014-03-28 08:46:27.000000000","message":"Number of resources may be much more in the future. Thus you can write the method \n\ndef cleanup_resource(method, resource_id):\n    try:\n        method(resource)\n    except exceptions.NotFound:\n        pass\n\nand transform tearDownClass method in this way\n\n@classmethod\ndef tearDownClass(cls):\n    for alarm_id in cls.alarm_ids:\n        cleanup_resource(cls.telemetry_client.delete_alarm, alarm_id)\n    if cls.server_id:\n         cleanup_resource(cls.servers_client.delete_server, cls.server_id)\n    cls.clear_isolated_creds()\n    super(BaseTelemetryTest, cls).tearDownClass()","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"99312b4995c8695e2a45f91b18567a02d89733b0","unresolved":false,"context_lines":[{"line_number":69,"context_line":"            try:"},{"line_number":70,"context_line":"                cls.servers_client.delete_server(cls.server_id)"},{"line_number":71,"context_line":"            except exceptions.NotFound:"},{"line_number":72,"context_line":"                pass"},{"line_number":73,"context_line":"        cls.clear_isolated_creds()"},{"line_number":74,"context_line":"        super(BaseTelemetryTest, cls).tearDownClass()"},{"line_number":75,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"3ae8d1ca_a37c0a74","line":72,"in_reply_to":"AAAAWH%2F%2BOwA%3D","updated":"2014-05-27 15:05:08.000000000","message":"Done","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"10e4175de26c1f44b27c030a4c93df367fdbdaf1","unresolved":false,"context_lines":[{"line_number":86,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":87,"context_line":"            self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":88,"context_line":"            i +\u003d 1"},{"line_number":89,"context_line":"            if i \u003e 200: #CONF.telemetry.recording_timeout:"},{"line_number":90,"context_line":"                self.fail(\u0027get sample for metric:%s with query:%s not added \u0027"},{"line_number":91,"context_line":"                          \u0027to the database in %d seconds\u0027 % ("},{"line_number":92,"context_line":"                          metric, query, CONF.telemetry.recording_timeout))"}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAVn%2F%2FqCw%3D","line":89,"updated":"2014-03-04 20:18:23.000000000","message":"lifehack is failed :)","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"7d6709596ad576851240560af47851f87cdc9d43","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"},{"line_number":86,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":87,"context_line":"            self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":88,"context_line":"            i +\u003d 1"},{"line_number":89,"context_line":"            if i \u003e CONF.telemetry.recording_timeout:"},{"line_number":90,"context_line":"                self.fail(\u0027get sample for metric:%s with query:%s not added \u0027"}],"source_content_type":"text/x-python","patch_set":25,"id":"3ae8d1ca_b2c8af75","line":87,"updated":"2014-05-28 11:51:09.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"e92fa6c0f34038be5e43f01b440a9c32630dc0eb"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"88602fcd85e67d35e1b7ce21159cc8bd0c8ee230","unresolved":false,"context_lines":[{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"},{"line_number":86,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":87,"context_line":"            self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":88,"context_line":"            i +\u003d 1"},{"line_number":89,"context_line":"            if i \u003e CONF.telemetry.recording_timeout:"},{"line_number":90,"context_line":"                self.fail(\u0027get sample for metric:%s with query:%s not added \u0027"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_434a3f81","line":87,"updated":"2014-05-28 13:25:03.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"d17d7eacb781b1bf46696bc0c5af2987984fd824","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def await_samples(self, metric, query):"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        This method is implemented to wait to add new records to the database."},{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_73b19b8e","line":78,"updated":"2014-05-29 15:34:34.000000000","message":"Oh, can you update this doc string? Too broken English.","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"a1ec05f8939523d5b78ac4adac8e34901b0631ee","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def await_samples(self, metric, query):"},{"line_number":77,"context_line":"        \"\"\""},{"line_number":78,"context_line":"        This method is implemented to wait to add new records to the database."},{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_043c8f92","line":78,"in_reply_to":"3ae8d1ca_73b19b8e","updated":"2014-05-29 16:05:58.000000000","message":"Done","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"d17d7eacb781b1bf46696bc0c5af2987984fd824","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""},{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_cea9e87c","line":82,"updated":"2014-05-29 15:34:34.000000000","message":"I would suggest to write something like this\n\n    from tempest.openstack.common import timeutils\n    ...\n    \n    timeout \u003d CONF.telemetry.recording_timeout\n    start \u003d timeutils.utcnow()\n    while timeutils.delta_seconds(start, timeutils.utcnow()) \u003c timeout:\n        resp, body \u003d self.telemetry_client.list_samples(metric, query)\n        self.assertEqual(resp.status, 200)\n        if body:\n            return resp, body\n        time.sleep(\u003csome_timeout\u003e)\n    \n    raise exceptions.TimeoutException(\u003cmassage\u003e)","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"a1ec05f8939523d5b78ac4adac8e34901b0631ee","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""},{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_24434b15","line":82,"in_reply_to":"3ae8d1ca_cea9e87c","updated":"2014-05-29 16:05:58.000000000","message":"Done","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6bb0216428ff39568133e28d8f1a1864e4cc643b","unresolved":false,"context_lines":[{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"},{"line_number":86,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":87,"context_line":"            self.assertEqual(resp.status, 200)"},{"line_number":88,"context_line":"            i +\u003d 1"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_13d85752","line":85,"updated":"2014-05-29 14:56:22.000000000","message":"we should be using one of the build timouts. I\u0027d say start with compute, as we\u0027ll converge those all later. Sleep should never be hardcoded.","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"ea7875e24e18af4a2585936170de09b5678cd0c7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(1)"},{"line_number":86,"context_line":"            resp, body \u003d self.telemetry_client.list_samples(metric, query)"},{"line_number":87,"context_line":"            self.assertEqual(resp.status, 200)"},{"line_number":88,"context_line":"            i +\u003d 1"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_eeef8485","line":85,"in_reply_to":"3ae8d1ca_13d85752","updated":"2014-05-29 15:35:05.000000000","message":"Done","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"4b0167308608d713ce5f5f09fdbb1bd4054d274d","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""},{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(CONF.compute.build_interval)"}],"source_content_type":"text/x-python","patch_set":28,"id":"3ae8d1ca_69b0ce43","line":82,"updated":"2014-05-29 15:39:34.000000000","message":"See my comment in previous patch set.","commit_id":"001a5c2b0d210fc79713e8e748939c5aae92f7b5"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"da775a9609b9fff727a4a1af48de162982188784","unresolved":false,"context_lines":[{"line_number":79,"context_line":"        By operation with Postgresql and Mysql big time delays are watched"},{"line_number":80,"context_line":"        in case of record and reading in a database if a lot of data."},{"line_number":81,"context_line":"        \"\"\""},{"line_number":82,"context_line":"        body \u003d []"},{"line_number":83,"context_line":"        i \u003d 0"},{"line_number":84,"context_line":"        while not body:"},{"line_number":85,"context_line":"            time.sleep(CONF.compute.build_interval)"}],"source_content_type":"text/x-python","patch_set":28,"id":"3ae8d1ca_0463afb1","line":82,"in_reply_to":"3ae8d1ca_69b0ce43","updated":"2014-05-29 16:06:17.000000000","message":"Done","commit_id":"001a5c2b0d210fc79713e8e748939c5aae92f7b5"},{"author":{"_account_id":7428,"name":"Yaroslav Lobankov","email":"lobankovyv@gmail.com","username":"ylobankov"},"change_message_id":"394862661447b6bf8573fd1eb1a7674afd9a7360","unresolved":false,"context_lines":[{"line_number":77,"context_line":"    def await_samples(self, metric, query):"},{"line_number":78,"context_line":"        \"\"\""},{"line_number":79,"context_line":"        This method is to wait for sample to add it to database."},{"line_number":80,"context_line":"        There are long time delays when using ceilometer backend"},{"line_number":81,"context_line":"        as Postgresql or Mysql"},{"line_number":82,"context_line":"        \"\"\""},{"line_number":83,"context_line":"        timeout \u003d CONF.compute.build_timeout"}],"source_content_type":"text/x-python","patch_set":29,"id":"1ae5cdf2_7cd8e353","line":80,"updated":"2014-05-30 11:29:30.000000000","message":"I think you meant \n\n    This method is to wait for sample to add it to database. \n    There are long time delays when using Postgresql (or Mysql) \n    database as ceilometer backend\n\ninsteat of \n\n    This method is to wait for sample to add it to database. \n    There are long time delays when using ceilometer backend \n    as Postgresql or Mysql","commit_id":"c51c11ca5bca9f032ceae993c76cacd60d2760ac"}],"tempest/api/telemetry/test_telemetry_notification_api.py":[{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack Foundation"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2BAbo%3D","line":2,"updated":"2014-01-31 02:30:22.000000000","message":"Please remove this vim header.","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"# vim: tabstop\u003d4 shiftwidth\u003d4 softtabstop\u003d4"},{"line_number":2,"context_line":""},{"line_number":3,"context_line":"# Copyright 2013 OpenStack Foundation"},{"line_number":4,"context_line":"# All Rights Reserved."},{"line_number":5,"context_line":"#"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9%2Btg%3D","line":2,"in_reply_to":"AAAAUH%2F%2BAbo%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        self.servers_client.delete_server(body[\u0027id\u0027])"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"        for metric in metrics:"},{"line_number":50,"context_line":"            _, body \u003d self.await_samples(metric, query)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2BAZE%3D","line":47,"updated":"2014-01-31 02:30:22.000000000","message":"If an exception occurs before here, a created server will not be removed.\nCould you use addCleanup()?","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"        self.servers_client.delete_server(body[\u0027id\u0027])"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"        for metric in metrics:"},{"line_number":50,"context_line":"            _, body \u003d self.await_samples(metric, query)"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9%2Btc%3D","line":47,"in_reply_to":"AAAAUH%2F%2BAZE%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done.\nI implemented tearDownClass(). In this method will be duplicated delete objects that were created in the tests for the ceilometer. I do not know why I did not implemented this method immediately. Thanks for the comment :)","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":5689,"name":"Masayuki Igawa","email":"masayuki@igawa.io","username":"igawa"},"change_message_id":"dd051e93c0bb52c9e9571404f948dc04f6ead89d","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        self.servers_client.delete_server(body[\u0027id\u0027])"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"        for metric in metrics:"},{"line_number":50,"context_line":"            _, body \u003d self.await_samples(metric, query)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class TelemetryNotificationAPITestXML(TelemetryNotificationAPITestJSON):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F%2BAaY%3D","line":50,"updated":"2014-01-31 02:30:22.000000000","message":"Could you assert the body here?","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"6d0b0e145492532869e367469b688f9bf4755f5b","unresolved":false,"context_lines":[{"line_number":47,"context_line":"        self.servers_client.delete_server(body[\u0027id\u0027])"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"        for metric in metrics:"},{"line_number":50,"context_line":"            _, body \u003d self.await_samples(metric, query)"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":""},{"line_number":53,"context_line":"class TelemetryNotificationAPITestXML(TelemetryNotificationAPITestJSON):"}],"source_content_type":"text/x-python","patch_set":6,"id":"AAAAUH%2F9%2BsQ%3D","line":50,"in_reply_to":"AAAAUH%2F%2BAaY%3D","updated":"2014-01-31 12:35:02.000000000","message":"Done. Checking, that body is not empty realized in method await_samples().","commit_id":"c5e22bd69e87b91430eb61ff597def357d2b3337"},{"author":{"_account_id":2813,"name":"Mehdi Abaakouk","email":"sileht@sileht.net","username":"sileht"},"change_message_id":"e3cb5a9568d0f1ca993fe0f431951888da96b2c8","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        metrics \u003d self.nova_notifications"},{"line_number":38,"context_line":"        metrics.append(\u0027instance:\u0027 + flavor[\u0027name\u0027])"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAVn%2F%2FXxY%3D","line":38,"updated":"2014-03-06 15:18:49.000000000","message":"This assumption is wrong, all of these metrics can come from pollster and notifications.\n\nThe test will succeed even we don\u0027t receive notification.","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"99312b4995c8695e2a45f91b18567a02d89733b0","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        metrics \u003d self.nova_notifications"},{"line_number":38,"context_line":"        metrics.append(\u0027instance:\u0027 + flavor[\u0027name\u0027])"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"3ae8d1ca_63820254","line":38,"in_reply_to":"AAAAVn%2F%2FMNg%3D","updated":"2014-05-27 15:05:08.000000000","message":"Done","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7478,"name":"Nadya Shakhat","email":"nadmi4@gmail.com","username":"nprivalova"},"change_message_id":"c6d62ecaf8f898bca699940102c48d240f3fe7bf","unresolved":false,"context_lines":[{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        metrics \u003d self.nova_notifications"},{"line_number":38,"context_line":"        metrics.append(\u0027instance:\u0027 + flavor[\u0027name\u0027])"},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":41,"context_line":""}],"source_content_type":"text/x-python","patch_set":20,"id":"AAAAVn%2F%2FMNg%3D","line":38,"in_reply_to":"AAAAVn%2F%2FXxY%3D","updated":"2014-03-07 18:40:01.000000000","message":"Mehdi, thanks for comment, will fix that. btw, looks like mysql works ok but too long. We were able to repro in our env and from the logs it is seen that notification eventually appears, in 7-8 min. I\u0027m thinking about profiling amount of messages in queue and time of get request. The problem is that test is success if run separately. Other tests creates rather high load: instances, volumes and images are being created. I guess that it may be performance issue. Will keep you posted","commit_id":"0bb268d6ca31afe19e41c8ee038507063800ed60"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"7d6709596ad576851240560af47851f87cdc9d43","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":25,"id":"3ae8d1ca_b29fcf5e","line":31,"updated":"2014-05-28 11:51:09.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"e92fa6c0f34038be5e43f01b440a9c32630dc0eb"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"7d6709596ad576851240560af47851f87cdc9d43","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":25,"id":"3ae8d1ca_d2effbae","line":33,"updated":"2014-05-28 11:51:09.000000000","message":"I am sorry, I might not have understood the test. Why do you make this get_flavor_details call ? The variable \"flavor\" seems unused below.","commit_id":"e92fa6c0f34038be5e43f01b440a9c32630dc0eb"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"7d6709596ad576851240560af47851f87cdc9d43","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":25,"id":"3ae8d1ca_f2887724","line":35,"updated":"2014-05-28 11:51:09.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"e92fa6c0f34038be5e43f01b440a9c32630dc0eb"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"88602fcd85e67d35e1b7ce21159cc8bd0c8ee230","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_63773bd5","line":31,"updated":"2014-05-28 13:25:03.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"38fdbb88a73062e0b899840343e219e367d88190","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_9e765c3d","line":31,"in_reply_to":"3ae8d1ca_1e7dec6e","updated":"2014-05-28 13:36:04.000000000","message":"Yeah sure, but resp[\"status\"] is supposed to be an integer, so to me the cast is not useful. In tempest, nowhere else you will find such a cast.","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"24bd164e10fccadbec08084e7fa5f6fe77ff5820","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_1e7dec6e","line":31,"in_reply_to":"3ae8d1ca_63773bd5","updated":"2014-05-28 13:28:33.000000000","message":"i think it\u0027s because we expect result to be integer. if it\u0027s not the test should fail.","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"19bd87992ccd8aeb6d171cc001234f3e3edb5ff2","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_b4a978e1","line":31,"in_reply_to":"3ae8d1ca_9e765c3d","updated":"2014-05-28 13:58:40.000000000","message":"ah, i see. yeah, i\u0027d assume it\u0027s an integer too so in that regard it\u0027d make sense drop cast... i thought you were implying the opposite. :)","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"b51ac9753f8b835f7d49f04560c0b3c4dada50fb","unresolved":false,"context_lines":[{"line_number":28,"context_line":"    def test_check_nova_notification(self):"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_d702863d","line":31,"in_reply_to":"3ae8d1ca_b4a978e1","updated":"2014-05-28 14:23:04.000000000","message":"Thanks for comment, i change this to: self.assertEqual(resp.status, 202)\nafter Jenkins post +1","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"88602fcd85e67d35e1b7ce21159cc8bd0c8ee230","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_43731fe9","line":33,"updated":"2014-05-28 13:25:03.000000000","message":"I am sorry, I might not have understood the test. Why do you make this get_flavor_details call ? The variable \"flavor\" seems unused below.","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"19bd87992ccd8aeb6d171cc001234f3e3edb5ff2","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_d489a4cb","line":33,"in_reply_to":"3ae8d1ca_3e9f0854","updated":"2014-05-28 13:58:40.000000000","message":"good q, i had assume it was triggering notification on nova end but that may be incorrect... i would think create_server would actually be trigger notifications.","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"24bd164e10fccadbec08084e7fa5f6fe77ff5820","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_7e9350a3","line":33,"in_reply_to":"3ae8d1ca_43731fe9","updated":"2014-05-28 13:28:33.000000000","message":"we can probably change flavor to __ to show we\u0027re ignoring it.","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"38fdbb88a73062e0b899840343e219e367d88190","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_3e9f0854","line":33,"in_reply_to":"3ae8d1ca_7e9350a3","updated":"2014-05-28 13:36:04.000000000","message":"Yeah my bad. The question really is \"Why do you make this get_flavor_details call ?\"","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"b51ac9753f8b835f7d49f04560c0b3c4dada50fb","unresolved":false,"context_lines":[{"line_number":30,"context_line":"        resp, body \u003d self.create_server()"},{"line_number":31,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 202)"},{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_b7ba5a6c","line":33,"in_reply_to":"3ae8d1ca_d489a4cb","updated":"2014-05-28 14:23:04.000000000","message":"Thanks for comment. I change it to: _,flavor \u003d ...","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7350,"name":"Jordan Pittier","email":"jordan.pittier@gmail.com","username":"JordanP"},"change_message_id":"88602fcd85e67d35e1b7ce21159cc8bd0c8ee230","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_a3814391","line":35,"updated":"2014-05-28 13:25:03.000000000","message":"Why do you cast to an interger ? Could resp[\u0027status\u0027] be something else than an integer ?","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"b51ac9753f8b835f7d49f04560c0b3c4dada50fb","unresolved":false,"context_lines":[{"line_number":32,"context_line":""},{"line_number":33,"context_line":"        resp, flavor \u003d self.flavors_client.get_flavor_details("},{"line_number":34,"context_line":"            CONF.compute.flavor_ref)"},{"line_number":35,"context_line":"        self.assertEqual(int(resp[\u0027status\u0027]), 200)"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"        query \u003d (\u0027resource\u0027, \u0027eq\u0027, body[\u0027id\u0027])"},{"line_number":38,"context_line":""}],"source_content_type":"text/x-python","patch_set":26,"id":"3ae8d1ca_97455e72","line":35,"in_reply_to":"3ae8d1ca_a3814391","updated":"2014-05-28 14:23:04.000000000","message":"ditto :)","commit_id":"f83b2122280e84b2b89dd6fba9b70573ad1ca05e"},{"author":{"_account_id":6537,"name":"gordon chung","email":"gord@live.ca","username":"chungg"},"change_message_id":"b5a468dc881ab2f1d685636762098303a4f6bcbc","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    @classmethod"},{"line_number":26,"context_line":"    def setUpClass(cls):"},{"line_number":27,"context_line":"        if CONF.telemetry.too_slow_to_test:"},{"line_number":28,"context_line":"            raise cls.skipException(\"Ceilometer feature for fast work mysql \""},{"line_number":29,"context_line":"                                    \"is disabled\")"},{"line_number":30,"context_line":"        super(TelemetryNotificationAPITestJSON, cls).setUpClass()"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":30,"id":"1ae5cdf2_8072587a","line":28,"updated":"2014-06-10 14:04:29.000000000","message":"(nit) exception message is a bit ambiguous. i\u0027m not exactly sure what it means.","commit_id":"7bcea356a584b030a47907221245caa2262401b2"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"3e4b11078540815e87ec83a7a5a9975a82206896","unresolved":false,"context_lines":[{"line_number":25,"context_line":"    @classmethod"},{"line_number":26,"context_line":"    def setUpClass(cls):"},{"line_number":27,"context_line":"        if CONF.telemetry.too_slow_to_test:"},{"line_number":28,"context_line":"            raise cls.skipException(\"Ceilometer feature for fast work mysql \""},{"line_number":29,"context_line":"                                    \"is disabled\")"},{"line_number":30,"context_line":"        super(TelemetryNotificationAPITestJSON, cls).setUpClass()"},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":30,"id":"1ae5cdf2_863a70cb","line":28,"in_reply_to":"1ae5cdf2_8072587a","updated":"2014-06-10 14:33:32.000000000","message":"Thanks, of course, i resolve it in next patch.","commit_id":"7bcea356a584b030a47907221245caa2262401b2"}],"tempest/config.py":[{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6bb0216428ff39568133e28d8f1a1864e4cc643b","unresolved":false,"context_lines":[{"line_number":633,"context_line":"               choices\u003d[\u0027public\u0027, \u0027admin\u0027, \u0027internal\u0027,"},{"line_number":634,"context_line":"                        \u0027publicURL\u0027, \u0027adminURL\u0027, \u0027internalURL\u0027],"},{"line_number":635,"context_line":"               help\u003d\"The endpoint type to use for the telemetry service.\"),"},{"line_number":636,"context_line":"    cfg.IntOpt(\u0027recording_timeout\u0027,"},{"line_number":637,"context_line":"               default\u003d600,"},{"line_number":638,"context_line":"               help\u003d\"Timeout in seconds for add a record in ceilometer \""},{"line_number":639,"context_line":"                    \"database.\"),"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_b30403c1","line":636,"updated":"2014-05-29 14:56:22.000000000","message":"10 minutes is definitely not a valid timeout for adding a record here as that\u0027s longer than the normal test timeout. I don\u0027t think we should be adding another timeout in this.","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"ea7875e24e18af4a2585936170de09b5678cd0c7","unresolved":false,"context_lines":[{"line_number":633,"context_line":"               choices\u003d[\u0027public\u0027, \u0027admin\u0027, \u0027internal\u0027,"},{"line_number":634,"context_line":"                        \u0027publicURL\u0027, \u0027adminURL\u0027, \u0027internalURL\u0027],"},{"line_number":635,"context_line":"               help\u003d\"The endpoint type to use for the telemetry service.\"),"},{"line_number":636,"context_line":"    cfg.IntOpt(\u0027recording_timeout\u0027,"},{"line_number":637,"context_line":"               default\u003d600,"},{"line_number":638,"context_line":"               help\u003d\"Timeout in seconds for add a record in ceilometer \""},{"line_number":639,"context_line":"                    \"database.\"),"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_ae59fc5b","line":636,"in_reply_to":"3ae8d1ca_b30403c1","updated":"2014-05-29 15:35:05.000000000","message":"Done","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":2750,"name":"Sean Dague","email":"sean@dague.net","username":"sdague"},"change_message_id":"6bb0216428ff39568133e28d8f1a1864e4cc643b","unresolved":false,"context_lines":[{"line_number":637,"context_line":"               default\u003d600,"},{"line_number":638,"context_line":"               help\u003d\"Timeout in seconds for add a record in ceilometer \""},{"line_number":639,"context_line":"                    \"database.\"),"},{"line_number":640,"context_line":"    cfg.BoolOpt(\u0027fast_mysql\u0027,"},{"line_number":641,"context_line":"                default\u003dFalse,"},{"line_number":642,"context_line":"                help\u003d\"This variable is used as flag to enable \""},{"line_number":643,"context_line":"                     \"notification tests\")"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_d3518fd9","line":640,"updated":"2014-05-29 14:56:22.000000000","message":"I feel like this should be actually called:\n\n\u0027too_slow_to_test\u0027\n\nAs that\u0027s what we\u0027re effectively saying. I assume that under Mongo we\u0027d be setting this to be ok, and setting fast_mysql\u003dTrue under mongo seems werid.","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"},{"author":{"_account_id":7126,"name":"Vadim Rovachev","email":"vrovachev@mirantis.com","username":"vrovachev"},"change_message_id":"ea7875e24e18af4a2585936170de09b5678cd0c7","unresolved":false,"context_lines":[{"line_number":637,"context_line":"               default\u003d600,"},{"line_number":638,"context_line":"               help\u003d\"Timeout in seconds for add a record in ceilometer \""},{"line_number":639,"context_line":"                    \"database.\"),"},{"line_number":640,"context_line":"    cfg.BoolOpt(\u0027fast_mysql\u0027,"},{"line_number":641,"context_line":"                default\u003dFalse,"},{"line_number":642,"context_line":"                help\u003d\"This variable is used as flag to enable \""},{"line_number":643,"context_line":"                     \"notification tests\")"}],"source_content_type":"text/x-python","patch_set":27,"id":"3ae8d1ca_6e5ff441","line":640,"in_reply_to":"3ae8d1ca_d3518fd9","updated":"2014-05-29 15:35:05.000000000","message":"Done","commit_id":"3ececa11b3471e133e09a44316e3fde62b465c25"}]}
