)]}'
{"specs/newton/approved/newton-instance-ha-vm-recovery-spec.rst":[{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The purpose of this spec is to describe a method to recover"},{"line_number":12,"context_line":"individual virtual machines that are marked as failed by"},{"line_number":13,"context_line":"the VM monitoring method."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Problem description"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_3295d5dd","line":13,"range":{"start_line":13,"start_character":18,"end_line":13,"end_character":24},"updated":"2016-12-14 13:55:56.000000000","message":"I\u0027d rather call it a \u0027component\u0027 or \u0027agent\u0027 than a \u0027method\u0027.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"The purpose of this spec is to describe a method to recover"},{"line_number":12,"context_line":"individual virtual machines that are marked as failed by"},{"line_number":13,"context_line":"the VM monitoring method."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"Problem description"},{"line_number":16,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_0c00ab00","line":13,"range":{"start_line":13,"start_character":18,"end_line":13,"end_character":24},"in_reply_to":"1a6eadb0_3295d5dd","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"__ https://review.openstack.org/#/c/352217/"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_f2b19d90","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":30},"updated":"2016-12-14 13:55:56.000000000","message":"\u0027is detected\u0027 or \u0027got detected\u0027","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"__ https://review.openstack.org/#/c/352217/"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_2c056710","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":30},"in_reply_to":"1a6eadb0_f2b19d90","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"__ https://review.openstack.org/#/c/352217/"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."},{"line_number":26,"context_line":"This spec is to describe what are the appropriate"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_32315506","line":23,"range":{"start_line":22,"start_character":32,"end_line":23,"end_character":24},"updated":"2016-12-14 13:55:56.000000000","message":"it would be better to change it to \u0027appropriate recovery action must be taken\u0027","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":19,"context_line":""},{"line_number":20,"context_line":"__ https://review.openstack.org/#/c/352217/"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."},{"line_number":26,"context_line":"This spec is to describe what are the appropriate"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_4c06231d","line":23,"range":{"start_line":22,"start_character":32,"end_line":23,"end_character":24},"in_reply_to":"1a6eadb0_32315506","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."},{"line_number":26,"context_line":"This spec is to describe what are the appropriate"},{"line_number":27,"context_line":"actions to take for each cause of failures."},{"line_number":28,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_6d2770b6","line":25,"range":{"start_line":25,"start_character":8,"end_line":25,"end_character":11},"updated":"2016-12-14 13:55:56.000000000","message":"This can be removed","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":22,"context_line":"When VM failure event detected, must take the appropriate recovery"},{"line_number":23,"context_line":"action to recover the VM. Those recovery actions are selected upon"},{"line_number":24,"context_line":"the shared disk state, status of the VM,  and cause of the VM"},{"line_number":25,"context_line":"failure and .etc.. These recovery actions should be configurable."},{"line_number":26,"context_line":"This spec is to describe what are the appropriate"},{"line_number":27,"context_line":"actions to take for each cause of failures."},{"line_number":28,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_6c0bdf24","line":25,"range":{"start_line":25,"start_character":8,"end_line":25,"end_character":11},"in_reply_to":"1a6eadb0_6d2770b6","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"- VM restart on different host"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"- Migrate VM (Live/Cold)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If a VM crashes, first approach to recovery is stop and start the"},{"line_number":52,"context_line":"VM from nova-api."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_2de9f814","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":24},"updated":"2016-12-14 13:55:56.000000000","message":"Can we perform any migrations in case of VM crash/hang event?","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"- VM restart on different host"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"- Migrate VM (Live/Cold)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If a VM crashes, first approach to recovery is stop and start the"},{"line_number":52,"context_line":"VM from nova-api."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_2f2d5446","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":24},"in_reply_to":"1a6eadb0_2de9f814","updated":"2016-12-21 08:25:11.000000000","message":"IMHO, if VM hang or crash because of problem with libvert, then there is a high possibility that you gonna fail to live migrate the VMs. On the other hand, VM stop and cold migration would be much safer.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"86b86db70c9379e9d3e67526378b5832ba0569e7","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"- VM restart on different host"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"- Migrate VM (Live/Cold)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If a VM crashes, first approach to recovery is stop and start the"},{"line_number":52,"context_line":"VM from nova-api."}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_916dd69a","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":24},"in_reply_to":"1a6eadb0_2f2d5446","updated":"2017-01-03 11:56:35.000000000","message":"That\u0027s exactly what I meant - in the event of Virtual Machine failed we cannot migrate the machine, so this option should be deleted.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":56,"context_line":"on a different host."},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"If a VM Hangs due to I/O error, the recovery service should disable"},{"line_number":60,"context_line":"the ``nova-compute`` service on that host and restart the VM on a"},{"line_number":61,"context_line":"different host. It could also migrate other VMs from the host, in"},{"line_number":62,"context_line":"order to pre-empt an further I/O errors."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_cd5c04f0","line":60,"range":{"start_line":59,"start_character":0,"end_line":60,"end_character":41},"updated":"2016-12-14 13:55:56.000000000","message":"Why we want to disable the nova-compute service? IMO that should be left up to operator of given cloud.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"86b86db70c9379e9d3e67526378b5832ba0569e7","unresolved":false,"context_lines":[{"line_number":56,"context_line":"on a different host."},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"If a VM Hangs due to I/O error, the recovery service should disable"},{"line_number":60,"context_line":"the ``nova-compute`` service on that host and restart the VM on a"},{"line_number":61,"context_line":"different host. It could also migrate other VMs from the host, in"},{"line_number":62,"context_line":"order to pre-empt an further I/O errors."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_51fa8ebe","line":60,"range":{"start_line":59,"start_character":0,"end_line":60,"end_character":41},"in_reply_to":"1a6eadb0_0f189874","updated":"2017-01-03 11:56:35.000000000","message":"I agree, but this decision should be left for the operator. Therefore we should not make any assumptions about disabling, or not, the nova-compute service in this spec.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":56,"context_line":"on a different host."},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"If a VM Hangs due to I/O error, the recovery service should disable"},{"line_number":60,"context_line":"the ``nova-compute`` service on that host and restart the VM on a"},{"line_number":61,"context_line":"different host. It could also migrate other VMs from the host, in"},{"line_number":62,"context_line":"order to pre-empt an further I/O errors."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_0f189874","line":60,"range":{"start_line":59,"start_character":0,"end_line":60,"end_character":41},"in_reply_to":"1a6eadb0_cd5c04f0","updated":"2016-12-21 08:25:11.000000000","message":"IMHO, its better not assign new VMs to this host till further investigation about what went wrong. I prefer first disable nova-compute before take any recovery actions.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"b8b1464a88aef16851846ebaeaac0bbe2ecf0661","unresolved":false,"context_lines":[{"line_number":56,"context_line":"on a different host."},{"line_number":57,"context_line":""},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"If a VM Hangs due to I/O error, the recovery service should disable"},{"line_number":60,"context_line":"the ``nova-compute`` service on that host and restart the VM on a"},{"line_number":61,"context_line":"different host. It could also migrate other VMs from the host, in"},{"line_number":62,"context_line":"order to pre-empt an further I/O errors."},{"line_number":63,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"ba5201f7_461c7913","line":60,"range":{"start_line":59,"start_character":0,"end_line":60,"end_character":41},"in_reply_to":"ba5201f7_51fa8ebe","updated":"2017-01-04 02:18:12.000000000","message":"In general I agree that recovery actions should be configurable by policy.  But in this case I am struggling to think of any scenario where we would not want to do nova service-disable.  Can you think of one?","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":81,"context_line":"   VM monitors send the failure events to Masakari using Masakari"},{"line_number":82,"context_line":"   notification API. Masakari will execute pre defined recovery actions."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"2. User Mistral as recovery workflow service"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_4d1714ed","line":84,"range":{"start_line":84,"start_character":3,"end_line":84,"end_character":7},"updated":"2016-12-14 13:55:56.000000000","message":"Use","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":81,"context_line":"   VM monitors send the failure events to Masakari using Masakari"},{"line_number":82,"context_line":"   notification API. Masakari will execute pre defined recovery actions."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"2. User Mistral as recovery workflow service"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_0f2fb888","line":84,"range":{"start_line":84,"start_character":3,"end_line":84,"end_character":7},"in_reply_to":"1a6eadb0_4d1714ed","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"2. User Mistral as recovery workflow service"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"3. User Masakari as recovery engine and Mistral as workflow service"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_0d927c57","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":20},"updated":"2016-12-14 13:55:56.000000000","message":"I\u0027d like this solution best, since mistral workflow can be easily configure to meet the requirements of any cloud operator. But I also see advantages of using option #3.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":83,"context_line":""},{"line_number":84,"context_line":"2. User Mistral as recovery workflow service"},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"3. User Masakari as recovery engine and Mistral as workflow service"},{"line_number":90,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_6f54acfd","line":87,"range":{"start_line":86,"start_character":0,"end_line":87,"end_character":20},"in_reply_to":"1a6eadb0_0d927c57","updated":"2016-12-21 08:25:11.000000000","message":"I prefer option #3, because operator can control overall recovery workflows via masakari (not only the VM recovery, but also the host and process recovery and any other recovery might appear in future..). This way we can make mistral work flows and monitors much simple.","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"0d137bb4ff09194969352245f645d07f07d91315","unresolved":false,"context_lines":[{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"3. User Masakari as recovery engine and Mistral as workflow service"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"   VM monitors send the failure events to Masakari and Masakari will"},{"line_number":92,"context_line":"   analyze the content of the failure event message and call Mistral"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_6dd4d01f","line":89,"range":{"start_line":89,"start_character":3,"end_line":89,"end_character":7},"updated":"2016-12-14 13:55:56.000000000","message":"Use","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":8716,"name":"Sampath Priyankara","email":"sam47priya@gmail.com","username":"sampath"},"change_message_id":"f3f94480f50deb875c964f99f81a4e897389981f","unresolved":false,"context_lines":[{"line_number":86,"context_line":"   VM monitors call the Mistral workflow to execute execute appropriate"},{"line_number":87,"context_line":"   recovery actions."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"3. User Masakari as recovery engine and Mistral as workflow service"},{"line_number":90,"context_line":""},{"line_number":91,"context_line":"   VM monitors send the failure events to Masakari and Masakari will"},{"line_number":92,"context_line":"   analyze the content of the failure event message and call Mistral"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a6eadb0_af42443c","line":89,"range":{"start_line":89,"start_character":3,"end_line":89,"end_character":7},"in_reply_to":"1a6eadb0_6dd4d01f","updated":"2016-12-21 08:25:11.000000000","message":"Done","commit_id":"35195b4de0890ebf7fdeb9ef10749556eceddf3f"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"f5cee5bdd236debeeacb2294f678ea03c9c9b9c9","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"- VM restart on different host"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"- Migrate VM (Live/Cold)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If a VM crashes, first approach to recovery is stop and start the"},{"line_number":52,"context_line":"VM from nova-api."}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5201f7_666dfd97","line":49,"updated":"2017-01-04 02:18:03.000000000","message":"As Dawid pointed out, this is not a recovery method and is outside the scope of this spec, so it should be deleted.","commit_id":"a96f101677ae0379f20faf98f3a4902b3c502e08"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"199c182aa2e740fa86a88867529ec53be26a43b9","unresolved":false,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"- VM restart on different host"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"- Migrate VM (Live/Cold)"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"If a VM crashes, first approach to recovery is stop and start the"},{"line_number":52,"context_line":"VM from nova-api."}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a461143_6a6b6d1e","line":49,"in_reply_to":"ba5201f7_666dfd97","updated":"2017-02-01 01:37:08.000000000","message":"Done","commit_id":"a96f101677ae0379f20faf98f3a4902b3c502e08"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"f5cee5bdd236debeeacb2294f678ea03c9c9b9c9","unresolved":false,"context_lines":[{"line_number":74,"context_line":"Alternatives"},{"line_number":75,"context_line":"------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"There are three alternatives to the proposed change:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"1. Use Masakari as recovery workflow service"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"ba5201f7_a62b65ea","line":77,"range":{"start_line":77,"start_character":0,"end_line":77,"end_character":52},"updated":"2017-01-04 02:18:03.000000000","message":"Are these really alternatives?  To me it sounds like they all satisfy the description of the proposed change above, i.e. they are valid ways of implementing the proposed change, not fundamentally different approaches to solving the problem.  Maybe I am misunderstanding?","commit_id":"a96f101677ae0379f20faf98f3a4902b3c502e08"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"199c182aa2e740fa86a88867529ec53be26a43b9","unresolved":false,"context_lines":[{"line_number":74,"context_line":"Alternatives"},{"line_number":75,"context_line":"------------"},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"There are three alternatives to the proposed change:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"1. Use Masakari as recovery workflow service"},{"line_number":80,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3a461143_8a76d903","line":77,"range":{"start_line":77,"start_character":0,"end_line":77,"end_character":52},"in_reply_to":"ba5201f7_a62b65ea","updated":"2017-02-01 01:37:08.000000000","message":"Done","commit_id":"a96f101677ae0379f20faf98f3a4902b3c502e08"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"d6ef9958cb540dd62bcc22b57320943f8264d0a4","unresolved":false,"context_lines":[{"line_number":73,"context_line":"Proposed change"},{"line_number":74,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"VM monitors send failure events to a recovery workflow service.  This"},{"line_number":77,"context_line":"workflow service can analyze the content of the failure event message"},{"line_number":78,"context_line":"and execute the appropriate recovery action. This workflow service"},{"line_number":79,"context_line":"could also handle the advanced recovery options such as maximum"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a461143_221dcc0f","line":76,"range":{"start_line":76,"start_character":63,"end_line":76,"end_character":65},"updated":"2017-02-02 14:03:45.000000000","message":"Double space","commit_id":"c7eb1f458d30ce63e89b86c43dbf2a31c4c29b3c"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"ea93d081b974a50d1a63b369539ff53a7f0b8b02","unresolved":false,"context_lines":[{"line_number":73,"context_line":"Proposed change"},{"line_number":74,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"VM monitors send failure events to a recovery workflow service.  This"},{"line_number":77,"context_line":"workflow service can analyze the content of the failure event message"},{"line_number":78,"context_line":"and execute the appropriate recovery action. This workflow service"},{"line_number":79,"context_line":"could also handle the advanced recovery options such as maximum"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a430d35_b823fe54","line":76,"range":{"start_line":76,"start_character":63,"end_line":76,"end_character":65},"in_reply_to":"3a461143_221dcc0f","updated":"2017-02-08 20:46:56.000000000","message":"As discussed this morning, this was deliberate; it\u0027s a nice convention from TeX, which makes sentence breaks visually clearer, and also helps editors support navigation forwards/backwards by sentence.  However I admit it\u0027s not consistent with the rest of the spec.","commit_id":"c7eb1f458d30ce63e89b86c43dbf2a31c4c29b3c"},{"author":{"_account_id":19206,"name":"Dawid Deja","email":"dawdej@gmail.com","username":"ddeja"},"change_message_id":"d6ef9958cb540dd62bcc22b57320943f8264d0a4","unresolved":false,"context_lines":[{"line_number":80,"context_line":"restart threshold, execute next recovery action or execute multiple"},{"line_number":81,"context_line":"workflows."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"If a VM crashes, the first approach to recovery is stop and start the"},{"line_number":84,"context_line":"VM from nova-api.  The maximum restart threshold should be"},{"line_number":85,"context_line":"configurable, and it could be 0, which means do not restart and go to"},{"line_number":86,"context_line":"next recovery method.  If restart fails, or threshold is 0, it should"},{"line_number":87,"context_line":"try to restart the VM on a different host."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"If a VM hangs due to an I/O error, the recovery service may be"},{"line_number":90,"context_line":"required to automatically disable the ``nova-compute`` service on that"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3a461143_c2b32809","line":87,"range":{"start_line":83,"start_character":0,"end_line":87,"end_character":42},"updated":"2017-02-02 14:03:45.000000000","message":"Do we also wants a threshold \u003d -1, meaning try forever? I\u0027m not sure if anyone would ever want such behavior, but maybe it can be useful in some cases?","commit_id":"c7eb1f458d30ce63e89b86c43dbf2a31c4c29b3c"},{"author":{"_account_id":2394,"name":"Adam Spiers","email":"aspiers@suse.com","username":"adam.spiers"},"change_message_id":"ea93d081b974a50d1a63b369539ff53a7f0b8b02","unresolved":false,"context_lines":[{"line_number":80,"context_line":"restart threshold, execute next recovery action or execute multiple"},{"line_number":81,"context_line":"workflows."},{"line_number":82,"context_line":""},{"line_number":83,"context_line":"If a VM crashes, the first approach to recovery is stop and start the"},{"line_number":84,"context_line":"VM from nova-api.  The maximum restart threshold should be"},{"line_number":85,"context_line":"configurable, and it could be 0, which means do not restart and go to"},{"line_number":86,"context_line":"next recovery method.  If restart fails, or threshold is 0, it should"},{"line_number":87,"context_line":"try to restart the VM on a different host."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"If a VM hangs due to an I/O error, the recovery service may be"},{"line_number":90,"context_line":"required to automatically disable the ``nova-compute`` service on that"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a430d35_780ef6e5","line":87,"range":{"start_line":83,"start_character":0,"end_line":87,"end_character":42},"in_reply_to":"3a461143_c2b32809","updated":"2017-02-08 20:46:56.000000000","message":"Hmm.  Maybe if the hosts are configured without shared storage for /var/lib/nova/instances then the operator might want to avoid restarting on another host, since that would rebuild the ephemeral disk from scratch, from the glance image, and that might not be acceptable in some cases.  I\u0027m not sure if that makes sense but it seems possible someone might want it to behave like that.  So I\u0027ll add it.","commit_id":"c7eb1f458d30ce63e89b86c43dbf2a31c4c29b3c"}]}
