)]}'
{"nodepool/driver/__init__.py":[{"author":{"_account_id":1,"name":"James E. Blair","email":"jim@acmegating.com","username":"corvus"},"change_message_id":"09fae1f1d98f5893967ad5957d0dbe1cd23d32f4","unresolved":false,"context_lines":[{"line_number":582,"context_line":"        invalid_types \u003d self._invalidNodeTypes()"},{"line_number":583,"context_line":""},{"line_number":584,"context_line":"        if not self.zk.getNodeRequest(self.request.id):"},{"line_number":585,"context_line":"            declined_reasons.append(\"node request disappeared\")"},{"line_number":586,"context_line":""},{"line_number":587,"context_line":"        if self.pool.max_servers \u003c\u003d 0:"},{"line_number":588,"context_line":"            declined_reasons.append(\u0027pool is disabled by max_servers\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"f96cfb2d_8a858277","line":585,"updated":"2023-08-31 18:57:01.000000000","message":"The protocol should not allow this to happen.  This method is called very often and the additional ZK traffic is not desirable.\n\nSomething like this needs a test reproduction and if there is a protocol problem, likely a different fix that doesn\u0027t involve zk operations here.","commit_id":"91f1dc01767c552116f6969e39e1abb5628b0239"},{"author":{"_account_id":33934,"name":"Joshua Watt","email":"JPEWhacker@gmail.com","username":"jpew"},"change_message_id":"2348b084afda02f341c21367fb092fcc260b7f50","unresolved":false,"context_lines":[{"line_number":582,"context_line":"        invalid_types \u003d self._invalidNodeTypes()"},{"line_number":583,"context_line":""},{"line_number":584,"context_line":"        if not self.zk.getNodeRequest(self.request.id):"},{"line_number":585,"context_line":"            declined_reasons.append(\"node request disappeared\")"},{"line_number":586,"context_line":""},{"line_number":587,"context_line":"        if self.pool.max_servers \u003c\u003d 0:"},{"line_number":588,"context_line":"            declined_reasons.append(\u0027pool is disabled by max_servers\u0027)"}],"source_content_type":"text/x-python","patch_set":1,"id":"b2d53fbf_f94d690f","line":585,"in_reply_to":"f96cfb2d_8a858277","updated":"2023-08-31 20:06:00.000000000","message":"Is there some other way to do it without invoking zookeeper? If you drop this patch and run the test in https://review.opendev.org/c/zuul/nodepool/+/891635 it will hang because the node becomes pending (but will never be fulfilled because of the test setup) and then request is deleted.\n\nIn practice I guess maybe a node would never be stuck in pending state forever.... but it seems like handling that might be a good idea anyway?\n\nAlternative, we drop this if there is a way to \"unstick\" the node in the test in the next patch, I couldn\u0027t figure out a way to do it.","commit_id":"91f1dc01767c552116f6969e39e1abb5628b0239"}]}
