)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"2b0b228e5d7385efa9a3b6ffb9b4d69db6371c97","unresolved":false,"context_lines":[{"line_number":10,"context_line":"and briefly discussed again in Newton Summit. We agreed to propose"},{"line_number":11,"context_line":"a spec to discuss the design."},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"This is a feature that is dependent on Share Migration, where an"},{"line_number":14,"context_line":"user may retype a share, which can be performed by the driver"},{"line_number":15,"context_line":"in the same backend, or require the share to be migrated."},{"line_number":16,"context_line":""},{"line_number":17,"context_line":"Change-Id: I1598854680a172a0f50c4591b316babdaeda88f7"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"bab6814e_f3f2ff04","line":14,"range":{"start_line":13,"start_character":62,"end_line":14,"end_character":4},"updated":"2016-05-22 18:18:55.000000000","message":"It\u0027s \"a user\" - see http://www.usingenglish.com/forum/threads/168435-quot-an-quot-user-s-manual-quot-a-quot-user-s-manual","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"}],"specs/newton/share-retype.rst":[{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"71a02d0d39282103d2761310ee8bff242c97c03c","unresolved":false,"context_lines":[{"line_number":14,"context_line":"the API. A share type is a grouping of extra-specs that are used to define a"},{"line_number":15,"context_line":"share\u0027s characteristics and its compatibility with a certain backend. Changing"},{"line_number":16,"context_line":"a share\u0027s type to another one with different extra-specs may involve having to"},{"line_number":17,"context_line":"re-create a share in a different backend and move its contents, since some "},{"line_number":18,"context_line":"characteristics are intrinsic to the share and cannot be changed."},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Problem description"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bab6814e_45b0288c","line":17,"range":{"start_line":17,"start_character":74,"end_line":17,"end_character":75},"updated":"2016-05-18 07:25:05.000000000","message":"Remove all of the tailing space in this doc.","commit_id":"0ee4556eae6fbdb242ed2939d29ef8955b821de2"},{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"71a02d0d39282103d2761310ee8bff242c97c03c","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Add APIs:"},{"line_number":55,"context_line":"1) retype-start [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e]"},{"line_number":56,"context_line":"[--finish] [--lossy] [--writeable] \u003cshare\u003e \u003cnew-type\u003e"},{"line_number":57,"context_line":"finish (defaults True): whether retype should complete in 1-step, or if "},{"line_number":58,"context_line":"2-phase retype should be used. Drivers should respect this parameter."},{"line_number":59,"context_line":"lossy (defaults False): whether retype should allow the possibility of"},{"line_number":60,"context_line":"losing metadata. If set to False, this will prevent fallback migration from"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bab6814e_d7a04ba8","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":6},"updated":"2016-05-18 07:25:05.000000000","message":"Better to add \u0027*\u0027 before the parameters (\u0027finish, lossy..\u0027). It looks clearly.","commit_id":"0ee4556eae6fbdb242ed2939d29ef8955b821de2"},{"author":{"_account_id":15100,"name":"zhongjun","email":"jun.zhongjun2@gmail.com","username":"zhongjun2"},"change_message_id":"71a02d0d39282103d2761310ee8bff242c97c03c","unresolved":false,"context_lines":[{"line_number":54,"context_line":"Add APIs:"},{"line_number":55,"context_line":"1) retype-start [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e]"},{"line_number":56,"context_line":"[--finish] [--lossy] [--writeable] \u003cshare\u003e \u003cnew-type\u003e"},{"line_number":57,"context_line":"finish (defaults True): whether retype should complete in 1-step, or if "},{"line_number":58,"context_line":"2-phase retype should be used. Drivers should respect this parameter."},{"line_number":59,"context_line":"lossy (defaults False): whether retype should allow the possibility of"},{"line_number":60,"context_line":"losing metadata. If set to False, this will prevent fallback migration from"}],"source_content_type":"text/x-rst","patch_set":1,"id":"bab6814e_5713bb5c","line":57,"range":{"start_line":57,"start_character":58,"end_line":57,"end_character":64},"updated":"2016-05-18 07:25:05.000000000","message":"Cloud you please add the description about what is the 1-step, what is the 2-phase, and why we need this?","commit_id":"0ee4556eae6fbdb242ed2939d29ef8955b821de2"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f6b6cda3e3b0945cd24c3c22b7ef8c74e8d3553f","unresolved":false,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"Check share\u0027s status:"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"* If not available, return error."},{"line_number":262,"context_line":""},{"line_number":263,"context_line":"Check if new type is the same as current type:"},{"line_number":264,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_0f77ccd3","line":261,"range":{"start_line":261,"start_character":27,"end_line":261,"end_character":32},"updated":"2016-05-20 11:42:11.000000000","message":"same as in https://review.openstack.org/#/c/315707/8/specs/newton/newton-migration-improvements.rst\n\n\"return error\" is ambiguous statement. Need to say explicitly wihch HTTP code is planned to be returned and whether share status will be changed or not...\nSame below.","commit_id":"b5c148481b6f6ca771e595f7f4e737ba7982e34f"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36916f02e1cf517cabb47cc973ae9a1f19e81369","unresolved":false,"context_lines":[{"line_number":258,"context_line":""},{"line_number":259,"context_line":"Check share\u0027s status:"},{"line_number":260,"context_line":""},{"line_number":261,"context_line":"* If not available, return error."},{"line_number":262,"context_line":""},{"line_number":263,"context_line":"Check if new type is the same as current type:"},{"line_number":264,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_fc0b1d22","line":261,"range":{"start_line":261,"start_character":27,"end_line":261,"end_character":32},"in_reply_to":"bab6814e_0f77ccd3","updated":"2016-05-20 13:25:03.000000000","message":"Done","commit_id":"b5c148481b6f6ca771e595f7f4e737ba7982e34f"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"f6b6cda3e3b0945cd24c3c22b7ef8c74e8d3553f","unresolved":false,"context_lines":[{"line_number":337,"context_line":"Testing"},{"line_number":338,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"* Standard unit tests"},{"line_number":341,"context_line":"* Tempest tests"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_af1a007b","line":340,"range":{"start_line":340,"start_character":2,"end_line":340,"end_character":10},"updated":"2016-05-20 11:42:11.000000000","message":"Do we have non-standard unit tests?","commit_id":"b5c148481b6f6ca771e595f7f4e737ba7982e34f"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36916f02e1cf517cabb47cc973ae9a1f19e81369","unresolved":false,"context_lines":[{"line_number":337,"context_line":"Testing"},{"line_number":338,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":339,"context_line":""},{"line_number":340,"context_line":"* Standard unit tests"},{"line_number":341,"context_line":"* Tempest tests"},{"line_number":342,"context_line":""},{"line_number":343,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":3,"id":"bab6814e_be386c3e","line":340,"range":{"start_line":340,"start_character":2,"end_line":340,"end_character":10},"in_reply_to":"bab6814e_af1a007b","updated":"2016-05-20 13:25:03.000000000","message":"No :P","commit_id":"b5c148481b6f6ca771e595f7f4e737ba7982e34f"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"2b0b228e5d7385efa9a3b6ffb9b4d69db6371c97","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/manila/+spec/share-retype"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Share retype is a feature that allows an user to change a share\u0027s type through"},{"line_number":14,"context_line":"the API. A share type is a grouping of extra-specs that are used to define a"},{"line_number":15,"context_line":"share\u0027s characteristics and its compatibility with a certain backend. Changing"},{"line_number":16,"context_line":"a share\u0027s type to another one with different extra-specs may involve having to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_93d6134d","line":13,"range":{"start_line":13,"start_character":38,"end_line":13,"end_character":45},"updated":"2016-05-22 18:18:55.000000000","message":"a user","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"052af57e583de9225d2d29942ed41e28eb892b8e","unresolved":false,"context_lines":[{"line_number":10,"context_line":""},{"line_number":11,"context_line":"https://blueprints.launchpad.net/manila/+spec/share-retype"},{"line_number":12,"context_line":""},{"line_number":13,"context_line":"Share retype is a feature that allows an user to change a share\u0027s type through"},{"line_number":14,"context_line":"the API. A share type is a grouping of extra-specs that are used to define a"},{"line_number":15,"context_line":"share\u0027s characteristics and its compatibility with a certain backend. Changing"},{"line_number":16,"context_line":"a share\u0027s type to another one with different extra-specs may involve having to"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_998b9f1e","line":13,"range":{"start_line":13,"start_character":38,"end_line":13,"end_character":45},"in_reply_to":"bab6814e_93d6134d","updated":"2016-05-23 20:18:21.000000000","message":"Done","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"2b0b228e5d7385efa9a3b6ffb9b4d69db6371c97","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This spec aims to propose the Share Retype design, progressing on the design"},{"line_number":43,"context_line":"started at Austin Summit 2016."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Consider the following scenarios:"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_933d7391","line":43,"updated":"2016-05-22 18:18:55.000000000","message":"Consider linking to the design summit etherpad from here.","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"a7520e58dda44e8521f24e338f7cd8da73826173","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This spec aims to propose the Share Retype design, progressing on the design"},{"line_number":43,"context_line":"started at Austin Summit 2016."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Consider the following scenarios:"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_dc6035a7","line":43,"in_reply_to":"bab6814e_19784f2b","updated":"2016-05-24 21:32:33.000000000","message":"OK.  Could point to it from here, but no big deal.","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"052af57e583de9225d2d29942ed41e28eb892b8e","unresolved":false,"context_lines":[{"line_number":40,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"This spec aims to propose the Share Retype design, progressing on the design"},{"line_number":43,"context_line":"started at Austin Summit 2016."},{"line_number":44,"context_line":""},{"line_number":45,"context_line":"Consider the following scenarios:"},{"line_number":46,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_19784f2b","line":43,"in_reply_to":"bab6814e_933d7391","updated":"2016-05-23 20:18:21.000000000","message":"It is in the references section.","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"2b0b228e5d7385efa9a3b6ffb9b4d69db6371c97","unresolved":false,"context_lines":[{"line_number":202,"context_line":"REST API impact"},{"line_number":203,"context_line":"---------------"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":208,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_d35a5bf1","line":205,"updated":"2016-05-22 18:18:55.000000000","message":"You should show rest urls and bodies here.","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"052af57e583de9225d2d29942ed41e28eb892b8e","unresolved":false,"context_lines":[{"line_number":202,"context_line":"REST API impact"},{"line_number":203,"context_line":"---------------"},{"line_number":204,"context_line":""},{"line_number":205,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":206,"context_line":""},{"line_number":207,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":208,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"}],"source_content_type":"text/x-rst","patch_set":4,"id":"bab6814e_f9ae2b80","line":205,"in_reply_to":"bab6814e_d35a5bf1","updated":"2016-05-23 20:18:21.000000000","message":"Done","commit_id":"9027545f16b546739a2041e9fd3344dbde83c876"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"ecf7a8ae4b71e3889ddaf3da8501bb545b61370a","unresolved":false,"context_lines":[{"line_number":34,"context_line":"There are some scenarios for which a user may want to retype a share:"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (Bronze to Silver, Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his share."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Proposed change"},{"line_number":40,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_599b89c9","line":37,"range":{"start_line":37,"start_character":34,"end_line":37,"end_character":37},"updated":"2016-05-25 15:26:34.000000000","message":"nit: his or her","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"60bde157c006c76c0ce400023b7825caec41eadc","unresolved":false,"context_lines":[{"line_number":34,"context_line":"There are some scenarios for which a user may want to retype a share:"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (Bronze to Silver, Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his share."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"Proposed change"},{"line_number":40,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_204da199","line":37,"range":{"start_line":37,"start_character":34,"end_line":37,"end_character":37},"in_reply_to":"bab6814e_599b89c9","updated":"2016-05-25 17:33:57.000000000","message":"Done","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"ecf7a8ae4b71e3889ddaf3da8501bb545b61370a","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Add APIs:"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"1) ``retype-start [--finish] [--lossy] [--writeable]"},{"line_number":75,"context_line":"   [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e] \u003cshare\u003e"},{"line_number":76,"context_line":"   \u003cnew_type\u003e``"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_7f862ddc","line":74,"range":{"start_line":74,"start_character":39,"end_line":74,"end_character":52},"updated":"2016-05-25 15:26:34.000000000","message":"nit: \u0027writeable\u0027 and \u0027writable\u0027 are both accepted English spellings but grepping our codebase I find only the latter spelling in use.  We should probably be consistent so that searches are easier.","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"60bde157c006c76c0ce400023b7825caec41eadc","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Add APIs:"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"1) ``retype-start [--finish] [--lossy] [--writeable]"},{"line_number":75,"context_line":"   [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e] \u003cshare\u003e"},{"line_number":76,"context_line":"   \u003cnew_type\u003e``"},{"line_number":77,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_a0ab511d","line":74,"range":{"start_line":74,"start_character":39,"end_line":74,"end_character":52},"in_reply_to":"bab6814e_7f862ddc","updated":"2016-05-25 17:33:57.000000000","message":"Done","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"ecf7a8ae4b71e3889ddaf3da8501bb545b61370a","unresolved":false,"context_lines":[{"line_number":78,"context_line":":finish (defaults True): whether retype should complete in 1-step, or if"},{"line_number":79,"context_line":" 2-phase retype should be used. Drivers should respect this parameter."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":":lossy (defaults False): whether retype should allow the possibility of"},{"line_number":82,"context_line":" losing metadata. If set to False, this will prevent fallback migration from"},{"line_number":83,"context_line":" running. Drivers should respect this parameter."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":":writeable (defaults to True): whether retype should only be"},{"line_number":86,"context_line":" performed if share remains writable. If set to True, this will prevent"},{"line_number":87,"context_line":" fallback approach from running. Drivers should respect this parameter."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":":disruption-policy: The disruption policy the user allows. \u0027nondisruptive\u0027"},{"line_number":90,"context_line":" value specifies that retype should be performed only if there can be no"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_6a5aed2b","line":87,"range":{"start_line":81,"start_character":0,"end_line":87,"end_character":71},"updated":"2016-05-25 15:26:34.000000000","message":"I think it would be good to briefly explain the circumstances that would lead to fallback migration are making the share read-only, or if you don\u0027t want to do that here at least point to the migration spec indicating that this is explained there.","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"60bde157c006c76c0ce400023b7825caec41eadc","unresolved":false,"context_lines":[{"line_number":78,"context_line":":finish (defaults True): whether retype should complete in 1-step, or if"},{"line_number":79,"context_line":" 2-phase retype should be used. Drivers should respect this parameter."},{"line_number":80,"context_line":""},{"line_number":81,"context_line":":lossy (defaults False): whether retype should allow the possibility of"},{"line_number":82,"context_line":" losing metadata. If set to False, this will prevent fallback migration from"},{"line_number":83,"context_line":" running. Drivers should respect this parameter."},{"line_number":84,"context_line":""},{"line_number":85,"context_line":":writeable (defaults to True): whether retype should only be"},{"line_number":86,"context_line":" performed if share remains writable. If set to True, this will prevent"},{"line_number":87,"context_line":" fallback approach from running. Drivers should respect this parameter."},{"line_number":88,"context_line":""},{"line_number":89,"context_line":":disruption-policy: The disruption policy the user allows. \u0027nondisruptive\u0027"},{"line_number":90,"context_line":" value specifies that retype should be performed only if there can be no"}],"source_content_type":"text/x-rst","patch_set":5,"id":"bab6814e_7120199c","line":87,"range":{"start_line":81,"start_character":0,"end_line":87,"end_character":71},"in_reply_to":"bab6814e_6a5aed2b","updated":"2016-05-25 17:33:57.000000000","message":"Added a paragraph explaining that. Thanks for the suggestion. Although this is covered in the implementation, it is better to have a paragraph that summarizes it.","commit_id":"330f248a824b806a45f15191c3217ad083118038"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":87,"context_line":"   retype-complete to perform the disruptive last steps. Drivers are also"},{"line_number":88,"context_line":"   expected to support this 2-phase approach if possible if their retype"},{"line_number":89,"context_line":"   implementation is disruptive at any point. The retype-complete is also"},{"line_number":90,"context_line":"   expected to be much faster than retype-start, whereas the retype-start API"},{"line_number":91,"context_line":"   call has already copied the data."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_824fe390","line":90,"range":{"start_line":90,"start_character":49,"end_line":90,"end_character":56},"updated":"2016-05-27 03:22:56.000000000","message":"nit: sounds like legalese... can replace with \u0027since\u0027","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":87,"context_line":"   retype-complete to perform the disruptive last steps. Drivers are also"},{"line_number":88,"context_line":"   expected to support this 2-phase approach if possible if their retype"},{"line_number":89,"context_line":"   implementation is disruptive at any point. The retype-complete is also"},{"line_number":90,"context_line":"   expected to be much faster than retype-start, whereas the retype-start API"},{"line_number":91,"context_line":"   call has already copied the data."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_b42c8fac","line":90,"range":{"start_line":90,"start_character":49,"end_line":90,"end_character":56},"in_reply_to":"bab6814e_824fe390","updated":"2016-05-30 13:38:05.000000000","message":"Done","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":112,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":113,"context_line":"3) (POST, 202) retype-get-progress: attempts to obtain retype progress"},{"line_number":114,"context_line":"4) (POST, 202) retype-cancel: attempts to cancel retype"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"URL: /shares/\u003cshare_id\u003e/action_name"}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_2228b799","line":113,"range":{"start_line":113,"start_character":10,"end_line":113,"end_character":13},"updated":"2016-05-27 03:22:56.000000000","message":"202? No response?","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":110,"context_line":""},{"line_number":111,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":112,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":113,"context_line":"3) (POST, 202) retype-get-progress: attempts to obtain retype progress"},{"line_number":114,"context_line":"4) (POST, 202) retype-cancel: attempts to cancel retype"},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"URL: /shares/\u003cshare_id\u003e/action_name"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_e5baabe0","line":113,"range":{"start_line":113,"start_character":10,"end_line":113,"end_character":13},"in_reply_to":"bab6814e_2228b799","updated":"2016-05-30 13:38:05.000000000","message":"Done","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":149,"context_line":":share: share on which retype should be completed. Retype job must be in"},{"line_number":150,"context_line":" \u0027retype_driver_phase1_complete\u0027, \u0027data_copying_complete\u0027 or"},{"line_number":151,"context_line":" \u0027migration_driver_phase1_complete\u0027 to have its phase 2 retype invoked."},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"3) ``retype-get-progress \u003cshare\u003e``"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":":share: share from which retype progress should be obtained."}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_752b9782","line":152,"range":{"start_line":152,"start_character":0,"end_line":152,"end_character":0},"updated":"2016-05-27 03:22:56.000000000","message":"Would be really nice to see a state transition diagram somewhere for the task states.. top on my wishlist :)","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":149,"context_line":":share: share on which retype should be completed. Retype job must be in"},{"line_number":150,"context_line":" \u0027retype_driver_phase1_complete\u0027, \u0027data_copying_complete\u0027 or"},{"line_number":151,"context_line":" \u0027migration_driver_phase1_complete\u0027 to have its phase 2 retype invoked."},{"line_number":152,"context_line":""},{"line_number":153,"context_line":"3) ``retype-get-progress \u003cshare\u003e``"},{"line_number":154,"context_line":""},{"line_number":155,"context_line":":share: share from which retype progress should be obtained."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_9b917c9c","line":152,"range":{"start_line":152,"start_character":0,"end_line":152,"end_character":0},"in_reply_to":"bab6814e_752b9782","updated":"2016-05-30 13:38:05.000000000","message":"I started doing it, but since they are not being used for anything else than tracking (except cancel and get-progress, which detail specifically), they ended up being very straight forward. Maybe it will be a better idea for the docs.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":":share: share from which retype progress should be obtained."},{"line_number":156,"context_line":" Retype job must be in \u0027retype_driver_in_progress\u0027 or \u0027data_copy_in_progress\u0027"},{"line_number":157,"context_line":" to have its progress obtained."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"4) ``retype-cancel \u003cshare\u003e``"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_b5585f32","line":157,"range":{"start_line":157,"start_character":30,"end_line":157,"end_character":31},"updated":"2016-05-27 03:22:56.000000000","message":"What\u0027s the return value of this API?\n\nHow will you get progress? \n\nIf the API needs to know the progress, shouldn\u0027t the progress be saved in manila\u0027s database?","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":154,"context_line":""},{"line_number":155,"context_line":":share: share from which retype progress should be obtained."},{"line_number":156,"context_line":" Retype job must be in \u0027retype_driver_in_progress\u0027 or \u0027data_copy_in_progress\u0027"},{"line_number":157,"context_line":" to have its progress obtained."},{"line_number":158,"context_line":""},{"line_number":159,"context_line":"4) ``retype-cancel \u003cshare\u003e``"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_657d1b1c","line":157,"range":{"start_line":157,"start_character":30,"end_line":157,"end_character":31},"in_reply_to":"bab6814e_b5585f32","updated":"2016-05-30 13:38:05.000000000","message":"return included above.\nexplanation of progress included below.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Add driver interfaces::"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def retype_start(self, context, share_ref, share_server, new_type, diff,"},{"line_number":174,"context_line":"                     finish, writable, lossy):"},{"line_number":175,"context_line":"        \"\"\"Is called to perform 1st phase of driver retype of a given share."},{"line_number":176,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_f565c7e0","line":173,"range":{"start_line":173,"start_character":47,"end_line":173,"end_character":59},"updated":"2016-05-27 03:22:56.000000000","message":"share_server should be the last parameter, because it will be a kwarg.. (defaulting to None)","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":170,"context_line":""},{"line_number":171,"context_line":"Add driver interfaces::"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def retype_start(self, context, share_ref, share_server, new_type, diff,"},{"line_number":174,"context_line":"                     finish, writable, lossy):"},{"line_number":175,"context_line":"        \"\"\"Is called to perform 1st phase of driver retype of a given share."},{"line_number":176,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_1883d205","line":173,"range":{"start_line":173,"start_character":47,"end_line":173,"end_character":59},"in_reply_to":"bab6814e_f565c7e0","updated":"2016-05-30 13:38:05.000000000","message":"Done","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":171,"context_line":"Add driver interfaces::"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def retype_start(self, context, share_ref, share_server, new_type, diff,"},{"line_number":174,"context_line":"                     finish, writable, lossy):"},{"line_number":175,"context_line":"        \"\"\"Is called to perform 1st phase of driver retype of a given share."},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"        Driver should implement this method if willing to perform retype"}],"source_content_type":"text/x-rst","patch_set":8,"id":"bab6814e_355c6f18","line":174,"range":{"start_line":174,"start_character":21,"end_line":174,"end_character":44},"updated":"2016-05-27 03:22:56.000000000","message":"also kwargs with default values?","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":171,"context_line":"Add driver interfaces::"},{"line_number":172,"context_line":""},{"line_number":173,"context_line":"    def retype_start(self, context, share_ref, share_server, new_type, diff,"},{"line_number":174,"context_line":"                     finish, writable, lossy):"},{"line_number":175,"context_line":"        \"\"\"Is called to perform 1st phase of driver retype of a given share."},{"line_number":176,"context_line":""},{"line_number":177,"context_line":"        Driver should implement this method if willing to perform retype"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_3878562b","line":174,"range":{"start_line":174,"start_character":21,"end_line":174,"end_character":44},"in_reply_to":"bab6814e_355c6f18","updated":"2016-05-30 13:38:05.000000000","message":"Nope, these should be mandatory.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":180,"context_line":"        :param share_ref: Reference to the share being retyped."},{"line_number":181,"context_line":"        :param share_server: Share server model or None."},{"line_number":182,"context_line":"        :param new_type: The type to be retyped to and its extra-specs."},{"line_number":183,"context_line":"        :param diff: The extra-spec difference between the current and new"},{"line_number":184,"context_line":"        types."},{"line_number":185,"context_line":"        :param finish: whether the retype should complete or wait for"},{"line_number":186,"context_line":"        2nd phase call. Driver may throw exception when validating this"},{"line_number":187,"context_line":"        parameter, exception if does not support 1-step or 2-phase approach."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_cf5b9d2d","line":184,"range":{"start_line":183,"start_character":15,"end_line":184,"end_character":14},"updated":"2016-05-27 03:22:56.000000000","message":"drivers can directly talk to the API to get the extra-specs.. is the difference necessary to be computed?","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":180,"context_line":"        :param share_ref: Reference to the share being retyped."},{"line_number":181,"context_line":"        :param share_server: Share server model or None."},{"line_number":182,"context_line":"        :param new_type: The type to be retyped to and its extra-specs."},{"line_number":183,"context_line":"        :param diff: The extra-spec difference between the current and new"},{"line_number":184,"context_line":"        types."},{"line_number":185,"context_line":"        :param finish: whether the retype should complete or wait for"},{"line_number":186,"context_line":"        2nd phase call. Driver may throw exception when validating this"},{"line_number":187,"context_line":"        parameter, exception if does not support 1-step or 2-phase approach."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_58cb9a53","line":184,"range":{"start_line":183,"start_character":15,"end_line":184,"end_character":14},"in_reply_to":"9abb7d3a_cf5b9d2d","updated":"2016-05-30 13:38:05.000000000","message":"inspired by Cinder code, I presume this is good to avoid everyone doing the same thing.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"        returns None, None by default."},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"    def retype_complete(self, context, share_ref, share_server, new_type,"},{"line_number":199,"context_line":"                        diff):"},{"line_number":200,"context_line":"        \"\"\"Is called to perform 2nd phase of driver retype of a given share."},{"line_number":201,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_cf243db1","line":198,"range":{"start_line":198,"start_character":50,"end_line":198,"end_character":62},"updated":"2016-05-27 03:22:56.000000000","message":"same","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":195,"context_line":""},{"line_number":196,"context_line":"        returns None, None by default."},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"    def retype_complete(self, context, share_ref, share_server, new_type,"},{"line_number":199,"context_line":"                        diff):"},{"line_number":200,"context_line":"        \"\"\"Is called to perform 2nd phase of driver retype of a given share."},{"line_number":201,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_58d27a01","line":198,"range":{"start_line":198,"start_character":50,"end_line":198,"end_character":62},"in_reply_to":"9abb7d3a_cf243db1","updated":"2016-05-30 13:38:05.000000000","message":"Done","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":223,"context_line":"        :param share_server: Share server model or None."},{"line_number":224,"context_line":"        \"\"\""},{"line_number":225,"context_line":""},{"line_number":226,"context_line":"        throws NotImplementedError()."},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def retype_get_progress(self, context, share_ref, share_server):"},{"line_number":229,"context_line":"        \"\"\"Is called to get retype progress."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_8fd4f547","line":226,"range":{"start_line":226,"start_character":8,"end_line":226,"end_character":14},"updated":"2016-05-27 03:22:56.000000000","message":"raise","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":223,"context_line":"        :param share_server: Share server model or None."},{"line_number":224,"context_line":"        \"\"\""},{"line_number":225,"context_line":""},{"line_number":226,"context_line":"        throws NotImplementedError()."},{"line_number":227,"context_line":""},{"line_number":228,"context_line":"    def retype_get_progress(self, context, share_ref, share_server):"},{"line_number":229,"context_line":"        \"\"\"Is called to get retype progress."}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_d8d02a56","line":226,"range":{"start_line":226,"start_character":8,"end_line":226,"end_character":14},"in_reply_to":"9abb7d3a_8fd4f547","updated":"2016-05-30 13:38:05.000000000","message":"this is supposed to be a brief description, not actual code.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":237,"context_line":"        percentage value."},{"line_number":238,"context_line":"        \"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"        throws NotImplementedError()."},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"Security impact"},{"line_number":243,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_0f3e45b8","line":240,"range":{"start_line":240,"start_character":8,"end_line":240,"end_character":14},"updated":"2016-05-27 03:22:56.000000000","message":"raise","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":237,"context_line":"        percentage value."},{"line_number":238,"context_line":"        \"\"\""},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"        throws NotImplementedError()."},{"line_number":241,"context_line":""},{"line_number":242,"context_line":"Security impact"},{"line_number":243,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_18cbd2a6","line":240,"range":{"start_line":240,"start_character":8,"end_line":240,"end_character":14},"in_reply_to":"9abb7d3a_0f3e45b8","updated":"2016-05-30 13:38:05.000000000","message":"same as above.","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":291,"context_line":""},{"line_number":292,"context_line":"* If not available, return error 400 (Invalid)."},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"Check if new type is the same as current type:"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"* if True, return error 400 (Invalid)."},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"Check if share is busy with another task:"},{"line_number":299,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_6f90b196","line":296,"range":{"start_line":294,"start_character":0,"end_line":296,"end_character":38},"updated":"2016-05-27 03:22:56.000000000","message":"This should be 200 - Success .. It is not an error to attempt to put a resource in a state it is already in... \nPlease check the corresponding API WG guideline.\n\nhttps://specs.openstack.org/openstack/api-wg/guidelines/http.html#xx-success-codes\n\nThis is akin to promoting a replica that\u0027s already \u0027active\u0027..","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":291,"context_line":""},{"line_number":292,"context_line":"* If not available, return error 400 (Invalid)."},{"line_number":293,"context_line":""},{"line_number":294,"context_line":"Check if new type is the same as current type:"},{"line_number":295,"context_line":""},{"line_number":296,"context_line":"* if True, return error 400 (Invalid)."},{"line_number":297,"context_line":""},{"line_number":298,"context_line":"Check if share is busy with another task:"},{"line_number":299,"context_line":""}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_986d029b","line":296,"range":{"start_line":294,"start_character":0,"end_line":296,"end_character":38},"in_reply_to":"9abb7d3a_6f90b196","updated":"2016-05-30 13:38:05.000000000","message":"thanks! did not know about this","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":319,"context_line":"invoke the scheduler asynchronously to validate if the current host supports"},{"line_number":320,"context_line":"the new share type. If current host validation fails, the scheduler will try to"},{"line_number":321,"context_line":"find another host for the share. If no host can be found, it will set"},{"line_number":322,"context_line":"task_state to RETYPE_ERROR (no notification). Else it will invoke the share\u0027s"},{"line_number":323,"context_line":"manager also asynchronously to proceed with retype."},{"line_number":324,"context_line":""},{"line_number":325,"context_line":"At the share manager, it will change the share\u0027s task_state to"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_2fdd0971","line":322,"range":{"start_line":322,"start_character":28,"end_line":322,"end_character":43},"updated":"2016-05-27 03:22:56.000000000","message":"hopefully will change in the near future :)","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"566412bcfb4af4dc7581190507e3485eed6818e6","unresolved":false,"context_lines":[{"line_number":375,"context_line":"Documentation Impact"},{"line_number":376,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"The new APIs will be documented. Driver interfaces will include docstrings."},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"References"},{"line_number":381,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_ef6dc1cd","line":378,"range":{"start_line":378,"start_character":74,"end_line":378,"end_character":75},"updated":"2016-05-27 03:22:56.000000000","message":"Please refer to this small guide on where all this feature should be documented: https://review.openstack.org/#/c/321334/","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"37ada85fa8a9d387d1e22ebb5b349a7530c03d59","unresolved":false,"context_lines":[{"line_number":375,"context_line":"Documentation Impact"},{"line_number":376,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":377,"context_line":""},{"line_number":378,"context_line":"The new APIs will be documented. Driver interfaces will include docstrings."},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"References"},{"line_number":381,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":8,"id":"9abb7d3a_1ba62c10","line":378,"range":{"start_line":378,"start_character":74,"end_line":378,"end_character":75},"in_reply_to":"9abb7d3a_ef6dc1cd","updated":"2016-05-30 13:38:05.000000000","message":"Done","commit_id":"8d9c192adbaf61424efc919fa0a2eafdca393dc7"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":23,"context_line":"Currently, once a share is created using a certain type or protocol, it cannot"},{"line_number":24,"context_line":"be changed. The user may want to change a share\u0027s type for several reasons (see"},{"line_number":25,"context_line":"use cases). There are a few ways to change a share\u0027s type or protocol without"},{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_032270b9","line":26,"range":{"start_line":26,"start_character":35,"end_line":26,"end_character":70},"updated":"2016-06-02 22:33:27.000000000","message":"changing extra specs does not alter existing shares","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":23,"context_line":"Currently, once a share is created using a certain type or protocol, it cannot"},{"line_number":24,"context_line":"be changed. The user may want to change a share\u0027s type for several reasons (see"},{"line_number":25,"context_line":"use cases). There are a few ways to change a share\u0027s type or protocol without"},{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_133a9a34","line":26,"range":{"start_line":26,"start_character":35,"end_line":26,"end_character":70},"in_reply_to":"9abb7d3a_032270b9","updated":"2016-06-03 13:19:34.000000000","message":"yes, it does not, I explained it better now.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":24,"context_line":"be changed. The user may want to change a share\u0027s type for several reasons (see"},{"line_number":25,"context_line":"use cases). There are a few ways to change a share\u0027s type or protocol without"},{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."},{"line_number":30,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_0610be4d","line":27,"range":{"start_line":27,"start_character":38,"end_line":27,"end_character":46},"updated":"2016-06-02 22:33:27.000000000","message":"if unmanage/manage works for retype, I was not aware of that. If it is only partly true then mentioning it here probably does not help clarity.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":24,"context_line":"be changed. The user may want to change a share\u0027s type for several reasons (see"},{"line_number":25,"context_line":"use cases). There are a few ways to change a share\u0027s type or protocol without"},{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."},{"line_number":30,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_537c22b5","line":27,"range":{"start_line":27,"start_character":38,"end_line":27,"end_character":46},"in_reply_to":"9abb7d3a_0610be4d","updated":"2016-06-03 13:19:34.000000000","message":"I don\u0027t know what you mean by partially true. I described it better now in a way that does not cause confusion.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_a64c5277","line":29,"range":{"start_line":29,"start_character":78,"end_line":29,"end_character":79},"updated":"2016-06-02 22:33:27.000000000","message":"Maybe the description will be clearer if you move all the not advisable alternatives to the \"Alternatives\" section.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":26,"context_line":"the proper retype feature, such as editing the extra-specs in the type"},{"line_number":27,"context_line":"definition, or unmanaging a share and managing with a different share type or"},{"line_number":28,"context_line":"protocol. Neither of those approaches are available to the end user or are"},{"line_number":29,"context_line":"advisable to be used, other than workarounds a knowledgeable admin can perform."},{"line_number":30,"context_line":""},{"line_number":31,"context_line":"Use Cases"},{"line_number":32,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_f356f604","line":29,"range":{"start_line":29,"start_character":78,"end_line":29,"end_character":79},"in_reply_to":"9abb7d3a_a64c5277","updated":"2016-06-03 13:19:34.000000000","message":"Done","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"There are some scenarios for which a user may want to retype a share:"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (from Bronze to Silver, from Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his or her share."},{"line_number":38,"context_line":"* Changing share to a different share protocol."},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_469006ed","line":36,"range":{"start_line":36,"start_character":13,"end_line":36,"end_character":14},"updated":"2016-06-02 22:33:27.000000000","message":"s/D/d/","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"There are some scenarios for which a user may want to retype a share:"},{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (from Bronze to Silver, from Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his or her share."},{"line_number":38,"context_line":"* Changing share to a different share protocol."},{"line_number":39,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_73b9662e","line":36,"range":{"start_line":36,"start_character":13,"end_line":36,"end_character":14},"in_reply_to":"9abb7d3a_469006ed","updated":"2016-06-03 13:19:34.000000000","message":"Done","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (from Bronze to Silver, from Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his or her share."},{"line_number":38,"context_line":"* Changing share to a different share protocol."},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Proposed change"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_917346b4","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":47},"updated":"2016-06-02 22:33:27.000000000","message":"This proposal doesn\u0027t address changing protocol I think you should removal all comments about protocol. Or stash a comment in some \"Future\" section.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":35,"context_line":""},{"line_number":36,"context_line":"* Promote or Demote a share (from Bronze to Silver, from Silver to Bronze)."},{"line_number":37,"context_line":"* Add or remove capabilities from his or her share."},{"line_number":38,"context_line":"* Changing share to a different share protocol."},{"line_number":39,"context_line":""},{"line_number":40,"context_line":"Proposed change"},{"line_number":41,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_d3cc92bd","line":38,"range":{"start_line":38,"start_character":0,"end_line":38,"end_character":47},"in_reply_to":"9abb7d3a_917346b4","updated":"2016-06-03 13:19:34.000000000","message":"added a remark","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"User triggers a retype:"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* New Share type fits same backend, driver may retype non-disruptively."},{"line_number":65,"context_line":"* New Share type fits same backend, driver may retype disruptively."},{"line_number":66,"context_line":"* New Share type does not fit same backend, share is migrated."},{"line_number":67,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_a6e8d217","line":64,"range":{"start_line":64,"start_character":6,"end_line":64,"end_character":11},"updated":"2016-06-02 22:33:27.000000000","message":"s/Share/share/ on these 3 lines.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":61,"context_line":""},{"line_number":62,"context_line":"User triggers a retype:"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"* New Share type fits same backend, driver may retype non-disruptively."},{"line_number":65,"context_line":"* New Share type fits same backend, driver may retype disruptively."},{"line_number":66,"context_line":"* New Share type does not fit same backend, share is migrated."},{"line_number":67,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_b330ee08","line":64,"range":{"start_line":64,"start_character":6,"end_line":64,"end_character":11},"in_reply_to":"9abb7d3a_a6e8d217","updated":"2016-06-03 13:19:34.000000000","message":"Done","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Since retype may be disruptive, it was designed with a 2-phase possibility in"},{"line_number":77,"context_line":"mind. Consider the two distinct scenarios:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"1) user invokes retype-start with \"migrate\" disruption policy, and for the"},{"line_number":80,"context_line":"   considered type it results in the share being retyped through migration."},{"line_number":81,"context_line":"   This API call is disruptive and finishes migration and retype."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_8662eeab","line":78,"updated":"2016-06-02 22:33:27.000000000","message":"what if the retype is handled by the backend w/o migrate? How does that work w/ 2-phase?","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Since retype may be disruptive, it was designed with a 2-phase possibility in"},{"line_number":77,"context_line":"mind. Consider the two distinct scenarios:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"1) user invokes retype-start with \"migrate\" disruption policy, and for the"},{"line_number":80,"context_line":"   considered type it results in the share being retyped through migration."},{"line_number":81,"context_line":"   This API call is disruptive and finishes migration and retype."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_ee6c4d0a","line":78,"in_reply_to":"9abb7d3a_8662eeab","updated":"2016-06-03 13:19:34.000000000","message":"Added a new paragraph about it, it was clearly missing.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":131,"context_line":"   [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e] \u003cshare\u003e"},{"line_number":132,"context_line":"   \u003cnew_type\u003e``"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":":finish (defaults True): whether retype should complete in 1-step, or if"},{"line_number":135,"context_line":" 2-phase retype should be used. Drivers should respect this parameter."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":":preserve-metadata (defaults True): whether retype should enforce the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_46c5a659","line":134,"range":{"start_line":134,"start_character":1,"end_line":134,"end_character":7},"updated":"2016-06-02 22:33:27.000000000","message":"I\u0027d say the term should be \"complete\" to match the term used in retype-complete, but in the end it\u0027s more important for the params to be consistent between migration and retype.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":131,"context_line":"   [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e] \u003cshare\u003e"},{"line_number":132,"context_line":"   \u003cnew_type\u003e``"},{"line_number":133,"context_line":""},{"line_number":134,"context_line":":finish (defaults True): whether retype should complete in 1-step, or if"},{"line_number":135,"context_line":" 2-phase retype should be used. Drivers should respect this parameter."},{"line_number":136,"context_line":""},{"line_number":137,"context_line":":preserve-metadata (defaults True): whether retype should enforce the"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_6e069d21","line":134,"range":{"start_line":134,"start_character":1,"end_line":134,"end_character":7},"in_reply_to":"9abb7d3a_46c5a659","updated":"2016-06-03 13:19:34.000000000","message":"I can change both :)\n\n--complete does seem to be a better choice","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        :param share_server: Share server model or None."},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        raises NotImplementedError()."},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    def retype_get_progress(self, context, share_ref, share_server\u003dNone):"},{"line_number":241,"context_line":"        \"\"\"Is called to get retype progress."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_46d8061e","line":238,"updated":"2016-06-02 22:33:27.000000000","message":"If this is allowed after retype_start is done (before complete), then it might need to return a model to undo model updates. I\u0027m speculating.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":235,"context_line":"        :param share_server: Share server model or None."},{"line_number":236,"context_line":"        \"\"\""},{"line_number":237,"context_line":""},{"line_number":238,"context_line":"        raises NotImplementedError()."},{"line_number":239,"context_line":""},{"line_number":240,"context_line":"    def retype_get_progress(self, context, share_ref, share_server\u003dNone):"},{"line_number":241,"context_line":"        \"\"\"Is called to get retype progress."}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_a25539c7","line":238,"in_reply_to":"9abb7d3a_46d8061e","updated":"2016-06-03 13:19:34.000000000","message":"retype_cancel is not expected to return anything (see docstring), so the manager will not perform any model_updates from anything it may return.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":254,"context_line":"Security impact"},{"line_number":255,"context_line":"---------------"},{"line_number":256,"context_line":""},{"line_number":257,"context_line":"In order to access a share\u0027s data, it must be mounted by an entity. The entity"},{"line_number":258,"context_line":"mounting the share is responsible for the data. During migration, if the"},{"line_number":259,"context_line":"fallback approach is used, the Data Service will be mounting the migrating"},{"line_number":260,"context_line":"share and copying data, thus it will expose the share\u0027s contents to the Data"},{"line_number":261,"context_line":"Service node during a limited period of time. The Data Service is accessible"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_263fc226","line":258,"range":{"start_line":257,"start_character":0,"end_line":258,"end_character":47},"updated":"2016-06-02 22:33:27.000000000","message":"The mounting part only applies when migration is used. I think this paragraph is clearer if you just delete the first sentence.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":254,"context_line":"Security impact"},{"line_number":255,"context_line":"---------------"},{"line_number":256,"context_line":""},{"line_number":257,"context_line":"In order to access a share\u0027s data, it must be mounted by an entity. The entity"},{"line_number":258,"context_line":"mounting the share is responsible for the data. During migration, if the"},{"line_number":259,"context_line":"fallback approach is used, the Data Service will be mounting the migrating"},{"line_number":260,"context_line":"share and copying data, thus it will expose the share\u0027s contents to the Data"},{"line_number":261,"context_line":"Service node during a limited period of time. The Data Service is accessible"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_c2079dc7","line":258,"range":{"start_line":257,"start_character":0,"end_line":258,"end_character":47},"in_reply_to":"9abb7d3a_263fc226","updated":"2016-06-03 13:19:34.000000000","message":"Indeed, thanks!","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":295,"context_line":""},{"line_number":296,"context_line":"Implementation"},{"line_number":297,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"Upon receiving the API request to retype a share, the Share API layer will"},{"line_number":300,"context_line":"perform the following validations:"},{"line_number":301,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_66770a03","line":298,"updated":"2016-06-02 22:33:27.000000000","message":"Please mention the poor neglected manila-ui.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":295,"context_line":""},{"line_number":296,"context_line":"Implementation"},{"line_number":297,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"Upon receiving the API request to retype a share, the Share API layer will"},{"line_number":300,"context_line":"perform the following validations:"},{"line_number":301,"context_line":""}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_62e7d112","line":298,"in_reply_to":"9abb7d3a_66770a03","updated":"2016-06-03 13:19:34.000000000","message":"Mentioned below.","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":11047,"name":"Mark Sturdevant","email":"mark.sturdevant@ibm.com","username":"markstur"},"change_message_id":"3a9e3c73ffbb68ee06c6e8aa83d7c8d1fce83627","unresolved":false,"context_lines":[{"line_number":395,"context_line":"- Devref."},{"line_number":396,"context_line":"- Security guide."},{"line_number":397,"context_line":"- User guide."},{"line_number":398,"context_line":"- Release notes."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"References"},{"line_number":401,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_66fc2a3f","line":398,"range":{"start_line":398,"start_character":15,"end_line":398,"end_character":16},"updated":"2016-06-02 22:33:27.000000000","message":"don\u0027t use periods unless at least one item in the list is a sentence","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"fed277e05191c09179d7e06eee6ef9a28b945d8f","unresolved":false,"context_lines":[{"line_number":395,"context_line":"- Devref."},{"line_number":396,"context_line":"- Security guide."},{"line_number":397,"context_line":"- User guide."},{"line_number":398,"context_line":"- Release notes."},{"line_number":399,"context_line":""},{"line_number":400,"context_line":"References"},{"line_number":401,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":11,"id":"9abb7d3a_821595e6","line":398,"range":{"start_line":398,"start_character":15,"end_line":398,"end_character":16},"in_reply_to":"9abb7d3a_66fc2a3f","updated":"2016-06-03 13:19:34.000000000","message":"Done","commit_id":"e7f1025724bc764c3f27e5608f0e90bbc144a592"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"60a2e23f70ee69948d02731126dd9d301626abf6","unresolved":false,"context_lines":[{"line_number":47,"context_line":"share model that consists of a combination of extra-specs. These extra-specs"},{"line_number":48,"context_line":"are mostly common and understood by existing drivers and relate to the backend"},{"line_number":49,"context_line":"capabilities, that even backends with different share protocols can have in"},{"line_number":50,"context_line":"common. Share protocols, in the other hand, are intrinsic to the share, they"},{"line_number":51,"context_line":"have their own database field in the share model and relate to the particular"},{"line_number":52,"context_line":"characteristics of the share itself, such as access types and sometimes the"},{"line_number":53,"context_line":"backend architecture underneath. Changing the share protocol poses its own set"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_e2994021","line":50,"updated":"2016-06-05 13:51:56.000000000","message":"s/in the other hand/on the other hand","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"a0b8eaf12444b30b1a7b2dd182365e6938f9c30c","unresolved":false,"context_lines":[{"line_number":47,"context_line":"share model that consists of a combination of extra-specs. These extra-specs"},{"line_number":48,"context_line":"are mostly common and understood by existing drivers and relate to the backend"},{"line_number":49,"context_line":"capabilities, that even backends with different share protocols can have in"},{"line_number":50,"context_line":"common. Share protocols, in the other hand, are intrinsic to the share, they"},{"line_number":51,"context_line":"have their own database field in the share model and relate to the particular"},{"line_number":52,"context_line":"characteristics of the share itself, such as access types and sometimes the"},{"line_number":53,"context_line":"backend architecture underneath. Changing the share protocol poses its own set"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_8d44d674","line":50,"in_reply_to":"7aa08908_e2994021","updated":"2016-06-06 12:13:30.000000000","message":"Done","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"60a2e23f70ee69948d02731126dd9d301626abf6","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* New share type fits same backend, driver may retype non-disruptively."},{"line_number":64,"context_line":"* New share type fits same backend, driver may retype disruptively."},{"line_number":65,"context_line":"* New share type does not fit same backend, share is migrated."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case where the driver cannot retype efficiently, then the retype"},{"line_number":68,"context_line":"operation relies on migration. If implemented, the driver optimized migration"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_a2f9f84f","line":65,"updated":"2016-06-05 13:51:56.000000000","message":"I always find the third case confusing as it is a special case of migration, but retype and migrate are two different APIs.  I\u0027m not suggesting a change.  Just commenting.","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"a0b8eaf12444b30b1a7b2dd182365e6938f9c30c","unresolved":false,"context_lines":[{"line_number":62,"context_line":""},{"line_number":63,"context_line":"* New share type fits same backend, driver may retype non-disruptively."},{"line_number":64,"context_line":"* New share type fits same backend, driver may retype disruptively."},{"line_number":65,"context_line":"* New share type does not fit same backend, share is migrated."},{"line_number":66,"context_line":""},{"line_number":67,"context_line":"In the case where the driver cannot retype efficiently, then the retype"},{"line_number":68,"context_line":"operation relies on migration. If implemented, the driver optimized migration"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_4895bce2","line":65,"in_reply_to":"7aa08908_a2f9f84f","updated":"2016-06-06 12:13:30.000000000","message":"I improved the description, please let me know what you think.","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"60a2e23f70ee69948d02731126dd9d301626abf6","unresolved":false,"context_lines":[{"line_number":93,"context_line":"   call has already copied the data."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"The above scenarios are also valid for when the \"local_disruptive\" disruption"},{"line_number":96,"context_line":"policy value is provided, which regards to when the driver attempts to retype"},{"line_number":97,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":98,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":99,"context_line":"parameter value provided, thus, according to that parameter it may not retype"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_62ad5031","line":96,"updated":"2016-06-05 13:51:56.000000000","message":"Can you list all the policies in bullets and give a brief description of each before going to details?","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"a0b8eaf12444b30b1a7b2dd182365e6938f9c30c","unresolved":false,"context_lines":[{"line_number":93,"context_line":"   call has already copied the data."},{"line_number":94,"context_line":""},{"line_number":95,"context_line":"The above scenarios are also valid for when the \"local_disruptive\" disruption"},{"line_number":96,"context_line":"policy value is provided, which regards to when the driver attempts to retype"},{"line_number":97,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":98,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":99,"context_line":"parameter value provided, thus, according to that parameter it may not retype"}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_8835e447","line":96,"in_reply_to":"7aa08908_62ad5031","updated":"2016-06-06 12:13:30.000000000","message":"Done, added above.","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"60a2e23f70ee69948d02731126dd9d301626abf6","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":127,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":128,"context_line":"3) (POST, 200) retype-get-progress: attempts to obtain retype progress"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"Example response::"},{"line_number":131,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_c2aa4419","line":128,"updated":"2016-06-05 13:51:56.000000000","message":"Can you list URL for these 3 APIs?","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"a0b8eaf12444b30b1a7b2dd182365e6938f9c30c","unresolved":false,"context_lines":[{"line_number":125,"context_line":""},{"line_number":126,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":127,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":128,"context_line":"3) (POST, 200) retype-get-progress: attempts to obtain retype progress"},{"line_number":129,"context_line":""},{"line_number":130,"context_line":"Example response::"},{"line_number":131,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_432c7d4a","line":128,"in_reply_to":"7aa08908_c2aa4419","updated":"2016-06-06 12:13:30.000000000","message":"Xing, since all the URLs are very similar, I had included below as \"URL: /shares/\u003cshare_id\u003e/action_name\" (although just I noticed it was incorrect, should be \"URL: /shares/\u003cshare_id\u003e/action\"), but now I added it for each one of the items, please take a look if it looks better now.","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"60a2e23f70ee69948d02731126dd9d301626abf6","unresolved":false,"context_lines":[{"line_number":164,"context_line":" disruption. \u0027local_disruptive\u0027 value specifies that disruption is allowed but"},{"line_number":165,"context_line":" the user does not want to migrate the share. Finally, \u0027migrate\u0027 values"},{"line_number":166,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":167,"context_line":" should respect this parameter."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":":share: share to be moved."},{"line_number":170,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_0263ac1b","line":167,"updated":"2016-06-05 13:51:56.000000000","message":"What is the default?","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"a0b8eaf12444b30b1a7b2dd182365e6938f9c30c","unresolved":false,"context_lines":[{"line_number":164,"context_line":" disruption. \u0027local_disruptive\u0027 value specifies that disruption is allowed but"},{"line_number":165,"context_line":" the user does not want to migrate the share. Finally, \u0027migrate\u0027 values"},{"line_number":166,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":167,"context_line":" should respect this parameter."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":":share: share to be moved."},{"line_number":170,"context_line":""}],"source_content_type":"text/x-rst","patch_set":12,"id":"7aa08908_685fd872","line":167,"in_reply_to":"7aa08908_0263ac1b","updated":"2016-06-06 12:13:30.000000000","message":"Added the default value here and to the description above.","commit_id":"415916ec71680afdca10864b7e1eef2424aa9557"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":140,"context_line":"REST API impact"},{"line_number":141,"context_line":"---------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_09e1e5fe","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":4},"updated":"2016-06-06 16:44:24.000000000","message":"Five? You sure?","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":140,"context_line":"REST API impact"},{"line_number":141,"context_line":"---------------"},{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_5c272264","line":143,"range":{"start_line":143,"start_character":0,"end_line":143,"end_character":4},"in_reply_to":"7aa08908_09e1e5fe","updated":"2016-06-06 20:48:44.000000000","message":"oops, handling too many specs at the same time o_O","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {\"retype_start\": {\"new_type\": \"foo\", ...}"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_69dea96e","line":145,"range":{"start_line":145,"start_character":10,"end_line":145,"end_character":13},"updated":"2016-06-06 16:44:24.000000000","message":"It is not the only possible answer. Same below.","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":142,"context_line":""},{"line_number":143,"context_line":"Five user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {\"retype_start\": {\"new_type\": \"foo\", ...}"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_7c73fee7","line":145,"range":{"start_line":145,"start_character":10,"end_line":145,"end_character":13},"in_reply_to":"7aa08908_69dea96e","updated":"2016-06-06 20:48:44.000000000","message":"Done","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {\"retype_start\": {\"new_type\": \"foo\", ...}"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_89b5d532","line":148,"range":{"start_line":148,"start_character":43,"end_line":148,"end_character":46},"updated":"2016-06-06 16:44:24.000000000","message":"How to understand these \"...\"? We expect something else here? If yes, then what is it? disruption-policy?","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":145,"context_line":"1) (POST, 202) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {\"retype_start\": {\"new_type\": \"foo\", ...}"},{"line_number":149,"context_line":""},{"line_number":150,"context_line":"2) (POST, 202) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":151,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_3cafb695","line":148,"range":{"start_line":148,"start_character":43,"end_line":148,"end_character":46},"in_reply_to":"7aa08908_89b5d532","updated":"2016-06-06 20:48:44.000000000","message":"Done","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":293,"context_line":"        :param context: The \u0027context.RequestContext\u0027 object for the request."},{"line_number":294,"context_line":"        :param share_ref: Reference to the share being retyped."},{"line_number":295,"context_line":"        :param share_server: Share server model or None."},{"line_number":296,"context_line":"        :return: A dictionary with \u0027total_progress\u0027 field containing the"},{"line_number":297,"context_line":"        percentage value."},{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        raises NotImplementedError()."}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_89a9557e","line":297,"range":{"start_line":296,"start_character":8,"end_line":297,"end_character":25},"updated":"2016-06-06 16:44:24.000000000","message":"API example above has more data. Which statement is correct?","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":293,"context_line":"        :param context: The \u0027context.RequestContext\u0027 object for the request."},{"line_number":294,"context_line":"        :param share_ref: Reference to the share being retyped."},{"line_number":295,"context_line":"        :param share_server: Share server model or None."},{"line_number":296,"context_line":"        :return: A dictionary with \u0027total_progress\u0027 field containing the"},{"line_number":297,"context_line":"        percentage value."},{"line_number":298,"context_line":"        \"\"\""},{"line_number":299,"context_line":""},{"line_number":300,"context_line":"        raises NotImplementedError()."}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_1c611a3a","line":297,"range":{"start_line":296,"start_character":8,"end_line":297,"end_character":25},"in_reply_to":"7aa08908_89a9557e","updated":"2016-06-06 20:48:44.000000000","message":"Done","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":351,"context_line":""},{"line_number":352,"context_line":"Check if new type is the same as current type:"},{"line_number":353,"context_line":""},{"line_number":354,"context_line":"* if True, return 200 (Success)."},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"Check if share is busy with another task:"},{"line_number":357,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_09160555","line":354,"range":{"start_line":354,"start_character":2,"end_line":354,"end_character":31},"updated":"2016-06-06 16:44:24.000000000","message":"Why success? API is not able to proceed with request and should inform that it is attempt to retype to the already used type.","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":351,"context_line":""},{"line_number":352,"context_line":"Check if new type is the same as current type:"},{"line_number":353,"context_line":""},{"line_number":354,"context_line":"* if True, return 200 (Success)."},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"Check if share is busy with another task:"},{"line_number":357,"context_line":""}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_dc04b2c1","line":354,"range":{"start_line":354,"start_character":2,"end_line":354,"end_character":31},"in_reply_to":"7aa08908_09160555","updated":"2016-06-06 20:48:44.000000000","message":"See PS #8","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":370,"context_line":""},{"line_number":371,"context_line":"Check if there are snapshots:"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"* If there are, return error 409 (Conflict). Migration has to support migrating"},{"line_number":374,"context_line":"  shares with snaphots before retype can support them as well."},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"If all validations succeed, it should set task_state to RETYPE_STARTING and"},{"line_number":377,"context_line":"invoke the scheduler asynchronously to validate if the current host supports"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_098725d8","line":374,"range":{"start_line":373,"start_character":2,"end_line":374,"end_character":62},"updated":"2016-06-06 16:44:24.000000000","message":"Why it is postponed? It is very big use case, IMHO.","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":370,"context_line":""},{"line_number":371,"context_line":"Check if there are snapshots:"},{"line_number":372,"context_line":""},{"line_number":373,"context_line":"* If there are, return error 409 (Conflict). Migration has to support migrating"},{"line_number":374,"context_line":"  shares with snaphots before retype can support them as well."},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"If all validations succeed, it should set task_state to RETYPE_STARTING and"},{"line_number":377,"context_line":"invoke the scheduler asynchronously to validate if the current host supports"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_5c59e2fd","line":374,"range":{"start_line":373,"start_character":2,"end_line":374,"end_character":62},"in_reply_to":"7aa08908_098725d8","updated":"2016-06-06 20:48:44.000000000","message":"at this moment it is not part of this proposal, and so far we have not worked on the details for migration to support it yet. What we could do is let the driver handle if the disruption policy is not \"migrate\". What do you think?","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":413,"context_line":"-----------"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"Primary assignee:"},{"line_number":416,"context_line":"  ganso"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"Work Items"},{"line_number":419,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_49ac8d35","line":416,"range":{"start_line":416,"start_character":2,"end_line":416,"end_character":7},"updated":"2016-06-06 16:44:24.000000000","message":"You are the only assignee? For manila-ui too?","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":413,"context_line":"-----------"},{"line_number":414,"context_line":""},{"line_number":415,"context_line":"Primary assignee:"},{"line_number":416,"context_line":"  ganso"},{"line_number":417,"context_line":""},{"line_number":418,"context_line":"Work Items"},{"line_number":419,"context_line":"----------"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_c1d7a9eb","line":416,"range":{"start_line":416,"start_character":2,"end_line":416,"end_character":7},"in_reply_to":"7aa08908_49ac8d35","updated":"2016-06-06 20:48:44.000000000","message":"yes :)","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"49f00325cfaa301d846ae605c938f79717280246","unresolved":false,"context_lines":[{"line_number":432,"context_line":"Testing"},{"line_number":433,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"* Standard unit tests"},{"line_number":436,"context_line":"* Tempest tests"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_c966bd28","line":435,"range":{"start_line":435,"start_character":2,"end_line":435,"end_character":10},"updated":"2016-06-06 16:44:24.000000000","message":"Please, avoid using that confusing \"standard\" thing.","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"36843810a1c18a3b9420ff0cfc92f67dc3a22f2d","unresolved":false,"context_lines":[{"line_number":432,"context_line":"Testing"},{"line_number":433,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":434,"context_line":""},{"line_number":435,"context_line":"* Standard unit tests"},{"line_number":436,"context_line":"* Tempest tests"},{"line_number":437,"context_line":""},{"line_number":438,"context_line":"Documentation Impact"}],"source_content_type":"text/x-rst","patch_set":13,"id":"7aa08908_81692128","line":435,"range":{"start_line":435,"start_character":2,"end_line":435,"end_character":10},"in_reply_to":"7aa08908_c966bd28","updated":"2016-06-06 20:48:44.000000000","message":"Done","commit_id":"65b41f28a867761281ee5fdc6578a1e922566d37"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Since retype may be disruptive, it was designed with a 2-phase possibility in"},{"line_number":96,"context_line":"mind. Consider the two distinct scenarios where a migration is necessary to"},{"line_number":97,"context_line":"retype and the \"--complete\" parameter assume True and False values"},{"line_number":98,"context_line":"respectively:"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"1) user invokes retype-start with \"migrate\" disruption policy, and for the"},{"line_number":101,"context_line":"   considered type it results in the share being retyped through migration."}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_9b306603","line":98,"range":{"start_line":97,"start_character":38,"end_line":98,"end_character":12},"updated":"2016-06-07 02:44:56.000000000","message":"\"is False\"","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Since retype may be disruptive, it was designed with a 2-phase possibility in"},{"line_number":96,"context_line":"mind. Consider the two distinct scenarios where a migration is necessary to"},{"line_number":97,"context_line":"retype and the \"--complete\" parameter assume True and False values"},{"line_number":98,"context_line":"respectively:"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"1) user invokes retype-start with \"migrate\" disruption policy, and for the"},{"line_number":101,"context_line":"   considered type it results in the share being retyped through migration."}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_7b5e4177","line":98,"range":{"start_line":97,"start_character":38,"end_line":98,"end_character":12},"in_reply_to":"7aa08908_9b306603","updated":"2016-06-07 12:21:17.000000000","message":"sorry Goutham I don\u0027t understand what you mean by \"is False\". Below, number (1) is complete\u003dTrue, and number (2) is complete\u003dFalse, as stated.","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":116,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":117,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"},{"line_number":120,"context_line":"above."},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_fb3ecad8","line":119,"range":{"start_line":119,"start_character":13,"end_line":119,"end_character":14},"updated":"2016-06-07 02:44:56.000000000","message":"nit: \u0027would require\u0027 or \u0027may require\u0027","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":116,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":117,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"},{"line_number":120,"context_line":"above."},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Alternatives"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_bbfee935","line":119,"range":{"start_line":119,"start_character":13,"end_line":119,"end_character":14},"in_reply_to":"7aa08908_fb3ecad8","updated":"2016-06-07 12:21:17.000000000","message":"Done","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"},{"line_number":120,"context_line":"above."},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Alternatives"},{"line_number":123,"context_line":"------------"},{"line_number":124,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_db182e87","line":121,"range":{"start_line":121,"start_character":0,"end_line":121,"end_character":0},"updated":"2016-06-07 02:44:56.000000000","message":"What about a scenario when, i ask to retype from type A to type B; and the same storage pool supports type B as well.. but the driver doesn\u0027t implement retype? What is the fallback mechanism? Just change the share_type?","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"},{"line_number":120,"context_line":"above."},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"Alternatives"},{"line_number":123,"context_line":"------------"},{"line_number":124,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5b326511","line":121,"range":{"start_line":121,"start_character":0,"end_line":121,"end_character":0},"in_reply_to":"7aa08908_db182e87","updated":"2016-06-07 12:21:17.000000000","message":"no, it would be migration. There is no way to implement a generic retype without requiring the backend to do anything or assume that the extra-specs change really is equivalent, as Ben stated in Austin, an admin could have changed the share type extra-specs after the share was created, but the actual share reflects the previous set of extra-specs.","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":143,"context_line":"Four user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202, 400, 409) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {"},{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_fe2358a5","line":146,"range":{"start_line":146,"start_character":0,"end_line":146,"end_character":0},"updated":"2016-06-07 02:44:56.000000000","message":"You may want to indent these code blocks for better formatting in the result","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":143,"context_line":"Four user-facing new API methods are introduced:"},{"line_number":144,"context_line":""},{"line_number":145,"context_line":"1) (POST, 202, 400, 409) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {"},{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_3ed78724","line":146,"range":{"start_line":146,"start_character":0,"end_line":146,"end_character":0},"in_reply_to":"7aa08908_fe2358a5","updated":"2016-06-07 12:21:17.000000000","message":"it should look good now, I usually read RSTs instead of HTMLs.","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":158,"context_line":"2) (POST, 202, 400) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":161,"context_line":"Body: {\"retype_complete\": {}}"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"3) (POST, 200, 400) retype-get-progress: attempts to obtain retype progress"},{"line_number":164,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5b0d5e3d","line":161,"range":{"start_line":161,"start_character":26,"end_line":161,"end_character":28},"updated":"2016-06-07 02:44:56.000000000","message":"null","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":158,"context_line":"2) (POST, 202, 400) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":159,"context_line":""},{"line_number":160,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":161,"context_line":"Body: {\"retype_complete\": {}}"},{"line_number":162,"context_line":""},{"line_number":163,"context_line":"3) (POST, 200, 400) retype-get-progress: attempts to obtain retype progress"},{"line_number":164,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_c16e6295","line":161,"range":{"start_line":161,"start_character":26,"end_line":161,"end_character":28},"in_reply_to":"7aa08908_5b0d5e3d","updated":"2016-06-07 12:21:17.000000000","message":"hummm for some reason I may have seen one or other request like this instead of {\"action_name\": None}... I will double check.","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":163,"context_line":"3) (POST, 200, 400) retype-get-progress: attempts to obtain retype progress"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":166,"context_line":"Body: {\"retype_get_progress\": {}}"},{"line_number":167,"context_line":""},{"line_number":168,"context_line":"Example response::"},{"line_number":169,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_1e0aa421","line":166,"range":{"start_line":166,"start_character":30,"end_line":166,"end_character":32},"updated":"2016-06-07 02:44:56.000000000","message":"null","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":178,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":179,"context_line":"Body: {\"retype_cancel\": {}}"},{"line_number":180,"context_line":""},{"line_number":181,"context_line":"API details:"},{"line_number":182,"context_line":""},{"line_number":183,"context_line":"1) ``retype-start [--complete] [--preserve_metadata] [--writable]"},{"line_number":184,"context_line":"   [--disruption-policy \u003cnondisruptive|local_disruptive|migrate\u003e] \u003cshare\u003e"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5e426c3f","line":181,"range":{"start_line":181,"start_character":0,"end_line":181,"end_character":3},"updated":"2016-06-07 02:44:56.000000000","message":"nit: These are really CLI","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":189,"context_line":""},{"line_number":190,"context_line":":preserve-metadata (defaults True): whether retype should enforce the"},{"line_number":191,"context_line":" preservation of metadata. If set to True, this will prevent fallback"},{"line_number":192,"context_line":" migration from running. Drivers should respect this parameter, if the driver"},{"line_number":193,"context_line":" is unable to preserve metadata when this parameter is set, it should abort"},{"line_number":194,"context_line":" retype."},{"line_number":195,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_fe7198a9","line":192,"range":{"start_line":192,"start_character":11,"end_line":192,"end_character":23},"updated":"2016-06-07 02:44:56.000000000","message":"nit: can remove","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":189,"context_line":""},{"line_number":190,"context_line":":preserve-metadata (defaults True): whether retype should enforce the"},{"line_number":191,"context_line":" preservation of metadata. If set to True, this will prevent fallback"},{"line_number":192,"context_line":" migration from running. Drivers should respect this parameter, if the driver"},{"line_number":193,"context_line":" is unable to preserve metadata when this parameter is set, it should abort"},{"line_number":194,"context_line":" retype."},{"line_number":195,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_1efe0b37","line":192,"range":{"start_line":192,"start_character":11,"end_line":192,"end_character":23},"in_reply_to":"7aa08908_fe7198a9","updated":"2016-06-07 12:21:17.000000000","message":"Done","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":200,"context_line":":disruption-policy: The disruption policy the user allows. \u0027nondisruptive\u0027"},{"line_number":201,"context_line":" value specifies that retype should be performed only if there can be no"},{"line_number":202,"context_line":" disruption. \u0027local_disruptive\u0027 value specifies that disruption is allowed but"},{"line_number":203,"context_line":" the user does not want to migrate the share. Finally, \u0027migrate\u0027 values"},{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_de9bfcc7","line":203,"range":{"start_line":203,"start_character":65,"end_line":203,"end_character":71},"updated":"2016-06-07 02:44:56.000000000","message":"value","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":200,"context_line":":disruption-policy: The disruption policy the user allows. \u0027nondisruptive\u0027"},{"line_number":201,"context_line":" value specifies that retype should be performed only if there can be no"},{"line_number":202,"context_line":" disruption. \u0027local_disruptive\u0027 value specifies that disruption is allowed but"},{"line_number":203,"context_line":" the user does not want to migrate the share. Finally, \u0027migrate\u0027 values"},{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_1e228b00","line":203,"range":{"start_line":203,"start_character":65,"end_line":203,"end_character":71},"in_reply_to":"7aa08908_de9bfcc7","updated":"2016-06-07 12:21:17.000000000","message":"Done","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":":share: share to be moved."},{"line_number":208,"context_line":""},{"line_number":209,"context_line":":new_type: the type the share\u0027s type should be change to."},{"line_number":210,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_fea878dd","line":207,"range":{"start_line":207,"start_character":20,"end_line":207,"end_character":25},"updated":"2016-06-07 02:44:56.000000000","message":"retyped?","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":":share: share to be moved."},{"line_number":208,"context_line":""},{"line_number":209,"context_line":":new_type: the type the share\u0027s type should be change to."},{"line_number":210,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5e7a53f2","line":207,"range":{"start_line":207,"start_character":20,"end_line":207,"end_character":25},"in_reply_to":"7aa08908_fea878dd","updated":"2016-06-07 12:21:17.000000000","message":"Done","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":211,"context_line":"2) ``retype-complete \u003cshare\u003e``"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":":share: share on which retype should be completed. Retype job must be in"},{"line_number":214,"context_line":" \u0027retype_driver_phase1_complete\u0027, \u0027data_copying_complete\u0027 or"},{"line_number":215,"context_line":" \u0027migration_driver_phase1_complete\u0027 to have its phase 2 retype invoked."},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"3) ``retype-get-progress \u003cshare\u003e``"},{"line_number":218,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_de82dc51","line":215,"range":{"start_line":214,"start_character":35,"end_line":215,"end_character":34},"updated":"2016-06-07 02:44:56.000000000","message":"Not a biggie, but this is confusing.. Can we prevent these task states if it is a retype operation?","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":211,"context_line":"2) ``retype-complete \u003cshare\u003e``"},{"line_number":212,"context_line":""},{"line_number":213,"context_line":":share: share on which retype should be completed. Retype job must be in"},{"line_number":214,"context_line":" \u0027retype_driver_phase1_complete\u0027, \u0027data_copying_complete\u0027 or"},{"line_number":215,"context_line":" \u0027migration_driver_phase1_complete\u0027 to have its phase 2 retype invoked."},{"line_number":216,"context_line":""},{"line_number":217,"context_line":"3) ``retype-get-progress \u003cshare\u003e``"},{"line_number":218,"context_line":""}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_7eec6f8f","line":215,"range":{"start_line":214,"start_character":35,"end_line":215,"end_character":34},"in_reply_to":"7aa08908_de82dc51","updated":"2016-06-07 12:21:17.000000000","message":"this would be very complicated, since every operation would be aware that it had been called from retype just to this status right, otherwise it wouldn\u0027t matter. I have not seen this in Cinder so far.","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":223,"context_line":"4) ``retype-cancel \u003cshare\u003e``"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":":share: share from which retype should be cancelled."},{"line_number":226,"context_line":" Retype job must be in \u0027retype_driver_in_progress\u0027 or \u0027data_copy_in_progress\u0027"},{"line_number":227,"context_line":" to be cancellable."},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Driver impact"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5e970c90","line":226,"range":{"start_line":226,"start_character":54,"end_line":226,"end_character":77},"updated":"2016-06-07 02:44:56.000000000","message":"same","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"a1eb143f6366d9d9b7d81b47ab321e5de4eaddd1","unresolved":false,"context_lines":[{"line_number":386,"context_line":"the new share type. If current host validation fails, the scheduler will try to"},{"line_number":387,"context_line":"find another host for the share. If no host can be found, it will set"},{"line_number":388,"context_line":"task_state to RETYPE_ERROR (no notification). Else it will invoke the share\u0027s"},{"line_number":389,"context_line":"manager also asynchronously to proceed with retype."},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"At the share manager, it will change the share\u0027s task_state to"},{"line_number":392,"context_line":"RETYPE_IN_PROGRESS and instance status to RETYPING. If host received from"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_5e738c80","line":389,"range":{"start_line":389,"start_character":8,"end_line":389,"end_character":12},"updated":"2016-06-07 02:44:56.000000000","message":"remove \u0027also\u0027..","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"e3057a9f1c98812104a2c9c9dd0408ba05c0ff4a","unresolved":false,"context_lines":[{"line_number":386,"context_line":"the new share type. If current host validation fails, the scheduler will try to"},{"line_number":387,"context_line":"find another host for the share. If no host can be found, it will set"},{"line_number":388,"context_line":"task_state to RETYPE_ERROR (no notification). Else it will invoke the share\u0027s"},{"line_number":389,"context_line":"manager also asynchronously to proceed with retype."},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"At the share manager, it will change the share\u0027s task_state to"},{"line_number":392,"context_line":"RETYPE_IN_PROGRESS and instance status to RETYPING. If host received from"}],"source_content_type":"text/x-rst","patch_set":14,"id":"7aa08908_81729aab","line":389,"range":{"start_line":389,"start_character":8,"end_line":389,"end_character":12},"in_reply_to":"7aa08908_5e738c80","updated":"2016-06-07 12:21:17.000000000","message":"Done","commit_id":"1d5e5cf308c57b880477e3e5c4e6c6bb48884777"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"3f310ee3b5b540b6caae46946a983bdf90b1cb7b","unresolved":false,"context_lines":[{"line_number":94,"context_line":""},{"line_number":95,"context_line":"Since retype may be disruptive, it was designed with a 2-phase possibility in"},{"line_number":96,"context_line":"mind. Consider the two distinct scenarios where a migration is necessary to"},{"line_number":97,"context_line":"retype and the \"--complete\" parameter assumes True and False values"},{"line_number":98,"context_line":"respectively:"},{"line_number":99,"context_line":""},{"line_number":100,"context_line":"1) user invokes retype-start with \"migrate\" disruption policy, and for the"}],"source_content_type":"text/x-rst","patch_set":15,"id":"7aa08908_27d77624","line":97,"range":{"start_line":97,"start_character":43,"end_line":97,"end_character":45},"updated":"2016-06-07 12:49:09.000000000","message":"Ah, this makes sense now.","commit_id":"9bd4c2130ecef8e5e6db0a57dc903a7629ef4911"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"e2dd714cf90ddcdd4fdaf2598d7b33c147e62b0a","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"  Body: {"},{"line_number":152,"context_line":"    \u0027retype_start\u0027: {"},{"line_number":153,"context_line":"      \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":154,"context_line":"       \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":155,"context_line":"       \u0027preserve_metadata\u0027: \u0027True\u0027,"},{"line_number":156,"context_line":"       \u0027writable\u0027: \u0027True\u0027,"}],"source_content_type":"text/x-rst","patch_set":15,"id":"7aa08908_27a2c8fd","line":153,"range":{"start_line":153,"start_character":6,"end_line":153,"end_character":24},"updated":"2016-06-07 15:57:43.000000000","message":"incompatible indentation","commit_id":"9bd4c2130ecef8e5e6db0a57dc903a7629ef4911"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"31026b52e66141524d47fe9ed7156c6c3f95fed8","unresolved":false,"context_lines":[{"line_number":150,"context_line":""},{"line_number":151,"context_line":"  Body: {"},{"line_number":152,"context_line":"    \u0027retype_start\u0027: {"},{"line_number":153,"context_line":"      \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":154,"context_line":"       \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":155,"context_line":"       \u0027preserve_metadata\u0027: \u0027True\u0027,"},{"line_number":156,"context_line":"       \u0027writable\u0027: \u0027True\u0027,"}],"source_content_type":"text/x-rst","patch_set":15,"id":"7aa08908_1c71a544","line":153,"range":{"start_line":153,"start_character":6,"end_line":153,"end_character":24},"in_reply_to":"7aa08908_27a2c8fd","updated":"2016-06-08 12:19:38.000000000","message":"Done","commit_id":"9bd4c2130ecef8e5e6db0a57dc903a7629ef4911"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"e2dd714cf90ddcdd4fdaf2598d7b33c147e62b0a","unresolved":false,"context_lines":[{"line_number":152,"context_line":"    \u0027retype_start\u0027: {"},{"line_number":153,"context_line":"      \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":154,"context_line":"       \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":155,"context_line":"       \u0027preserve_metadata\u0027: \u0027True\u0027,"},{"line_number":156,"context_line":"       \u0027writable\u0027: \u0027True\u0027,"},{"line_number":157,"context_line":"       \u0027complete\u0027: \u0027True\u0027,"},{"line_number":158,"context_line":"    }"},{"line_number":159,"context_line":"  }"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-rst","patch_set":15,"id":"7aa08908_c7430441","line":157,"range":{"start_line":155,"start_character":7,"end_line":157,"end_character":26},"updated":"2016-06-07 15:57:43.000000000","message":"These are expected to be strings? Or maybe booleans?","commit_id":"9bd4c2130ecef8e5e6db0a57dc903a7629ef4911"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"31026b52e66141524d47fe9ed7156c6c3f95fed8","unresolved":false,"context_lines":[{"line_number":152,"context_line":"    \u0027retype_start\u0027: {"},{"line_number":153,"context_line":"      \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":154,"context_line":"       \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":155,"context_line":"       \u0027preserve_metadata\u0027: \u0027True\u0027,"},{"line_number":156,"context_line":"       \u0027writable\u0027: \u0027True\u0027,"},{"line_number":157,"context_line":"       \u0027complete\u0027: \u0027True\u0027,"},{"line_number":158,"context_line":"    }"},{"line_number":159,"context_line":"  }"},{"line_number":160,"context_line":""}],"source_content_type":"text/x-rst","patch_set":15,"id":"7aa08908_1c9a456e","line":157,"range":{"start_line":155,"start_character":7,"end_line":157,"end_character":26},"in_reply_to":"7aa08908_c7430441","updated":"2016-06-08 12:19:38.000000000","message":"boolean, but in the request they are string, thus the use of bool_from_string is necessary.","commit_id":"9bd4c2130ecef8e5e6db0a57dc903a7629ef4911"},{"author":{"_account_id":8851,"name":"Valeriy Ponomaryov","email":"kiparis.kh@gmail.com","username":"vponomaryov"},"change_message_id":"e3536a2e271178de77910e9f73bbdb54f87e77f1","unresolved":false,"context_lines":[{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"},{"line_number":150,"context_line":"    \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":151,"context_line":"    \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":152,"context_line":"    \u0027preserve_metadata\u0027: True,"},{"line_number":153,"context_line":"    \u0027writable\u0027: True,"},{"line_number":154,"context_line":"    \u0027complete\u0027: True,"},{"line_number":155,"context_line":"  }"},{"line_number":156,"context_line":"}"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-rst","patch_set":17,"id":"7aa08908_5cf7c9d2","line":154,"range":{"start_line":152,"start_character":25,"end_line":154,"end_character":21},"updated":"2016-06-13 16:35:52.000000000","message":"json-like booleans are lowercase only \u003d)","commit_id":"f1a1b7782fa312ff5eb51d71fcbb6cc93dd08957"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"7589a3ebd8ad5cb4fb7d31ac033331f8d932c63d","unresolved":false,"context_lines":[{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"},{"line_number":150,"context_line":"    \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":151,"context_line":"    \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":152,"context_line":"    \u0027preserve_metadata\u0027: True,"},{"line_number":153,"context_line":"    \u0027writable\u0027: True,"},{"line_number":154,"context_line":"    \u0027complete\u0027: True,"},{"line_number":155,"context_line":"  }"},{"line_number":156,"context_line":"}"},{"line_number":157,"context_line":""}],"source_content_type":"text/x-rst","patch_set":17,"id":"7aa08908_d7527212","line":154,"range":{"start_line":152,"start_character":25,"end_line":154,"end_character":21},"in_reply_to":"7aa08908_5cf7c9d2","updated":"2016-06-13 16:52:46.000000000","message":"Done","commit_id":"f1a1b7782fa312ff5eb51d71fcbb6cc93dd08957"},{"author":{"_account_id":6491,"name":"xing-yang","email":"xingyang105@gmail.com","username":"xing-yang"},"change_message_id":"095d350f59d1f451d2dc9eda1d393c0f8bdd7378","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"The above scenarios are also valid for when the \"local_disruptive\" disruption"},{"line_number":115,"context_line":"policy value is provided, which regards to when the driver attempts to retype"},{"line_number":116,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":117,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_0e8dd2d2","line":116,"updated":"2016-06-14 14:26:06.000000000","message":"s/disruptely/disruptively","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5d7b5fb275a3640f08dd23fd88e3bab736ddfa2a","unresolved":false,"context_lines":[{"line_number":113,"context_line":""},{"line_number":114,"context_line":"The above scenarios are also valid for when the \"local_disruptive\" disruption"},{"line_number":115,"context_line":"policy value is provided, which regards to when the driver attempts to retype"},{"line_number":116,"context_line":"the share within the same backend, but it can only do so disruptely. This"},{"line_number":117,"context_line":"operation performed by the driver needs to comply with the \"--complete\""},{"line_number":118,"context_line":"parameter value provided, thus, according to that parameter it may not retype"},{"line_number":119,"context_line":"in 1-step and require the retype-complete command, similar to the scenario (2)"}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_7c87bbb6","line":116,"in_reply_to":"7aa08908_0e8dd2d2","updated":"2016-06-15 12:42:39.000000000","message":"Done","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"de15d4b0104bd1b98ba984378fc9d020f7bc2779","unresolved":false,"context_lines":[{"line_number":145,"context_line":"1) (POST, 202, 400, 409) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {"},{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"},{"line_number":150,"context_line":"    \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":151,"context_line":"    \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":152,"context_line":"    \u0027preserve_metadata\u0027: true,"},{"line_number":153,"context_line":"    \u0027writable\u0027: true,"},{"line_number":154,"context_line":"    \u0027complete\u0027: true,"},{"line_number":155,"context_line":"  }"},{"line_number":156,"context_line":"}"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"2) (POST, 202, 400) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":159,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_e80f7add","line":156,"range":{"start_line":148,"start_character":0,"end_line":156,"end_character":1},"updated":"2016-06-15 03:14:33.000000000","message":"Why remove with the indentation?\n\nRequest::\n \n    {\n        \u0027retype_start\u0027: {\n             \u0027new_type\u0027: \u0027foo\u0027,\n             \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,\n             \u0027preserve_metadata\u0027: true,\n             \u0027writable\u0027: true,\n             \u0027complete\u0027: true\n         }\n    }","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5d7b5fb275a3640f08dd23fd88e3bab736ddfa2a","unresolved":false,"context_lines":[{"line_number":145,"context_line":"1) (POST, 202, 400, 409) retype-start: retypes share"},{"line_number":146,"context_line":""},{"line_number":147,"context_line":"URL: /shares/\u003cshare_id\u003e/action"},{"line_number":148,"context_line":"Body: {"},{"line_number":149,"context_line":"  \u0027retype_start\u0027: {"},{"line_number":150,"context_line":"    \u0027new_type\u0027: \u0027foo\u0027,"},{"line_number":151,"context_line":"    \u0027disruption_policy\u0027: \u0027local_disruptive\u0027,"},{"line_number":152,"context_line":"    \u0027preserve_metadata\u0027: true,"},{"line_number":153,"context_line":"    \u0027writable\u0027: true,"},{"line_number":154,"context_line":"    \u0027complete\u0027: true,"},{"line_number":155,"context_line":"  }"},{"line_number":156,"context_line":"}"},{"line_number":157,"context_line":""},{"line_number":158,"context_line":"2) (POST, 202, 400) retype-complete: triggers 2nd phase of 2-phase retype"},{"line_number":159,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_fcebab79","line":156,"range":{"start_line":148,"start_character":0,"end_line":156,"end_character":1},"in_reply_to":"7aa08908_e80f7add","updated":"2016-06-15 12:42:39.000000000","message":"Done","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"de15d4b0104bd1b98ba984378fc9d020f7bc2779","unresolved":false,"context_lines":[{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":":share: share to be moved."},{"line_number":208,"context_line":""},{"line_number":209,"context_line":":new_type: the type the share\u0027s type should be change to."},{"line_number":210,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_48220e53","line":207,"range":{"start_line":207,"start_character":20,"end_line":207,"end_character":25},"updated":"2016-06-15 03:14:33.000000000","message":"retyped?","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5d7b5fb275a3640f08dd23fd88e3bab736ddfa2a","unresolved":false,"context_lines":[{"line_number":204,"context_line":" specifies that migration is allowed if necessary to retype the share. Drivers"},{"line_number":205,"context_line":" should respect this parameter. The default value is \u0027local_disruptive\u0027."},{"line_number":206,"context_line":""},{"line_number":207,"context_line":":share: share to be moved."},{"line_number":208,"context_line":""},{"line_number":209,"context_line":":new_type: the type the share\u0027s type should be change to."},{"line_number":210,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_9ce0a798","line":207,"range":{"start_line":207,"start_character":20,"end_line":207,"end_character":25},"in_reply_to":"7aa08908_48220e53","updated":"2016-06-15 12:42:39.000000000","message":"Done","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"de15d4b0104bd1b98ba984378fc9d020f7bc2779","unresolved":false,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":"4) ``retype-cancel \u003cshare\u003e``"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":":share: share from which retype should be cancelled."},{"line_number":226,"context_line":" Retype job must be in \u0027retype_driver_in_progress\u0027 or \u0027data_copy_in_progress\u0027"},{"line_number":227,"context_line":" to be cancellable."},{"line_number":228,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_e8265a65","line":225,"range":{"start_line":225,"start_character":14,"end_line":225,"end_character":18},"updated":"2016-06-15 03:14:33.000000000","message":"for","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5d7b5fb275a3640f08dd23fd88e3bab736ddfa2a","unresolved":false,"context_lines":[{"line_number":222,"context_line":""},{"line_number":223,"context_line":"4) ``retype-cancel \u003cshare\u003e``"},{"line_number":224,"context_line":""},{"line_number":225,"context_line":":share: share from which retype should be cancelled."},{"line_number":226,"context_line":" Retype job must be in \u0027retype_driver_in_progress\u0027 or \u0027data_copy_in_progress\u0027"},{"line_number":227,"context_line":" to be cancellable."},{"line_number":228,"context_line":""}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_1ceb177a","line":225,"range":{"start_line":225,"start_character":14,"end_line":225,"end_character":18},"in_reply_to":"7aa08908_e8265a65","updated":"2016-06-15 12:42:39.000000000","message":"Done","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"de15d4b0104bd1b98ba984378fc9d020f7bc2779","unresolved":false,"context_lines":[{"line_number":386,"context_line":"the new share type. If current host validation fails, the scheduler will try to"},{"line_number":387,"context_line":"find another host for the share. If no host can be found, it will set"},{"line_number":388,"context_line":"task_state to RETYPE_ERROR (no notification). Else it will invoke the share\u0027s"},{"line_number":389,"context_line":"manager also asynchronously to proceed with retype."},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"At the share manager, it will change the share\u0027s task_state to"},{"line_number":392,"context_line":"RETYPE_IN_PROGRESS and instance status to RETYPING. If host received from"}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_e8ddba41","line":389,"range":{"start_line":389,"start_character":8,"end_line":389,"end_character":13},"updated":"2016-06-15 03:14:33.000000000","message":"can remove","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5d7b5fb275a3640f08dd23fd88e3bab736ddfa2a","unresolved":false,"context_lines":[{"line_number":386,"context_line":"the new share type. If current host validation fails, the scheduler will try to"},{"line_number":387,"context_line":"find another host for the share. If no host can be found, it will set"},{"line_number":388,"context_line":"task_state to RETYPE_ERROR (no notification). Else it will invoke the share\u0027s"},{"line_number":389,"context_line":"manager also asynchronously to proceed with retype."},{"line_number":390,"context_line":""},{"line_number":391,"context_line":"At the share manager, it will change the share\u0027s task_state to"},{"line_number":392,"context_line":"RETYPE_IN_PROGRESS and instance status to RETYPING. If host received from"}],"source_content_type":"text/x-rst","patch_set":18,"id":"7aa08908_5cfd9f3a","line":389,"range":{"start_line":389,"start_character":8,"end_line":389,"end_character":13},"in_reply_to":"7aa08908_e8ddba41","updated":"2016-06-15 12:42:39.000000000","message":"Done","commit_id":"66cca6dfb1e375e26e3a79f14bbd48125b7a54a2"}]}
