)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":13562,"name":"Samuel Matzek","email":"smatzek@us.ibm.com","username":"smatzek"},"change_message_id":"2ffa6c674e0788faaee88a5eccc25f30a1733a11","unresolved":false,"context_lines":[{"line_number":7,"context_line":"Stop polling if nova instances goto error"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"According bug description, if the nova instances goto error, the cluster"},{"line_number":10,"context_line":" building poll still work until timeout. To solve this problem, instance"},{"line_number":11,"context_line":" task status was added in the cluster building poll detection."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Change-Id: Id772d5528c93fcd061aa9d2b2e56c89229ad655c"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"1f485f77_1df763f8","line":10,"range":{"start_line":10,"start_character":0,"end_line":10,"end_character":1},"updated":"2017-11-09 12:20:51.000000000","message":"Remove space here and on the next line as well please.","commit_id":"9510ccbb0931c1ca96ba30b455ef11c026438771"}],"trove/taskmanager/models.py":[{"author":{"_account_id":22694,"name":"jian.song","email":"jiansong19941206@gmail.com","username":"jiansong"},"change_message_id":"7a31980143eff0d93c6e6f2fa2ff0a01ccfdf672","unresolved":false,"context_lines":[{"line_number":249,"context_line":"                task_status \u003d DBInstance.find_by("},{"line_number":250,"context_line":"                    id\u003dinstance_id).get_task_status()"},{"line_number":251,"context_line":"                if (_is_fast_fail_status(status) or"},{"line_number":252,"context_line":"                        (task_status \u003d\u003d InstanceTasks.BUILDING_ERROR_SERVER)):"},{"line_number":253,"context_line":"                    # if one has failed, no need to continue polling"},{"line_number":254,"context_line":"                    LOG.debug(\"Instance %(id)s has acquired a fast-fail \""},{"line_number":255,"context_line":"                              \"status %(status)s and\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_03eb8eb0","line":252,"range":{"start_line":252,"start_character":24,"end_line":252,"end_character":78},"updated":"2017-11-09 07:11:34.000000000","message":"Based on the above, I think it is possible to add \"BUILDING_ERROR_VOLUME\" here...Similarly, there are some states. Before creating the instance will enter these error state, such as: BUILDING_ERROR_SEC_GROUP","commit_id":"9510ccbb0931c1ca96ba30b455ef11c026438771"},{"author":{"_account_id":24739,"name":"Yao Wang","email":"wangyao@cmss.chinamobile.com","username":"wangyao"},"change_message_id":"04c2e0252ee8e0d01399581534ef4098b13bf71e","unresolved":false,"context_lines":[{"line_number":249,"context_line":"                task_status \u003d DBInstance.find_by("},{"line_number":250,"context_line":"                    id\u003dinstance_id).get_task_status()"},{"line_number":251,"context_line":"                if (_is_fast_fail_status(status) or"},{"line_number":252,"context_line":"                        (task_status \u003d\u003d InstanceTasks.BUILDING_ERROR_SERVER)):"},{"line_number":253,"context_line":"                    # if one has failed, no need to continue polling"},{"line_number":254,"context_line":"                    LOG.debug(\"Instance %(id)s has acquired a fast-fail \""},{"line_number":255,"context_line":"                              \"status %(status)s and\""}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_cc65a3e3","line":252,"range":{"start_line":252,"start_character":24,"end_line":252,"end_character":78},"in_reply_to":"1f485f77_03eb8eb0","updated":"2017-11-09 09:30:47.000000000","message":"thanks for your comments, it\u0027s helpful.\nI have no idea weather add all this error status in here or not.Because this patch purpose is fix stop polling when nova instances error.","commit_id":"9510ccbb0931c1ca96ba30b455ef11c026438771"}],"trove/tests/unittests/taskmanager/test_clusters.py":[{"author":{"_account_id":13562,"name":"Samuel Matzek","email":"smatzek@us.ibm.com","username":"smatzek"},"change_message_id":"2ffa6c674e0788faaee88a5eccc25f30a1733a11","unresolved":false,"context_lines":[{"line_number":98,"context_line":"    @patch.object(DBInstance, \u0027find_by\u0027)"},{"line_number":99,"context_line":"    @patch.object(InstanceServiceStatus, \u0027find_by\u0027)"},{"line_number":100,"context_line":"    @patch(\u0027trove.taskmanager.models.LOG\u0027)"},{"line_number":101,"context_line":"    def test_all_instances_ready_bad_status(self, mock_logging,"},{"line_number":102,"context_line":"                                            mock_find, mock_db_find,"},{"line_number":103,"context_line":"                                            mock_update):"},{"line_number":104,"context_line":"        (mock_find.return_value."}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_5deddb23","line":101,"updated":"2017-11-09 12:20:51.000000000","message":"This test, as it existed before your patch tested the serviceStatus.FAILED.\n\nYou could add a new test for get_task_status to test when the service status is NOT failed yet but the Nova server is in error, which would be the case your bug reported.","commit_id":"9510ccbb0931c1ca96ba30b455ef11c026438771"},{"author":{"_account_id":24739,"name":"Yao Wang","email":"wangyao@cmss.chinamobile.com","username":"wangyao"},"change_message_id":"0c7186d169740126b2de56885c41ecd7d4c00ede","unresolved":false,"context_lines":[{"line_number":98,"context_line":"    @patch.object(DBInstance, \u0027find_by\u0027)"},{"line_number":99,"context_line":"    @patch.object(InstanceServiceStatus, \u0027find_by\u0027)"},{"line_number":100,"context_line":"    @patch(\u0027trove.taskmanager.models.LOG\u0027)"},{"line_number":101,"context_line":"    def test_all_instances_ready_bad_status(self, mock_logging,"},{"line_number":102,"context_line":"                                            mock_find, mock_db_find,"},{"line_number":103,"context_line":"                                            mock_update):"},{"line_number":104,"context_line":"        (mock_find.return_value."}],"source_content_type":"text/x-python","patch_set":1,"id":"1f485f77_8c9446ea","line":101,"in_reply_to":"1f485f77_5deddb23","updated":"2017-11-09 14:57:29.000000000","message":"Add some tests in patch set 2. Please review.","commit_id":"9510ccbb0931c1ca96ba30b455ef11c026438771"},{"author":{"_account_id":13562,"name":"Samuel Matzek","email":"smatzek@us.ibm.com","username":"smatzek"},"change_message_id":"b65b6e8b107a48e2e8b953f9f727284a9189b938","unresolved":false,"context_lines":[{"line_number":102,"context_line":"                                                   mock_logging, mock_find,"},{"line_number":103,"context_line":"                                                   mock_db_find, mock_update):"},{"line_number":104,"context_line":"        (mock_find.return_value."},{"line_number":105,"context_line":"         get_status.return_value) \u003d ServiceStatuses.INSTANCE_READY"},{"line_number":106,"context_line":"        (mock_db_find.return_value."},{"line_number":107,"context_line":"         get_task_status.return_value) \u003d InstanceTasks.BUILDING_ERROR_SERVER"},{"line_number":108,"context_line":"        ret_val \u003d self.clustertasks._all_instances_ready([\"1\", \"2\", \"3\", \"4\"],"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f485f77_f4448fb9","line":105,"range":{"start_line":105,"start_character":52,"end_line":105,"end_character":66},"updated":"2017-11-10 14:03:22.000000000","message":"I believe this should be BUILDING to test the case where the Nova instance is in error during build.","commit_id":"188a44012d31c2a9634973a244aca8effcc69297"},{"author":{"_account_id":13562,"name":"Samuel Matzek","email":"smatzek@us.ibm.com","username":"smatzek"},"change_message_id":"d2fa96da75b5621ddab310fc29c3f75e0a449cc1","unresolved":false,"context_lines":[{"line_number":102,"context_line":"                                                   mock_logging, mock_find,"},{"line_number":103,"context_line":"                                                   mock_db_find, mock_update):"},{"line_number":104,"context_line":"        (mock_find.return_value."},{"line_number":105,"context_line":"         get_status.return_value) \u003d ServiceStatuses.INSTANCE_READY"},{"line_number":106,"context_line":"        (mock_db_find.return_value."},{"line_number":107,"context_line":"         get_task_status.return_value) \u003d InstanceTasks.BUILDING_ERROR_SERVER"},{"line_number":108,"context_line":"        ret_val \u003d self.clustertasks._all_instances_ready([\"1\", \"2\", \"3\", \"4\"],"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f485f77_97b79d87","line":105,"range":{"start_line":105,"start_character":52,"end_line":105,"end_character":66},"in_reply_to":"1f485f77_975b1d86","updated":"2017-11-10 15:20:10.000000000","message":"I thought it was building but then went to look at the state changes.  You are right, it\u0027s NEW.  Thanks.","commit_id":"188a44012d31c2a9634973a244aca8effcc69297"},{"author":{"_account_id":24739,"name":"Yao Wang","email":"wangyao@cmss.chinamobile.com","username":"wangyao"},"change_message_id":"3ca8bd57cd3fef3e737b6f62eda647867a81463c","unresolved":false,"context_lines":[{"line_number":102,"context_line":"                                                   mock_logging, mock_find,"},{"line_number":103,"context_line":"                                                   mock_db_find, mock_update):"},{"line_number":104,"context_line":"        (mock_find.return_value."},{"line_number":105,"context_line":"         get_status.return_value) \u003d ServiceStatuses.INSTANCE_READY"},{"line_number":106,"context_line":"        (mock_db_find.return_value."},{"line_number":107,"context_line":"         get_task_status.return_value) \u003d InstanceTasks.BUILDING_ERROR_SERVER"},{"line_number":108,"context_line":"        ret_val \u003d self.clustertasks._all_instances_ready([\"1\", \"2\", \"3\", \"4\"],"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f485f77_975b1d86","line":105,"range":{"start_line":105,"start_character":52,"end_line":105,"end_character":66},"in_reply_to":"1f485f77_f4448fb9","updated":"2017-11-10 15:13:36.000000000","message":"Thanks for your comment. Actually the status was new.","commit_id":"188a44012d31c2a9634973a244aca8effcc69297"},{"author":{"_account_id":13562,"name":"Samuel Matzek","email":"smatzek@us.ibm.com","username":"smatzek"},"change_message_id":"b65b6e8b107a48e2e8b953f9f727284a9189b938","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        (mock_find.return_value."},{"line_number":121,"context_line":"         get_status.return_value) \u003d ServiceStatuses.FAILED"},{"line_number":122,"context_line":"        (mock_db_find.return_value."},{"line_number":123,"context_line":"         get_task_status.return_value) \u003d InstanceTasks.BUILDING_ERROR_SERVER"},{"line_number":124,"context_line":"        ret_val \u003d self.clustertasks._all_instances_ready([\"1\", \"2\", \"3\", \"4\"],"},{"line_number":125,"context_line":"                                                         self.cluster_id)"},{"line_number":126,"context_line":"        mock_update.assert_called_with(self.cluster_id, None)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f485f77_b493b74f","line":123,"range":{"start_line":123,"start_character":55,"end_line":123,"end_character":76},"updated":"2017-11-10 14:03:22.000000000","message":"I think this should change to InstanceTasks.NONE.  That would probably keep the original intent of the test.","commit_id":"188a44012d31c2a9634973a244aca8effcc69297"},{"author":{"_account_id":24739,"name":"Yao Wang","email":"wangyao@cmss.chinamobile.com","username":"wangyao"},"change_message_id":"3ca8bd57cd3fef3e737b6f62eda647867a81463c","unresolved":false,"context_lines":[{"line_number":120,"context_line":"        (mock_find.return_value."},{"line_number":121,"context_line":"         get_status.return_value) \u003d ServiceStatuses.FAILED"},{"line_number":122,"context_line":"        (mock_db_find.return_value."},{"line_number":123,"context_line":"         get_task_status.return_value) \u003d InstanceTasks.BUILDING_ERROR_SERVER"},{"line_number":124,"context_line":"        ret_val \u003d self.clustertasks._all_instances_ready([\"1\", \"2\", \"3\", \"4\"],"},{"line_number":125,"context_line":"                                                         self.cluster_id)"},{"line_number":126,"context_line":"        mock_update.assert_called_with(self.cluster_id, None)"}],"source_content_type":"text/x-python","patch_set":2,"id":"1f485f77_b7661951","line":123,"range":{"start_line":123,"start_character":55,"end_line":123,"end_character":76},"in_reply_to":"1f485f77_b493b74f","updated":"2017-11-10 15:13:36.000000000","message":"Sorry,I forgot that.","commit_id":"188a44012d31c2a9634973a244aca8effcc69297"}]}
