)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":28088,"name":"Benedikt Löffler","email":"benedikt.loeffler@bmw.de","username":"bloeffler"},"change_message_id":"feff638033dcf6afb1880b4917977316d2f37825","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"11d4de81_98012251","updated":"2024-09-16 07:45:32.000000000","message":"recheck","commit_id":"78f9393e44261c7a886e8c268b7328e32f532f32"},{"author":{"_account_id":28088,"name":"Benedikt Löffler","email":"benedikt.loeffler@bmw.de","username":"bloeffler"},"change_message_id":"2952d537e4ba440fca275191206bc52e9546c4ca","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b775effd_558064e3","updated":"2024-09-19 14:59:52.000000000","message":"recheck","commit_id":"78f9393e44261c7a886e8c268b7328e32f532f32"},{"author":{"_account_id":28088,"name":"Benedikt Löffler","email":"benedikt.loeffler@bmw.de","username":"bloeffler"},"change_message_id":"6d7f680bb2f67e0ec9f8958e32748bbee59e884b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"b8cda0ba_907977a1","updated":"2024-09-13 11:56:55.000000000","message":"recheck","commit_id":"78f9393e44261c7a886e8c268b7328e32f532f32"},{"author":{"_account_id":28088,"name":"Benedikt Löffler","email":"benedikt.loeffler@bmw.de","username":"bloeffler"},"change_message_id":"058678ed4177438bea2c80e1972816b9cb67bb4a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"d4009424_00b023f5","updated":"2024-09-12 11:10:33.000000000","message":"recheck","commit_id":"78f9393e44261c7a886e8c268b7328e32f532f32"}],"nodepool/driver/aws/adapter.py":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"ada4c5810729108cc1d1609d2707a2b6e6809f3b","unresolved":true,"context_lines":[{"line_number":1833,"context_line":""},{"line_number":1834,"context_line":"            instance_id \u003d resp[\u0027Instances\u0027][0][\u0027InstanceIds\u0027][0]"},{"line_number":1835,"context_line":""},{"line_number":1836,"context_line":"            # We have the ID, but the instance may not be ready yet"},{"line_number":1837,"context_line":"            backoff_time \u003d 1"},{"line_number":1838,"context_line":"            while backoff_time \u003c 300:"},{"line_number":1839,"context_line":"                try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"0ec79e61_6d9e2421","line":1836,"updated":"2024-09-11 19:55:46.000000000","message":"This method is intended to be very fast; it runs in a threadpool executor with limited resources, so if we sleep at all, we will consume one of those slots and reduce the overall throughput for node creation.\n\nLet\u0027s take a different approach:\n\nInstead of returning an instance object here, return a synthetic instance object, like:\n\n  return {\u0027InstanceId\u0027: instance_id}\n\nThe state machine will automatically refresh that until it receives a real instance object with a state attribute.\n\nThat means this method will return even more quickly than it does now, resulting in better overall throughput.\n\n(Another implication is that the earliest state update that can happen will be after the next periodic instance list.  That means that in the exceptionally unlikely case that the instance becomes \"running\" instantaneously, we will wait an extra 0-10 seconds before we recognize that.  In practice, instances are never instantaneously available, so this will have no effect, so we can disregard that.)","commit_id":"8252e981e4adacb6c420d51610e61573e61a6f1b"},{"author":{"_account_id":28088,"name":"Benedikt Löffler","email":"benedikt.loeffler@bmw.de","username":"bloeffler"},"change_message_id":"5ff996948cd9a5b7f4d211d3e11f7b3d3057c01a","unresolved":false,"context_lines":[{"line_number":1833,"context_line":""},{"line_number":1834,"context_line":"            instance_id \u003d resp[\u0027Instances\u0027][0][\u0027InstanceIds\u0027][0]"},{"line_number":1835,"context_line":""},{"line_number":1836,"context_line":"            # We have the ID, but the instance may not be ready yet"},{"line_number":1837,"context_line":"            backoff_time \u003d 1"},{"line_number":1838,"context_line":"            while backoff_time \u003c 300:"},{"line_number":1839,"context_line":"                try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"4b39fed5_538ba41c","line":1836,"in_reply_to":"0ec79e61_6d9e2421","updated":"2024-09-12 11:10:54.000000000","message":"Done","commit_id":"8252e981e4adacb6c420d51610e61573e61a6f1b"},{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"51d3a77b917b09bd486226c105e10c66c9b9731b","unresolved":true,"context_lines":[{"line_number":1838,"context_line":"                    error \u003d resp[\u0027Errors\u0027][0]"},{"line_number":1839,"context_line":"                    raise Exception(\"Couldn\u0027t create fleet instance because \""},{"line_number":1840,"context_line":"                                    \"of %s: %s\", error[\"ErrorCode\"],"},{"line_number":1841,"context_line":"                                    error[\"ErrorMessage\"])"},{"line_number":1842,"context_line":"                raise Exception(\"Couldn\u0027t create fleet instance because \""},{"line_number":1843,"context_line":"                                \"empty instance list was returned\")"},{"line_number":1844,"context_line":""}],"source_content_type":"text/x-python","patch_set":3,"id":"70d3f861_15cf4988","line":1841,"updated":"2024-09-30 16:04:01.000000000","message":"Given the complexity of this, it might be nice to add test coverage that mocks the result and returns an error.  But even if there is a bug, the result here will be the same, so we can probably live without it for now.","commit_id":"2edaec0d5f5cd057388316892d35ebb10b16c133"}]}
