)]}'
{"octavia/controller/queue/consumer.py":[{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"2db7b3a9f4469f20301e5184d0f90cb20e9675c7","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                    # Guess it didn\u0027t have a worker/executor, skip it..."},{"line_number":64,"context_line":"                    pass"},{"line_number":65,"context_line":"                else:"},{"line_number":66,"context_line":"                    w_executor.shutdown()"},{"line_number":67,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_41a41ba6","line":66,"updated":"2017-04-28 10:26:53.000000000","message":"Is it necessary to do an \u0027else\u0027 here? I think you accomplish the same thing by just doing `e.worker.executor.shutdown()` in the try-block, because you\u0027d end up with the same AttributeError either way. :P","commit_id":"73661f6df8373608e15272ef9a2eac93d5050d88"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"0bbeb9b4d05a7b74304c20b807dc4104ae378473","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                    # Guess it didn\u0027t have a worker/executor, skip it..."},{"line_number":64,"context_line":"                    pass"},{"line_number":65,"context_line":"                else:"},{"line_number":66,"context_line":"                    w_executor.shutdown()"},{"line_number":67,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_b8c30089","line":66,"in_reply_to":"5ff73747_1db546ee","updated":"2017-04-28 19:21:25.000000000","message":"Yeah, I generally agree, though this case is pretty amazingly straightforward. I feel like I\u0027m being a bit pedantic, but I generally try to keep things as simple as possible, and the \"try/else\" syntax is surprisingly often misunderstood. If you wouldn\u0027t mind changing it...","commit_id":"73661f6df8373608e15272ef9a2eac93d5050d88"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"7f15377cac03727a3e0f9c6fee266b7e92cc3c7e","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                    # Guess it didn\u0027t have a worker/executor, skip it..."},{"line_number":64,"context_line":"                    pass"},{"line_number":65,"context_line":"                else:"},{"line_number":66,"context_line":"                    w_executor.shutdown()"},{"line_number":67,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_1db546ee","line":66,"in_reply_to":"5ff73747_41a41ba6","updated":"2017-04-28 18:41:32.000000000","message":"I try to keep my try/except blocks as small as possible, because when you start making them large they start to pick up exceptions you didn\u0027t want to pick up. Large try/except blocks u can start to pick up (maybe not in this case) exceptions being emitted from methods that you didn\u0027t want to pick up.\n\nSo ya, just my habit; I can change it in this case if you want.","commit_id":"73661f6df8373608e15272ef9a2eac93d5050d88"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"c90fe9953745f51429e655b5447679c67d157b8e","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                    # Guess it didn\u0027t have a worker/executor, skip it..."},{"line_number":64,"context_line":"                    pass"},{"line_number":65,"context_line":"                else:"},{"line_number":66,"context_line":"                    w_executor.shutdown()"},{"line_number":67,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_d630dc58","line":66,"in_reply_to":"5ff73747_b8c30089","updated":"2017-04-28 21:20:24.000000000","message":"I am not a fan of try/else either...","commit_id":"73661f6df8373608e15272ef9a2eac93d5050d88"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"7ff50fd249426f564960562acbfd4c7995cc4f04","unresolved":false,"context_lines":[{"line_number":63,"context_line":"                    # Guess it didn\u0027t have a worker/executor, skip it..."},{"line_number":64,"context_line":"                    pass"},{"line_number":65,"context_line":"                else:"},{"line_number":66,"context_line":"                    w_executor.shutdown()"},{"line_number":67,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5ff73747_3c58ff53","line":66,"in_reply_to":"5ff73747_d630dc58","updated":"2017-04-28 23:46:39.000000000","message":"Okie dokie.","commit_id":"73661f6df8373608e15272ef9a2eac93d5050d88"},{"author":{"_account_id":10273,"name":"Adam Harwell","email":"flux.adam@gmail.com","username":"rm_you"},"change_message_id":"6069dee088fd8cc80ff3cfa8a09a446b2a3b6ae6","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        if self.endpoints:"},{"line_number":58,"context_line":"            LOG.info(_LI(\u0027Shutting down endpoint worker executors...\u0027))"},{"line_number":59,"context_line":"            for e in self.endpoints:"},{"line_number":60,"context_line":"                e.worker.executor.shutdown()"},{"line_number":61,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5ff73747_c7c14456","line":60,"updated":"2017-04-29 00:22:22.000000000","message":"I didn\u0027t say you needed to get rid of the try/except altogether, I think it made sense -- you just didn\u0027t need the `else`. Wrap a try around this, with a pass in the except, and it\u0027s prolly good.","commit_id":"22abb6cc0dc7502b7da7a85b963ee5398486f271"},{"author":{"_account_id":1297,"name":"Joshua Harlow","email":"jxharlow@godaddy.com","username":"harlowja"},"change_message_id":"e623a6fa49596e2a6b892cbd715643924b919235","unresolved":false,"context_lines":[{"line_number":57,"context_line":"        if self.endpoints:"},{"line_number":58,"context_line":"            LOG.info(_LI(\u0027Shutting down endpoint worker executors...\u0027))"},{"line_number":59,"context_line":"            for e in self.endpoints:"},{"line_number":60,"context_line":"                e.worker.executor.shutdown()"},{"line_number":61,"context_line":"        super(ConsumerService, self).terminate()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5ff73747_7f22f4ba","line":60,"in_reply_to":"5ff73747_c7c14456","updated":"2017-04-29 20:01:52.000000000","message":"Well the larger question, is attribute error even possible?\n\nIf it\u0027s not then meh, either way is fine, if it is then I can add it; I was undecided because it appears the endpoint worker is actually a plugin in the end, and I was assuming that such plugins may not actually have executors (there is only one plugin right now(?) so it probably doesn\u0027t matter). \n\nThis assumption may be incorrect (or correct)?","commit_id":"22abb6cc0dc7502b7da7a85b963ee5398486f271"}]}
