)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"c0cd4ad6abe824259b648179f80ddd925919c1d4","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"6475f2f9_cb96b81c","updated":"2026-03-24 23:12:10.000000000","message":"I agree that you need to make these changes, so I say I\u0027m ok to sqaush it down, however I\u0027m not sure why your not also fixing the assert in this patch.\n\nSo -1 for not fixing the assert, but also +2 for squashing it down.","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"}],"test/unit/cli/test_expirer_rebalancer.py":[{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"c0cd4ad6abe824259b648179f80ddd925919c1d4","unresolved":true,"context_lines":[{"line_number":723,"context_line":"            fd.write(\u0027[object-expirer]\u0027)"},{"line_number":724,"context_line":""},{"line_number":725,"context_line":"        with mock.patch(\u0027sys.stdout\u0027, new\u003dStringIO()) as mock_stdout, \\"},{"line_number":726,"context_line":"            mock.patch.object(expirer_rebalancer.ExpirerRebalancer,"},{"line_number":727,"context_line":"                              \u0027get_task_containers_to_migrate\u0027,"},{"line_number":728,"context_line":"                              side_effect\u003dException(\u0027test error\u0027)):"},{"line_number":729,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"}],"source_content_type":"text/x-python","patch_set":1,"id":"946388cc_40cdfa85","line":726,"range":{"start_line":726,"start_character":12,"end_line":726,"end_character":22},"updated":"2026-03-24 23:12:10.000000000","message":"I\u0027d rather this line indented once more so it doesn\u0027t line up wit the code that is suppose to run in the with context (line 729)\n\nThis is obvously not part of this follow up, but an issue with existing code. So maybe just a NIT.","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"f4196a4eb8f930f4699b96a78be419e4dd4ab225","unresolved":false,"context_lines":[{"line_number":723,"context_line":"            fd.write(\u0027[object-expirer]\u0027)"},{"line_number":724,"context_line":""},{"line_number":725,"context_line":"        with mock.patch(\u0027sys.stdout\u0027, new\u003dStringIO()) as mock_stdout, \\"},{"line_number":726,"context_line":"            mock.patch.object(expirer_rebalancer.ExpirerRebalancer,"},{"line_number":727,"context_line":"                              \u0027get_task_containers_to_migrate\u0027,"},{"line_number":728,"context_line":"                              side_effect\u003dException(\u0027test error\u0027)):"},{"line_number":729,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"}],"source_content_type":"text/x-python","patch_set":1,"id":"786a4274_20fde252","line":726,"range":{"start_line":726,"start_character":12,"end_line":726,"end_character":22},"in_reply_to":"946388cc_40cdfa85","updated":"2026-03-25 09:57:22.000000000","message":"Done","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"c0cd4ad6abe824259b648179f80ddd925919c1d4","unresolved":true,"context_lines":[{"line_number":737,"context_line":"                              \u0027get_task_containers_to_migrate\u0027,"},{"line_number":738,"context_line":"                              return_value\u003d[\u0027a container\u0027]), \\"},{"line_number":739,"context_line":"                mock.patch.object(expirer_rebalancer.ExpirerRebalancer,"},{"line_number":740,"context_line":"                                  \u0027run_workers\u0027) as mock_run_workers:"},{"line_number":741,"context_line":"            mock_run_workers.return_value \u003d {\u0027failed_tasks\u0027: 1}"},{"line_number":742,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"},{"line_number":743,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"47f7adcc_c9adfae9","line":740,"updated":"2026-03-24 23:12:10.000000000","message":"oh I see, so the run_workers doesn\u0027t return failed_tasks because run_workers isn\u0027t actually called unless there is an ic config. So basically we were testing the wrong thing, or rather without an IC config we were basically testing the same get_task_containers_to_migrate path twice.","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"f4196a4eb8f930f4699b96a78be419e4dd4ab225","unresolved":true,"context_lines":[{"line_number":737,"context_line":"                              \u0027get_task_containers_to_migrate\u0027,"},{"line_number":738,"context_line":"                              return_value\u003d[\u0027a container\u0027]), \\"},{"line_number":739,"context_line":"                mock.patch.object(expirer_rebalancer.ExpirerRebalancer,"},{"line_number":740,"context_line":"                                  \u0027run_workers\u0027) as mock_run_workers:"},{"line_number":741,"context_line":"            mock_run_workers.return_value \u003d {\u0027failed_tasks\u0027: 1}"},{"line_number":742,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"},{"line_number":743,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"eb6df036_e8fdba67","line":740,"in_reply_to":"47f7adcc_c9adfae9","updated":"2026-03-25 09:57:22.000000000","message":"yes, this","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"},{"author":{"_account_id":7233,"name":"Matthew Oliver","email":"matt@oliver.net.au","username":"mattoliverau"},"change_message_id":"c0cd4ad6abe824259b648179f80ddd925919c1d4","unresolved":true,"context_lines":[{"line_number":742,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"},{"line_number":743,"context_line":""},{"line_number":744,"context_line":"        self.assertEqual(1, ret)"},{"line_number":745,"context_line":"        self.assertEqual(\u0027done with errors, please check logs.\\n\u0027,"},{"line_number":746,"context_line":"                         mock_stdout.getvalue())"},{"line_number":747,"context_line":""},{"line_number":748,"context_line":"    def test_main(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"b04de09f_d63d6b0d","line":745,"updated":"2026-03-24 23:12:10.000000000","message":"But as you mentioned in the commit message, this still fails right? because run_workers return failed_tasks stats, which will be printed to stdout.\n\nSo although I agree which the changes to this patch, are we also not going to fix the assert here:\n\n```\nAssertionError: \u0027done with errors, please check logs.\\n\u0027 !\u003d \u0027failed_tasks 1\\ndone with errors, please check logs.\\n\u0027\n```","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"},{"author":{"_account_id":7847,"name":"Alistair Coles","email":"alistairncoles@gmail.com","username":"acoles"},"change_message_id":"f4196a4eb8f930f4699b96a78be419e4dd4ab225","unresolved":false,"context_lines":[{"line_number":742,"context_line":"            ret \u003d expirer_rebalancer.main([conf_path])"},{"line_number":743,"context_line":""},{"line_number":744,"context_line":"        self.assertEqual(1, ret)"},{"line_number":745,"context_line":"        self.assertEqual(\u0027done with errors, please check logs.\\n\u0027,"},{"line_number":746,"context_line":"                         mock_stdout.getvalue())"},{"line_number":747,"context_line":""},{"line_number":748,"context_line":"    def test_main(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"56301d66_c3d26f56","line":745,"in_reply_to":"b04de09f_d63d6b0d","updated":"2026-03-25 09:57:22.000000000","message":"argh! that thing when the last thing you do is revert your change to check the test fails, ... and then notice a typo, and fix it, and commit --amend, and push to gerrit...with your reverted code 😞\n\nsorry Matt!","commit_id":"5f4f34bb2d7ae2d6b29b2bf221cd757e95752fb2"}]}
