)]}'
{"nova/virt/ironic/driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4b2bfb5e55c75d7ba635169f382a7aa2129065e1","unresolved":false,"context_lines":[{"line_number":2061,"context_line":"            self._can_send_version(min_version\u003d\u00271.38\u0027)"},{"line_number":2062,"context_line":"            self.ironicclient.call(\"node.set_provision_state\","},{"line_number":2063,"context_line":"                                   node_uuid, ironic_states.UNRESCUE)"},{"line_number":2064,"context_line":"        except exception.IronicAPIVersionNotAvailable as e:"},{"line_number":2065,"context_line":"            LOG.error(\u0027Required Ironic API version %(version)s is not \u0027"},{"line_number":2066,"context_line":"                       \u0027available for unrescuing.\u0027,"},{"line_number":2067,"context_line":"                       version\u003d\u00271.38\u0027, instance\u003dinstance)"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_6b7f38bc","line":2064,"updated":"2018-07-13 15:49:26.000000000","message":"This arguably shouldn\u0027t happen if we were able to rescue the instance and you can\u0027t unrescue an instance that\u0027s not rescued, but it doesn\u0027t hurt to have this.","commit_id":"1db9f80a291ff37144912036f6a8b04c31cd6723"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8c02d9f653e872a651cb7eb65f6d01614cca233d","unresolved":false,"context_lines":[{"line_number":2063,"context_line":"                                   node_uuid, ironic_states.UNRESCUE)"},{"line_number":2064,"context_line":"        except exception.IronicAPIVersionNotAvailable as e:"},{"line_number":2065,"context_line":"            LOG.error(\u0027Required Ironic API version %(version)s is not \u0027"},{"line_number":2066,"context_line":"                       \u0027available for unrescuing.\u0027,"},{"line_number":2067,"context_line":"                       version\u003d\u00271.38\u0027, instance\u003dinstance)"},{"line_number":2068,"context_line":"            raise exception.InstanceUnRescueFailure(reason\u003dsix.text_type(e))"},{"line_number":2069,"context_line":"        except Exception as e:"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_9fdbf64c","line":2066,"updated":"2018-07-13 20:56:18.000000000","message":"We may want to indicate that this may be a result of either ironic not being upgraded yet, or that the nova-compute has not been restated since ironic was upgraded.","commit_id":"1db9f80a291ff37144912036f6a8b04c31cd6723"},{"author":{"_account_id":11655,"name":"Julia Kreger","email":"juliaashleykreger@gmail.com","username":"jkreger","status":"Flying to the moon with a Jetpack!"},"change_message_id":"8c02d9f653e872a651cb7eb65f6d01614cca233d","unresolved":false,"context_lines":[{"line_number":2067,"context_line":"                       version\u003d\u00271.38\u0027, instance\u003dinstance)"},{"line_number":2068,"context_line":"            raise exception.InstanceUnRescueFailure(reason\u003dsix.text_type(e))"},{"line_number":2069,"context_line":"        except Exception as e:"},{"line_number":2070,"context_line":"            raise exception.InstanceUnRescueFailure(reason\u003dsix.text_type(e))"},{"line_number":2071,"context_line":""},{"line_number":2072,"context_line":"        timer \u003d loopingcall.FixedIntervalLoopingCall(_wait_for_unrescue)"},{"line_number":2073,"context_line":"        timer.start(interval\u003dCONF.ironic.api_retry_interval).wait()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_ff99ca79","line":2070,"updated":"2018-07-13 20:56:18.000000000","message":"As an aside thought, I thought up an edge case that would fall in here is that the client could raise an exception if there is a mix of API endpoints offering different maximum versions, and the client suddenly found an older API endpoint. It might be useful to explicitly capture that exception and log that as something like \"An older API endpoint was encountered, please verify ironic API endpoints have been fully upgraded and restart nova-compute.\"","commit_id":"1db9f80a291ff37144912036f6a8b04c31cd6723"}]}
