)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6167,"name":"Ken\u0027ichi Ohmichi","email":"ken1ohmichi@gmail.com","username":"oomichi"},"change_message_id":"dc70ead68e1a6b0265d55af80ae39fce483833e7","unresolved":false,"context_lines":[{"line_number":19,"context_line":"* The \u0027host\u0027 parameter in API is optional."},{"line_number":20,"context_line":"  (Based on a comment in Iee356c4dd097c846b6ca8617ead6a061300c83f8)"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Previously-approved: pike"},{"line_number":23,"context_line":"APIImpact"},{"line_number":24,"context_line":"Change-Id: I0fac0761aca74bcd02b20456ac6eff881dd63bcf"},{"line_number":25,"context_line":"blueprint cold-migration-with-target-queens"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df3967d1_991d3f68","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":25},"updated":"2017-08-02 01:43:03.000000000","message":"unfortunately this is\n\n Previously-approved: ocata, pike\n\n..","commit_id":"0c01ee9e0119e31ea058d61fc76f268ce107ffa3"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"d1ec1cbbc6b42c5ba43b924683ebb19eca605498","unresolved":false,"context_lines":[{"line_number":19,"context_line":"* The \u0027host\u0027 parameter in API is optional."},{"line_number":20,"context_line":"  (Based on a comment in Iee356c4dd097c846b6ca8617ead6a061300c83f8)"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"Previously-approved: pike"},{"line_number":23,"context_line":"APIImpact"},{"line_number":24,"context_line":"Change-Id: I0fac0761aca74bcd02b20456ac6eff881dd63bcf"},{"line_number":25,"context_line":"blueprint cold-migration-with-target-queens"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"df3967d1_c052563b","line":22,"range":{"start_line":22,"start_character":21,"end_line":22,"end_character":25},"in_reply_to":"df3967d1_991d3f68","updated":"2017-08-04 05:26:45.000000000","message":"Done","commit_id":"0c01ee9e0119e31ea058d61fc76f268ce107ffa3"}],"specs/queens/approved/cold-migration-with-target-queens.rst":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"488d247572b37d0a0aeb4e67a999c53d080091c8","unresolved":false,"context_lines":[{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"A target host can be specified on the live migration operation."},{"line_number":20,"context_line":"And there is a scheduler rule check and \u0027force\u0027 flag in REST API"},{"line_number":21,"context_line":"when a target host is specified on the live migration operation."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"But a target host cannot be specified on the cold migration operation."},{"line_number":24,"context_line":"It is inconsistent with the live migration operation,"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7f287b81_5a2d14a6","line":21,"range":{"start_line":20,"start_character":0,"end_line":21,"end_character":64},"updated":"2017-08-30 14:48:59.000000000","message":"This is also true of the evacuate server action API.","commit_id":"a20dfbac1e77cec5a590c8b4fe463dce47aff870"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"488d247572b37d0a0aeb4e67a999c53d080091c8","unresolved":false,"context_lines":[{"line_number":46,"context_line":"object in nova/compute/api.py. The field has already been supported"},{"line_number":47,"context_line":"in the scheduler, so it just needs to be filled in."},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"This blueprint also provides a way for operators to bypass the scheduler,"},{"line_number":50,"context_line":"we will make the API for cold migration, including a destination host,"},{"line_number":51,"context_line":"by adding an request body argument called \u0027force\u0027"},{"line_number":52,"context_line":"(accepting True or False, defaulted to False) and"},{"line_number":53,"context_line":"the corresponding CLI methods will expose that force option."},{"line_number":54,"context_line":"If the microversion asked by the client is older than the version"},{"line_number":55,"context_line":"providing the field, then it won\u0027t be passed"},{"line_number":56,"context_line":"(neither True or False, rather the key won\u0027t exist)"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7f287b81_b57f6964","line":53,"range":{"start_line":49,"start_character":0,"end_line":53,"end_character":60},"updated":"2017-08-30 14:48:59.000000000","message":"I think we want to reconsider adding the force option for the cold migrate API.\n\nSince Pike, the FilterScheduler now creates allocations against the destination node during a move operation. We have found a few bugs after that change landed where, because of the force option, since we bypassed the scheduler we weren\u0027t creating allocations for the destination node.\n\nI\u0027ve fixed that for the live migration task in conductor, but it\u0027s still an open bug for evacuate, and would be something that we\u0027d also have to handle for cold migrate/resize. Furthermore, it\u0027s going to get more complicated when we support shared resource providers, like shared storage pools, and things like nested resource providers. I\u0027d rather that we don\u0027t have to duplicate special allocation creation code all over conductor and the scheduler because of the force flag.\n\nAlso, with live migration, even if you specify force, the LiveMigrationTask is doing some checks on the destination node which are basically the same as the ComputeFilter and RamFilter. That\u0027s also related to bug 1427772.\n\nI think I\u0027ll bring this up in the ML but I don\u0027t really think the force option in the live migration and evacuate APIs was ever a good idea and I\u0027d like to avoid introducing it again here for cold migrate/resize. Specifying a host is fine, but it should be validated by Placement/scheduler filters first, IMO.","commit_id":"a20dfbac1e77cec5a590c8b4fe463dce47aff870"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0a2e0f948bcab0c7a0dc0f4960d15922204d3094","unresolved":false,"context_lines":[{"line_number":46,"context_line":"object in nova/compute/api.py. The field has already been supported"},{"line_number":47,"context_line":"in the scheduler, so it just needs to be filled in."},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"This blueprint also provides a way for operators to bypass the scheduler,"},{"line_number":50,"context_line":"we will make the API for cold migration, including a destination host,"},{"line_number":51,"context_line":"by adding an request body argument called \u0027force\u0027"},{"line_number":52,"context_line":"(accepting True or False, defaulted to False) and"},{"line_number":53,"context_line":"the corresponding CLI methods will expose that force option."},{"line_number":54,"context_line":"If the microversion asked by the client is older than the version"},{"line_number":55,"context_line":"providing the field, then it won\u0027t be passed"},{"line_number":56,"context_line":"(neither True or False, rather the key won\u0027t exist)"}],"source_content_type":"text/x-rst","patch_set":3,"id":"7f287b81_75afc129","line":53,"range":{"start_line":49,"start_character":0,"end_line":53,"end_character":60},"in_reply_to":"7f287b81_b57f6964","updated":"2017-08-30 15:10:43.000000000","message":"http://lists.openstack.org/pipermail/openstack-dev/2017-August/121654.html","commit_id":"a20dfbac1e77cec5a590c8b4fe463dce47aff870"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"c295db4b778ed78532b9efb4143634ae376460a8","unresolved":false,"context_lines":[{"line_number":119,"context_line":"* Add processing checking destination host in the cold migration"},{"line_number":120,"context_line":"* Add API with bumping a new microversion"},{"line_number":121,"context_line":"* Add nova functional tests"},{"line_number":122,"context_line":"* Add tempest tests"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"Dependencies"},{"line_number":125,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"7f287b81_e8b43338","line":122,"updated":"2017-09-07 15:19:16.000000000","message":"just a remind that since cold migrate share the same logic than resize(), we have reschedules by the compute service that will call again the conductor. So, you should maybe force the fact that retries are disabled by the conductor in case requested_destination is set even if the conf option retry value is not 0. That looks an important work item to not miss.","commit_id":"d7c801dcf58056f210e0dd444671542569c2e89b"},{"author":{"_account_id":7634,"name":"Takashi Natsume","email":"takanattie@gmail.com","username":"natsumet"},"change_message_id":"a764b91996b8d568fe1967294d2e3552f171e8ed","unresolved":false,"context_lines":[{"line_number":119,"context_line":"* Add processing checking destination host in the cold migration"},{"line_number":120,"context_line":"* Add API with bumping a new microversion"},{"line_number":121,"context_line":"* Add nova functional tests"},{"line_number":122,"context_line":"* Add tempest tests"},{"line_number":123,"context_line":""},{"line_number":124,"context_line":"Dependencies"},{"line_number":125,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":4,"id":"7f287b81_cee0549a","line":122,"in_reply_to":"7f287b81_e8b43338","updated":"2017-09-08 00:50:18.000000000","message":"Done","commit_id":"d7c801dcf58056f210e0dd444671542569c2e89b"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"716aacf3bab1e17384703f0b32fb5471dd7693f1","unresolved":false,"context_lines":[{"line_number":40,"context_line":"in accordance with scheduler rules or not in cold migration"},{"line_number":41,"context_line":"as a default behaviour."},{"line_number":42,"context_line":"Specifically to say, add setting \u0027requested_destination\u0027 of the RequestSpec"},{"line_number":43,"context_line":"object in nova/compute/api.py. The field has already been supported"},{"line_number":44,"context_line":"in the scheduler, so it just needs to be filled in."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5f2577a7_e2972290","line":43,"range":{"start_line":43,"start_character":7,"end_line":43,"end_character":29},"updated":"2017-09-11 22:48:17.000000000","message":"I know that point is subject to discussions since it can be hard for people reviewing to understand the logic but I feel that\u0027s an implementation detail which shouldn\u0027t block approving the spec.","commit_id":"460d1c3d24059d459ee398a16a3a0c57dceacfe4"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"716aacf3bab1e17384703f0b32fb5471dd7693f1","unresolved":false,"context_lines":[{"line_number":117,"context_line":""},{"line_number":118,"context_line":"* Add logic to specify target host for cold migration"},{"line_number":119,"context_line":"* Add processing checking destination host in the cold migration"},{"line_number":120,"context_line":"* Disable retries of the scheduling when the traget host is specified"},{"line_number":121,"context_line":"* Add API with bumping a new microversion"},{"line_number":122,"context_line":"* Add nova functional tests"},{"line_number":123,"context_line":"* Add tempest tests"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5f2577a7_c26666ee","line":120,"range":{"start_line":120,"start_character":45,"end_line":120,"end_character":51},"updated":"2017-09-11 22:48:17.000000000","message":"nit: target","commit_id":"460d1c3d24059d459ee398a16a3a0c57dceacfe4"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"716aacf3bab1e17384703f0b32fb5471dd7693f1","unresolved":false,"context_lines":[{"line_number":121,"context_line":"* Add API with bumping a new microversion"},{"line_number":122,"context_line":"* Add nova functional tests"},{"line_number":123,"context_line":"* Add tempest tests"},{"line_number":124,"context_line":""},{"line_number":125,"context_line":"Dependencies"},{"line_number":126,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":127,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"5f2577a7_82605ed0","line":124,"updated":"2017-09-11 22:48:17.000000000","message":"nit: I know you mentioned novaclient above but meh, could be a work item too ;)","commit_id":"460d1c3d24059d459ee398a16a3a0c57dceacfe4"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"0b1bc8cd71af7f296a8976183bbb50a45add64e2","unresolved":false,"context_lines":[{"line_number":147,"context_line":"References"},{"line_number":148,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"* enable cold migration with target host"},{"line_number":151,"context_line":""},{"line_number":152,"context_line":"  - https://blueprints.launchpad.net/nova/+spec/cold-migration-with-target"},{"line_number":153,"context_line":""},{"line_number":154,"context_line":"History"},{"line_number":155,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"5f2577a7_cb24e4b1","line":152,"range":{"start_line":150,"start_character":0,"end_line":152,"end_character":74},"updated":"2017-09-14 20:35:19.000000000","message":"We don\u0027t really need this.\n\n--\n\nWe could link to http://lists.openstack.org/pipermail/openstack-dev/2017-August/121654.html about the \u0027force\u0027 flag for cold migrate.","commit_id":"460d1c3d24059d459ee398a16a3a0c57dceacfe4"}]}
