)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"aafab66a788d58dc81486bd27bdc0966a02ed660","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"75741a1f_e12d73c0","updated":"2022-01-07 17:41:41.000000000","message":"Just one minor comment about putting the hdel() under the save_and_reraise block.","commit_id":"0009940209852821797615fc6d025faebd83aa67"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"15a387b7021b5b2dd9b7a378d7d0b83da75a7523","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"89e5c055_ea291e3c","updated":"2022-01-10 10:30:18.000000000","message":"LGTM, the latest patch set address Michael\u0027s comment.","commit_id":"3df4c396d996179203230c860ab80fdd86f06358"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"4ce8c22bae68e51941ddcbc48d84d2686bd1c84f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f558eea0_6e2e0d8b","updated":"2022-01-10 21:36:13.000000000","message":"LGTM","commit_id":"ba2cbd72f9deee5fedf15864dac41471f4402c82"}],"taskflow/jobs/backends/impl_redis.py":[{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"99208f7f7e36ce7f82c4262efd27c3c9b40f7474","unresolved":true,"context_lines":[{"line_number":826,"context_line":"                job_name \u003d job_data[\u0027name\u0027]"},{"line_number":827,"context_line":"                job_sequence_id \u003d job_data[\u0027sequence\u0027]"},{"line_number":828,"context_line":"                job_details \u003d job_data.get(\u0027details\u0027, {})"},{"line_number":829,"context_line":"            except (ValueError, TypeError, KeyError, exc.JobFailure):"},{"line_number":830,"context_line":"                LOG.info(\"Deleting invalid job data at key: %s[%s]\","},{"line_number":831,"context_line":"                         self.listings_key, raw_job_key)"},{"line_number":832,"context_line":"                self._client.hdel(self.listings_key, raw_job_key)"}],"source_content_type":"text/x-python","patch_set":1,"id":"a4445d8b_cfc2850f","line":829,"range":{"start_line":829,"start_character":20,"end_line":829,"end_character":51},"updated":"2021-11-08 10:03:30.000000000","message":"Do we want to handle ValueError, TypeError, and KeyError in the same way that JobFailure?\nI mean, the data will be removed from the hashmap even for those type of exception. I\u0027m not sure that this is what we want in this case.\n\nWhat do you think about catching `exc.JobFailure` independently from those other kind of error?","commit_id":"0009940209852821797615fc6d025faebd83aa67"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"f17c8dfa94c0aa82fc04cd63205b32e67607c50f","unresolved":true,"context_lines":[{"line_number":826,"context_line":"                job_name \u003d job_data[\u0027name\u0027]"},{"line_number":827,"context_line":"                job_sequence_id \u003d job_data[\u0027sequence\u0027]"},{"line_number":828,"context_line":"                job_details \u003d job_data.get(\u0027details\u0027, {})"},{"line_number":829,"context_line":"            except (ValueError, TypeError, KeyError, exc.JobFailure):"},{"line_number":830,"context_line":"                LOG.info(\"Deleting invalid job data at key: %s[%s]\","},{"line_number":831,"context_line":"                         self.listings_key, raw_job_key)"},{"line_number":832,"context_line":"                self._client.hdel(self.listings_key, raw_job_key)"}],"source_content_type":"text/x-python","patch_set":1,"id":"d2151fbf_1160d383","line":829,"range":{"start_line":829,"start_character":20,"end_line":829,"end_character":51},"in_reply_to":"a4445d8b_cfc2850f","updated":"2021-11-08 13:05:55.000000000","message":"Here, the only part of code that can throw \"JobFailure\" is the self._loads function. I think it is safe to say that ValueError, TypeError, KeyError and JobFailure are raised only if there\u0027s a problem with the value of the redis data (corrupted, invalid, etc...).\nI agree that the name JobFailure is a bit misleading, perhaps we should change the exception raised from _loads by another exception (ValueError sounds good for those kinds of issues).","commit_id":"0009940209852821797615fc6d025faebd83aa67"},{"author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"change_message_id":"7ee4be26e708694645462db785ebf2ce943eb0fd","unresolved":true,"context_lines":[{"line_number":826,"context_line":"                job_name \u003d job_data[\u0027name\u0027]"},{"line_number":827,"context_line":"                job_sequence_id \u003d job_data[\u0027sequence\u0027]"},{"line_number":828,"context_line":"                job_details \u003d job_data.get(\u0027details\u0027, {})"},{"line_number":829,"context_line":"            except (ValueError, TypeError, KeyError, exc.JobFailure):"},{"line_number":830,"context_line":"                LOG.info(\"Deleting invalid job data at key: %s[%s]\","},{"line_number":831,"context_line":"                         self.listings_key, raw_job_key)"},{"line_number":832,"context_line":"                self._client.hdel(self.listings_key, raw_job_key)"}],"source_content_type":"text/x-python","patch_set":1,"id":"e673d2dc_c15ddaea","line":829,"range":{"start_line":829,"start_character":20,"end_line":829,"end_character":51},"in_reply_to":"d2151fbf_1160d383","updated":"2021-11-15 12:59:11.000000000","message":"As you prefer... I don\u0027t have preference. `JobFailure` LGTM, I just wanted to be sure that those errors must be handled in the same.\n\nThe current version LGTM.","commit_id":"0009940209852821797615fc6d025faebd83aa67"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"aafab66a788d58dc81486bd27bdc0966a02ed660","unresolved":true,"context_lines":[{"line_number":829,"context_line":"            except (ValueError, TypeError, KeyError, exc.JobFailure):"},{"line_number":830,"context_line":"                LOG.info(\"Deleting invalid job data at key: %s[%s]\","},{"line_number":831,"context_line":"                         self.listings_key, raw_job_key)"},{"line_number":832,"context_line":"                self._client.hdel(self.listings_key, raw_job_key)"},{"line_number":833,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":834,"context_line":"                    LOG.warning(\"Incorrectly formatted job data found at\""},{"line_number":835,"context_line":"                                \" key: %s[%s]\", self.listings_key,"}],"source_content_type":"text/x-python","patch_set":1,"id":"3d95db57_27af3b81","line":832,"updated":"2022-01-07 17:41:41.000000000","message":"This should probably go under the save_and_reraise block, otherwise if the hdel() fails for some reason, the original failure may be lost.","commit_id":"0009940209852821797615fc6d025faebd83aa67"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"c1385f8b13064823ca8def1e80460185f5f2e22e","unresolved":false,"context_lines":[{"line_number":829,"context_line":"            except (ValueError, TypeError, KeyError, exc.JobFailure):"},{"line_number":830,"context_line":"                LOG.info(\"Deleting invalid job data at key: %s[%s]\","},{"line_number":831,"context_line":"                         self.listings_key, raw_job_key)"},{"line_number":832,"context_line":"                self._client.hdel(self.listings_key, raw_job_key)"},{"line_number":833,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":834,"context_line":"                    LOG.warning(\"Incorrectly formatted job data found at\""},{"line_number":835,"context_line":"                                \" key: %s[%s]\", self.listings_key,"}],"source_content_type":"text/x-python","patch_set":1,"id":"b91ff04d_6502b5df","line":832,"in_reply_to":"3d95db57_27af3b81","updated":"2022-01-10 09:36:25.000000000","message":"done, thanks for the tip","commit_id":"0009940209852821797615fc6d025faebd83aa67"}]}
