)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"1b9d0091de126d2942495dfc8cc4ebf6d229035a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"e4ca564d_24fced60","updated":"2023-08-23 07:11:15.000000000","message":"What do you think of:\n\n```\n        while True:\n            try:\n                char \u003d sock.recv(1)\n            except socket.timeout:\n                pass\n            else:\n                if char \u003d\u003d b\u0027\\n\u0027:\n                    break\n                size_str +\u003d char\n            if time.time() - begin \u003e DRIVER_AGENT_TIMEOUT:\n                raise driver_exceptions.DriverAgentTimeout(\n                    fault_string\u003d(\u0027The driver agent did not respond in {} \u0027\n                                  \u0027seconds.\u0027.format(DRIVER_AGENT_TIMEOUT)))\n```","commit_id":"1b0fbbae2218c53bec6a9121097f99322f15ae3c"},{"author":{"_account_id":11628,"name":"Michael Johnson","email":"johnsomor@gmail.com","username":"johnsom"},"change_message_id":"de9385375c18a7fc6b8fd7dab1bcd284661eb975","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"648a44ba_def0ddd1","updated":"2023-08-23 19:47:56.000000000","message":"recheck\nFix for the test job merged on openstack/octavia\nhttps://review.opendev.org/c/openstack/octavia/+/892550","commit_id":"b4c210ac58a6da0936c906d076fe71529e6d98f4"},{"author":{"_account_id":23567,"name":"Luis Tomas Bolivar","email":"ltomasbo@redhat.com","username":"ltomasbo"},"change_message_id":"b4fbf45196abc6ce47ddfa9702ed32fe5a109a34","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"71618fd9_1551856b","updated":"2023-08-25 05:52:12.000000000","message":"LGTM, it would be great if a warning message was also logged","commit_id":"2a84a218ef1f683d5584784b7d9607e7453b0729"},{"author":{"_account_id":34451,"name":"Fernando Royo","email":"froyo@redhat.com","username":"froyo"},"change_message_id":"90fd6293614db811bea51e22bc9015b12450c4cf","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"24ac6787_4c6164b7","updated":"2023-08-24 08:36:45.000000000","message":"LGTM, thx folks","commit_id":"2a84a218ef1f683d5584784b7d9607e7453b0729"}],"octavia_lib/api/drivers/driver_lib.py":[{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"1b9d0091de126d2942495dfc8cc4ebf6d229035a","unresolved":true,"context_lines":[{"line_number":63,"context_line":"        while char !\u003d b\u0027\\n\u0027:"},{"line_number":64,"context_line":"            try:"},{"line_number":65,"context_line":"                char \u003d sock.recv(1)"},{"line_number":66,"context_line":"            except Exception:"},{"line_number":67,"context_line":"                pass"},{"line_number":68,"context_line":"            else:"},{"line_number":69,"context_line":"                if char !\u003d b\u0027\\n\u0027:"}],"source_content_type":"text/x-python","patch_set":1,"id":"d65a68aa_f91a3cba","line":66,"range":{"start_line":66,"start_character":12,"end_line":66,"end_character":28},"updated":"2023-08-23 07:11:15.000000000","message":"maybe we should catch and ignore only socket-related exceptions (socket.timeout?) and re-raise or log all the other types of exceptions","commit_id":"1b0fbbae2218c53bec6a9121097f99322f15ae3c"},{"author":{"_account_id":29244,"name":"Gregory Thiemonge","email":"gthiemon@redhat.com","username":"gthiemonge"},"change_message_id":"1b9d0091de126d2942495dfc8cc4ebf6d229035a","unresolved":true,"context_lines":[{"line_number":73,"context_line":"                    fault_string\u003d(\u0027The driver agent did not respond in {} \u0027"},{"line_number":74,"context_line":"                                  \u0027seconds.\u0027.format(DRIVER_AGENT_TIMEOUT)))"},{"line_number":75,"context_line":"            # Give the CPU a break from polling"},{"line_number":76,"context_line":"            time.sleep(0.01)"},{"line_number":77,"context_line":"        payload_size \u003d int(size_str)"},{"line_number":78,"context_line":"        mv_buffer \u003d memoryview(bytearray(payload_size))"},{"line_number":79,"context_line":"        next_offset \u003d 0"}],"source_content_type":"text/x-python","patch_set":1,"id":"8c6f09af_b2b290f6","line":76,"range":{"start_line":76,"start_character":12,"end_line":76,"end_character":28},"updated":"2023-08-23 07:11:15.000000000","message":"question: is it really needed? socket is blocking, we could have a short sleep in the except handler, but now we are sleeping between 2 chars.","commit_id":"1b0fbbae2218c53bec6a9121097f99322f15ae3c"}]}
