)]}'
{"mistral/engine/tasks.py":[{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"bce7b0b4d7db1a68bb7ca6b4f585426f331c0440","unresolved":false,"context_lines":[{"line_number":521,"context_line":"    @profiler.trace(\u0027task-run-existing\u0027)"},{"line_number":522,"context_line":"    def _run_existing(self):"},{"line_number":523,"context_line":"        # NOTE(vgvoleg): join tasks in direct workflows can\u0027t be"},{"line_number":524,"context_line":"        # rerun as is, because this tasks can\u0027t start without"},{"line_number":525,"context_line":"        # the correct logical state."},{"line_number":526,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":527,"context_line":"                and self.task_spec.get_join():"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_65cc8161","line":524,"range":{"start_line":524,"start_character":16,"end_line":524,"end_character":21},"updated":"2019-07-03 10:43:27.000000000","message":"as-is","commit_id":"a7f61f1daee8b0cde4e9c32e85bc4dc6b64f0712"},{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"bce7b0b4d7db1a68bb7ca6b4f585426f331c0440","unresolved":false,"context_lines":[{"line_number":521,"context_line":"    @profiler.trace(\u0027task-run-existing\u0027)"},{"line_number":522,"context_line":"    def _run_existing(self):"},{"line_number":523,"context_line":"        # NOTE(vgvoleg): join tasks in direct workflows can\u0027t be"},{"line_number":524,"context_line":"        # rerun as is, because this tasks can\u0027t start without"},{"line_number":525,"context_line":"        # the correct logical state."},{"line_number":526,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":527,"context_line":"                and self.task_spec.get_join():"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_05d90521","line":524,"range":{"start_line":524,"start_character":31,"end_line":524,"end_character":35},"updated":"2019-07-03 10:43:27.000000000","message":"these","commit_id":"a7f61f1daee8b0cde4e9c32e85bc4dc6b64f0712"},{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"bce7b0b4d7db1a68bb7ca6b4f585426f331c0440","unresolved":false,"context_lines":[{"line_number":522,"context_line":"    def _run_existing(self):"},{"line_number":523,"context_line":"        # NOTE(vgvoleg): join tasks in direct workflows can\u0027t be"},{"line_number":524,"context_line":"        # rerun as is, because this tasks can\u0027t start without"},{"line_number":525,"context_line":"        # the correct logical state."},{"line_number":526,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":527,"context_line":"                and self.task_spec.get_join():"},{"line_number":528,"context_line":"            from mistral.engine import task_handler as t_h"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_25d689f3","line":525,"range":{"start_line":525,"start_character":10,"end_line":525,"end_character":13},"updated":"2019-07-03 10:43:27.000000000","message":"a","commit_id":"a7f61f1daee8b0cde4e9c32e85bc4dc6b64f0712"},{"author":{"_account_id":11391,"name":"Mikhail Fedosin","email":"mfedosin@redhat.com","username":"fedosinme"},"change_message_id":"bce7b0b4d7db1a68bb7ca6b4f585426f331c0440","unresolved":false,"context_lines":[{"line_number":525,"context_line":"        # the correct logical state."},{"line_number":526,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":527,"context_line":"                and self.task_spec.get_join():"},{"line_number":528,"context_line":"            from mistral.engine import task_handler as t_h"},{"line_number":529,"context_line":"            self.set_state(states.WAITING, \u0027Task is waiting.\u0027)"},{"line_number":530,"context_line":"            t_h._schedule_refresh_task_state(self.task_ex.id)"},{"line_number":531,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":2,"id":"9fb8cfa7_0547c5be","line":528,"updated":"2019-07-03 10:43:27.000000000","message":"I think adding imports inside a function is a bad practice. Probably we can move it to the other imports at the top?","commit_id":"a7f61f1daee8b0cde4e9c32e85bc4dc6b64f0712"},{"author":{"_account_id":21970,"name":"Andras Kovi","email":"akovi@nokia.com","username":"andras.kovi"},"change_message_id":"e3c2be0a0fa1d41cb55801c2df1cca44e33ae7ff","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        # a correct logical state."},{"line_number":525,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":526,"context_line":"                and self.task_spec.get_join():"},{"line_number":527,"context_line":"            from mistral.engine import task_handler as t_h"},{"line_number":528,"context_line":"            self.set_state(states.WAITING, \u0027Task is waiting.\u0027)"},{"line_number":529,"context_line":"            t_h._schedule_refresh_task_state(self.task_ex.id)"},{"line_number":530,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_25d345d7","line":527,"range":{"start_line":527,"start_character":12,"end_line":527,"end_character":58},"updated":"2019-07-17 11:13:09.000000000","message":"is there some reason why this cannot be moved to the file header?","commit_id":"bdbfb823010cefe94945ba118199d9ecccdbcab7"},{"author":{"_account_id":8731,"name":"Renat Akhmerov","email":"renat.akhmerov@gmail.com","username":"rakhmerov"},"change_message_id":"c35213e562599c507fc535920668e77f05636d74","unresolved":false,"context_lines":[{"line_number":524,"context_line":"        # a correct logical state."},{"line_number":525,"context_line":"        if self.rerun and hasattr(self.task_spec, \"get_join\") \\"},{"line_number":526,"context_line":"                and self.task_spec.get_join():"},{"line_number":527,"context_line":"            from mistral.engine import task_handler as t_h"},{"line_number":528,"context_line":"            self.set_state(states.WAITING, \u0027Task is waiting.\u0027)"},{"line_number":529,"context_line":"            t_h._schedule_refresh_task_state(self.task_ex.id)"},{"line_number":530,"context_line":"            return"}],"source_content_type":"text/x-python","patch_set":5,"id":"7faddb67_6ff32175","line":527,"range":{"start_line":527,"start_character":12,"end_line":527,"end_character":58},"in_reply_to":"7faddb67_25d345d7","updated":"2019-07-22 04:35:28.000000000","message":"Cyclic dependency I guess. I also hate such places but sometimes it\u0027s easier to so rather than change the architecture.\n\nOverall, this code snippet is a \"bad smell\" to me because at this level Task object shouldn\u0027t know anything about a specific workflow type (direct, reverse etc.) about about any specific language constructions like \"join\". That\u0027s why at this level we use terms like \"defer\" and \"deferred\". That tells that a task execution may be deferred for some time due to some unsatisfied conditions. So please consider a more abstract approach. May be you can delegate something to the workflow controller. I don\u0027t say \"no\" strictly. Just please think more about it and let\u0027s discuss.","commit_id":"bdbfb823010cefe94945ba118199d9ecccdbcab7"}]}
