)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"26b6d9486b0b88b534a81bcb7898993aa8f4adb2","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"This spec proposes changes to the current design of scheduling"},{"line_number":23,"context_line":"new shares created from snapshots. By allowing the user to choose"},{"line_number":24,"context_line":"the desired availability zone, we then optimizing its placement"},{"line_number":25,"context_line":"for the purpose of efficiency. To achieve that, will be"},{"line_number":26,"context_line":"introducing two new capabilities to prevent erroneous behavior."},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_8d74f98b","line":24,"range":{"start_line":24,"start_character":39,"end_line":24,"end_character":49},"updated":"2018-11-06 02:07:40.000000000","message":"optimize","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5dfadd835aead4209b8be088041466c45ba9680d","unresolved":false,"context_lines":[{"line_number":21,"context_line":""},{"line_number":22,"context_line":"This spec proposes changes to the current design of scheduling"},{"line_number":23,"context_line":"new shares created from snapshots. By allowing the user to choose"},{"line_number":24,"context_line":"the desired availability zone, we then optimizing its placement"},{"line_number":25,"context_line":"for the purpose of efficiency. To achieve that, will be"},{"line_number":26,"context_line":"introducing two new capabilities to prevent erroneous behavior."},{"line_number":27,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_6522c2b9","line":24,"range":{"start_line":24,"start_character":39,"end_line":24,"end_character":49},"in_reply_to":"3f79a3b5_8d74f98b","updated":"2018-11-07 15:24:23.000000000","message":"Done","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"26b6d9486b0b88b534a81bcb7898993aa8f4adb2","unresolved":false,"context_lines":[{"line_number":22,"context_line":"This spec proposes changes to the current design of scheduling"},{"line_number":23,"context_line":"new shares created from snapshots. By allowing the user to choose"},{"line_number":24,"context_line":"the desired availability zone, we then optimizing its placement"},{"line_number":25,"context_line":"for the purpose of efficiency. To achieve that, will be"},{"line_number":26,"context_line":"introducing two new capabilities to prevent erroneous behavior."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"APIImpact"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_ada0d5f3","line":25,"range":{"start_line":25,"start_character":31,"end_line":25,"end_character":55},"updated":"2018-11-06 02:07:40.000000000","message":"*we* will be introducing","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5dfadd835aead4209b8be088041466c45ba9680d","unresolved":false,"context_lines":[{"line_number":22,"context_line":"This spec proposes changes to the current design of scheduling"},{"line_number":23,"context_line":"new shares created from snapshots. By allowing the user to choose"},{"line_number":24,"context_line":"the desired availability zone, we then optimizing its placement"},{"line_number":25,"context_line":"for the purpose of efficiency. To achieve that, will be"},{"line_number":26,"context_line":"introducing two new capabilities to prevent erroneous behavior."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"APIImpact"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":3,"id":"3f79a3b5_05150e4c","line":25,"range":{"start_line":25,"start_character":31,"end_line":25,"end_character":55},"in_reply_to":"3f79a3b5_ada0d5f3","updated":"2018-11-07 15:24:23.000000000","message":"Done","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"}],"specs/stein/create-share-from-snapshot-in-another-pool.rst":[{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"26b6d9486b0b88b534a81bcb7898993aa8f4adb2","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"This spec proposes changes to the current design of scheduling new shares"},{"line_number":25,"context_line":"created from snapshots. By allowing the user to choose the desired availability"},{"line_number":26,"context_line":"zone, we then optimizing its placement for the purpose of efficiency. To"},{"line_number":27,"context_line":"achieve that, will be introducing two new capabilities to prevent erroneous"},{"line_number":28,"context_line":"behavior."},{"line_number":29,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_6d8f1d76","line":26,"range":{"start_line":26,"start_character":14,"end_line":26,"end_character":25},"updated":"2018-11-06 02:07:40.000000000","message":"optimize","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5dfadd835aead4209b8be088041466c45ba9680d","unresolved":false,"context_lines":[{"line_number":23,"context_line":""},{"line_number":24,"context_line":"This spec proposes changes to the current design of scheduling new shares"},{"line_number":25,"context_line":"created from snapshots. By allowing the user to choose the desired availability"},{"line_number":26,"context_line":"zone, we then optimizing its placement for the purpose of efficiency. To"},{"line_number":27,"context_line":"achieve that, will be introducing two new capabilities to prevent erroneous"},{"line_number":28,"context_line":"behavior."},{"line_number":29,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_c50ab627","line":26,"range":{"start_line":26,"start_character":14,"end_line":26,"end_character":25},"in_reply_to":"3f79a3b5_6d8f1d76","updated":"2018-11-07 15:24:23.000000000","message":"Done","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"26b6d9486b0b88b534a81bcb7898993aa8f4adb2","unresolved":false,"context_lines":[{"line_number":35,"context_line":"``use_scheduler_creating_share_from_snapshot`` that controls whether the"},{"line_number":36,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":37,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":38,"context_line":"disabled by default and is crucial to be set so for drivers that currently"},{"line_number":39,"context_line":"cannot create shares anywhere other than the source pool. When enabled, this"},{"line_number":40,"context_line":"option will allow in different results:"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"* The new share from snapshot may land on the same pool. This works for all"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_ad5535c3","line":39,"range":{"start_line":38,"start_character":20,"end_line":39,"end_character":56},"updated":"2018-11-06 02:07:40.000000000","message":"Suggest s/set so/set this way/","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5dfadd835aead4209b8be088041466c45ba9680d","unresolved":false,"context_lines":[{"line_number":35,"context_line":"``use_scheduler_creating_share_from_snapshot`` that controls whether the"},{"line_number":36,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":37,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":38,"context_line":"disabled by default and is crucial to be set so for drivers that currently"},{"line_number":39,"context_line":"cannot create shares anywhere other than the source pool. When enabled, this"},{"line_number":40,"context_line":"option will allow in different results:"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"* The new share from snapshot may land on the same pool. This works for all"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_e50fb235","line":39,"range":{"start_line":38,"start_character":20,"end_line":39,"end_character":56},"in_reply_to":"3f79a3b5_ad5535c3","updated":"2018-11-07 15:24:23.000000000","message":"Done","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"26b6d9486b0b88b534a81bcb7898993aa8f4adb2","unresolved":false,"context_lines":[{"line_number":37,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":38,"context_line":"disabled by default and is crucial to be set so for drivers that currently"},{"line_number":39,"context_line":"cannot create shares anywhere other than the source pool. When enabled, this"},{"line_number":40,"context_line":"option will allow in different results:"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"* The new share from snapshot may land on the same pool. This works for all"},{"line_number":43,"context_line":"  current drivers;"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_2d6125a3","line":40,"range":{"start_line":40,"start_character":7,"end_line":40,"end_character":20},"updated":"2018-11-06 02:07:40.000000000","message":"suggest s/will allow in/allows/","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"5dfadd835aead4209b8be088041466c45ba9680d","unresolved":false,"context_lines":[{"line_number":37,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":38,"context_line":"disabled by default and is crucial to be set so for drivers that currently"},{"line_number":39,"context_line":"cannot create shares anywhere other than the source pool. When enabled, this"},{"line_number":40,"context_line":"option will allow in different results:"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"* The new share from snapshot may land on the same pool. This works for all"},{"line_number":43,"context_line":"  current drivers;"}],"source_content_type":"text/x-rst","patch_set":3,"id":"3f79a3b5_85083e2e","line":40,"range":{"start_line":40,"start_character":7,"end_line":40,"end_character":20},"in_reply_to":"3f79a3b5_2d6125a3","updated":"2018-11-07 15:24:23.000000000","message":"Done","commit_id":"bc6f6d587674adb01e8ad5deb64df451dc35fab5"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Manila has the configuration option"},{"line_number":36,"context_line":"``use_scheduler_creating_share_from_snapshot`` that controls whether the"},{"line_number":37,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":38,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":39,"context_line":"disabled by default and is crucial to be set this way for drivers that"},{"line_number":40,"context_line":"currently cannot create shares anywhere other than the source pool. When"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_54b58c7f","line":37,"range":{"start_line":37,"start_character":26,"end_line":37,"end_character":76},"updated":"2018-11-12 23:33:57.000000000","message":"replace: all available pools, not just the source","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":34,"context_line":""},{"line_number":35,"context_line":"Manila has the configuration option"},{"line_number":36,"context_line":"``use_scheduler_creating_share_from_snapshot`` that controls whether the"},{"line_number":37,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":38,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":39,"context_line":"disabled by default and is crucial to be set this way for drivers that"},{"line_number":40,"context_line":"currently cannot create shares anywhere other than the source pool. When"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_ff753635","line":37,"range":{"start_line":37,"start_character":26,"end_line":37,"end_character":76},"in_reply_to":"3f79a3b5_54b58c7f","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":37,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":38,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":39,"context_line":"disabled by default and is crucial to be set this way for drivers that"},{"line_number":40,"context_line":"currently cannot create shares anywhere other than the source pool. When"},{"line_number":41,"context_line":"enabled, this option allows different results:"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"* The new share from snapshot may land on the same pool. This works for all"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_b49f40f5","line":40,"range":{"start_line":40,"start_character":0,"end_line":40,"end_character":9},"updated":"2018-11-12 23:33:57.000000000","message":"remove","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":37,"context_line":"scheduler should consider other back ends or pools other than the source one as"},{"line_number":38,"context_line":"candidates to schedule a new share created from a snapshot. This option is"},{"line_number":39,"context_line":"disabled by default and is crucial to be set this way for drivers that"},{"line_number":40,"context_line":"currently cannot create shares anywhere other than the source pool. When"},{"line_number":41,"context_line":"enabled, this option allows different results:"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"* The new share from snapshot may land on the same pool. This works for all"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_1f711247","line":40,"range":{"start_line":40,"start_character":0,"end_line":40,"end_character":9},"in_reply_to":"3f79a3b5_b49f40f5","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":41,"context_line":"enabled, this option allows different results:"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"* The new share from snapshot may land on the same pool. This works for all"},{"line_number":44,"context_line":"  current drivers;"},{"line_number":45,"context_line":"* The new share from snapshot may land on another pool in the same back end."},{"line_number":46,"context_line":"  This works for the generic driver and may work on others (we do not know"},{"line_number":47,"context_line":"  which). It will result in an error when the driver is incapable of performing"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_1464f41f","line":44,"range":{"start_line":44,"start_character":2,"end_line":44,"end_character":9},"updated":"2018-11-12 23:33:57.000000000","message":"remove","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":41,"context_line":"enabled, this option allows different results:"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"* The new share from snapshot may land on the same pool. This works for all"},{"line_number":44,"context_line":"  current drivers;"},{"line_number":45,"context_line":"* The new share from snapshot may land on another pool in the same back end."},{"line_number":46,"context_line":"  This works for the generic driver and may work on others (we do not know"},{"line_number":47,"context_line":"  which). It will result in an error when the driver is incapable of performing"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_df6aba4e","line":44,"range":{"start_line":44,"start_character":2,"end_line":44,"end_character":9},"in_reply_to":"3f79a3b5_1464f41f","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":44,"context_line":"  current drivers;"},{"line_number":45,"context_line":"* The new share from snapshot may land on another pool in the same back end."},{"line_number":46,"context_line":"  This works for the generic driver and may work on others (we do not know"},{"line_number":47,"context_line":"  which). It will result in an error when the driver is incapable of performing"},{"line_number":48,"context_line":"  this;"},{"line_number":49,"context_line":"* The new share from snapshot may land on another compatible back end. This can"},{"line_number":50,"context_line":"  work for the generic driver and is unlikely to work on others (we do not know"},{"line_number":51,"context_line":"  which). It will result in an error when the driver is incapable of performing"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_3469f0f6","line":48,"range":{"start_line":47,"start_character":10,"end_line":48,"end_character":7},"updated":"2018-11-12 23:33:57.000000000","message":"where will this error occur?","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":44,"context_line":"  current drivers;"},{"line_number":45,"context_line":"* The new share from snapshot may land on another pool in the same back end."},{"line_number":46,"context_line":"  This works for the generic driver and may work on others (we do not know"},{"line_number":47,"context_line":"  which). It will result in an error when the driver is incapable of performing"},{"line_number":48,"context_line":"  this;"},{"line_number":49,"context_line":"* The new share from snapshot may land on another compatible back end. This can"},{"line_number":50,"context_line":"  work for the generic driver and is unlikely to work on others (we do not know"},{"line_number":51,"context_line":"  which). It will result in an error when the driver is incapable of performing"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_1f96f23c","line":48,"range":{"start_line":47,"start_character":10,"end_line":48,"end_character":7},"in_reply_to":"3f79a3b5_3469f0f6","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":51,"context_line":"  which). It will result in an error when the driver is incapable of performing"},{"line_number":52,"context_line":"  this;"},{"line_number":53,"context_line":"* The new share from snapshot may land on another incompatible back end."},{"line_number":54,"context_line":"  This will certainly not work for any of the current drivers in manila."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The main benefit from enabling this option is that the scheduler can balance"},{"line_number":57,"context_line":"the space usage across different back ends. However, the caveat is that"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_b47420cf","line":54,"range":{"start_line":54,"start_character":46,"end_line":54,"end_character":53},"updated":"2018-11-12 23:33:57.000000000","message":"remove","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":51,"context_line":"  which). It will result in an error when the driver is incapable of performing"},{"line_number":52,"context_line":"  this;"},{"line_number":53,"context_line":"* The new share from snapshot may land on another incompatible back end."},{"line_number":54,"context_line":"  This will certainly not work for any of the current drivers in manila."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The main benefit from enabling this option is that the scheduler can balance"},{"line_number":57,"context_line":"the space usage across different back ends. However, the caveat is that"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_bfbd7eb3","line":54,"range":{"start_line":54,"start_character":46,"end_line":54,"end_character":53},"in_reply_to":"3f79a3b5_b47420cf","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  This will certainly not work for any of the current drivers in manila."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The main benefit from enabling this option is that the scheduler can balance"},{"line_number":57,"context_line":"the space usage across different back ends. However, the caveat is that"},{"line_number":58,"context_line":"currently the only scenario that will certainly not result in errors to the"},{"line_number":59,"context_line":"user is by only using compatible drivers that supports this. Compatibility"},{"line_number":60,"context_line":"between drivers is usually determined by:"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"* **Being from the same vendor**: storage appliances from vendor X can create"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_742d28ac","line":59,"range":{"start_line":57,"start_character":44,"end_line":59,"end_character":60},"updated":"2018-11-12 23:33:57.000000000","message":"This statement is written in a inverse-from-logic sort of way. \n\nThe configuration option ``use_scheduler_creating_share_from_snapshot`` affects the manila API. When enabled, the scheduler may schedule the new share on any back end or pool available. When using non-homogenous storage back ends, if the scheduler picks a different back end, the destination driver will fail to create the share. The failure will occur because the source snapshot is not available to the destination back end.","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":54,"context_line":"  This will certainly not work for any of the current drivers in manila."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"The main benefit from enabling this option is that the scheduler can balance"},{"line_number":57,"context_line":"the space usage across different back ends. However, the caveat is that"},{"line_number":58,"context_line":"currently the only scenario that will certainly not result in errors to the"},{"line_number":59,"context_line":"user is by only using compatible drivers that supports this. Compatibility"},{"line_number":60,"context_line":"between drivers is usually determined by:"},{"line_number":61,"context_line":""},{"line_number":62,"context_line":"* **Being from the same vendor**: storage appliances from vendor X can create"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_db2f2088","line":59,"range":{"start_line":57,"start_character":44,"end_line":59,"end_character":60},"in_reply_to":"3f79a3b5_742d28ac","updated":"2018-11-20 16:42:08.000000000","message":"Done","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":71,"context_line":"  share a common middleware or underlying service that allows them to be"},{"line_number":72,"context_line":"  compatible;"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"* **Being the same driver**: drivers are compatible only with other instances"},{"line_number":75,"context_line":"  of the same driver."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Given the compatibility restrictions, four main problems are exposed:"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_b422e0b6","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":21},"updated":"2018-11-12 23:33:57.000000000","message":"Isn\u0027t this the same as point 1? Manila doesn\u0027t have any drivers that work across storage systems.","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":71,"context_line":"  share a common middleware or underlying service that allows them to be"},{"line_number":72,"context_line":"  compatible;"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"* **Being the same driver**: drivers are compatible only with other instances"},{"line_number":75,"context_line":"  of the same driver."},{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Given the compatibility restrictions, four main problems are exposed:"},{"line_number":78,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_1f1b52cc","line":75,"range":{"start_line":74,"start_character":0,"end_line":75,"end_character":21},"in_reply_to":"3f79a3b5_b422e0b6","updated":"2018-11-20 16:42:08.000000000","message":"no. This is the most restrictive of them all.\n\n#1 works across all models within the same vendor.\n#2 only works across the same models\n#3 only works if the middleware is the same (example: both source and destination use cinder to provide volumes)\n#4 only works with exactly the same driver. Imagine that we have 2 variants of the generic driver with very different implementations.","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Given the compatibility restrictions, four main problems are exposed:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"* The fact that this functionality currently restricts clouds to use"},{"line_number":80,"context_line":"  compatible back ends to have it working;"},{"line_number":81,"context_line":"* This restriction renders the functionality useless by any cloud with"},{"line_number":82,"context_line":"  multiple incompatible back ends;"},{"line_number":83,"context_line":"* The existence of this restriction and the improbability of a production cloud"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_94fec405","line":80,"range":{"start_line":79,"start_character":0,"end_line":80,"end_character":42},"updated":"2018-11-12 23:33:57.000000000","message":"This defies logic as noted above, do we have evidence to conclude that deployers are making a choice for their back-end storage system based off an API option in manila?","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":76,"context_line":""},{"line_number":77,"context_line":"Given the compatibility restrictions, four main problems are exposed:"},{"line_number":78,"context_line":""},{"line_number":79,"context_line":"* The fact that this functionality currently restricts clouds to use"},{"line_number":80,"context_line":"  compatible back ends to have it working;"},{"line_number":81,"context_line":"* This restriction renders the functionality useless by any cloud with"},{"line_number":82,"context_line":"  multiple incompatible back ends;"},{"line_number":83,"context_line":"* The existence of this restriction and the improbability of a production cloud"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_3fe2ce9d","line":80,"range":{"start_line":79,"start_character":0,"end_line":80,"end_character":42},"in_reply_to":"3f79a3b5_94fec405","updated":"2018-11-20 16:42:08.000000000","message":"we don\u0027t have evidence to prove they are making a choice based on this, but there are only 2 outcomes:\n\n* they have backends from different vendors so this option becomes useless (the item below)\n* they don\u0027t have backends from different vendors so they can use this option if they want to and if it is supported by whatever they are using","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  compatible back ends to have it working;"},{"line_number":81,"context_line":"* This restriction renders the functionality useless by any cloud with"},{"line_number":82,"context_line":"  multiple incompatible back ends;"},{"line_number":83,"context_line":"* The existence of this restriction and the improbability of a production cloud"},{"line_number":84,"context_line":"  constraining itself to compatible drivers discourages other drivers from"},{"line_number":85,"context_line":"  implementing this functionality;"},{"line_number":86,"context_line":"* This functionality ignores the possibility of creating on a back end that is"},{"line_number":87,"context_line":"  in a different availability zone. The API currently ignores the parameter,"},{"line_number":88,"context_line":"  restricting it to the same AZ as the source share. Some drivers may be able"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_37057210","line":85,"range":{"start_line":83,"start_character":0,"end_line":85,"end_character":34},"updated":"2018-11-12 23:33:57.000000000","message":"How so?\n\ntheoretically, without the proposed changes,  if the NetApp driver wanted to implement this, they could just do it by parsing the source backend name and hiding all the implementation within the driver; manila is passing all the necessary information to the driver:  source snapshot (name, ID, snapshot.share.host), destination host (share.host)","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":80,"context_line":"  compatible back ends to have it working;"},{"line_number":81,"context_line":"* This restriction renders the functionality useless by any cloud with"},{"line_number":82,"context_line":"  multiple incompatible back ends;"},{"line_number":83,"context_line":"* The existence of this restriction and the improbability of a production cloud"},{"line_number":84,"context_line":"  constraining itself to compatible drivers discourages other drivers from"},{"line_number":85,"context_line":"  implementing this functionality;"},{"line_number":86,"context_line":"* This functionality ignores the possibility of creating on a back end that is"},{"line_number":87,"context_line":"  in a different availability zone. The API currently ignores the parameter,"},{"line_number":88,"context_line":"  restricting it to the same AZ as the source share. Some drivers may be able"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_df42ba93","line":85,"range":{"start_line":83,"start_character":0,"end_line":85,"end_character":34},"in_reply_to":"3f79a3b5_37057210","updated":"2018-11-20 16:42:08.000000000","message":"If NetApp driver wanted to implement this, the cloud would need to only have NetApp backends for this to work. This is the point I am making. Since this is so unlikely, It is hard to justify for NetApp to invest effort implementing this as it is so restrictive.","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0db43cc10e92988a56398a86dbcfd15a3b96cf15","unresolved":false,"context_lines":[{"line_number":268,"context_line":"  there is no more space available."},{"line_number":269,"context_line":""},{"line_number":270,"context_line":"* **Do not control the placement optimization by back end:** In our proposal,"},{"line_number":271,"context_line":"  we allow the admin to control whether the backend"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"* **Do not allow AZs to be specified:** This would solve the existing problems,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_d78e7e7a","line":271,"range":{"start_line":271,"start_character":44,"end_line":271,"end_character":51},"updated":"2018-11-12 23:33:57.000000000","message":"..?","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":14567,"name":"Rodrigo Barbieri","email":"rodrigo.barbieri2010@gmail.com","username":"ganso"},"change_message_id":"c7d06ab4821598f019e6e8677c9e8ea6f23cf7bf","unresolved":false,"context_lines":[{"line_number":268,"context_line":"  there is no more space available."},{"line_number":269,"context_line":""},{"line_number":270,"context_line":"* **Do not control the placement optimization by back end:** In our proposal,"},{"line_number":271,"context_line":"  we allow the admin to control whether the backend"},{"line_number":272,"context_line":""},{"line_number":273,"context_line":""},{"line_number":274,"context_line":"* **Do not allow AZs to be specified:** This would solve the existing problems,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"3f79a3b5_7fbfe678","line":271,"range":{"start_line":271,"start_character":44,"end_line":271,"end_character":51},"in_reply_to":"3f79a3b5_d78e7e7a","updated":"2018-11-20 16:42:08.000000000","message":"oops, forgot to add to git the rest of this.","commit_id":"65c65ebcacb9110919181aa2d67727ece72ef7d4"},{"author":{"_account_id":9003,"name":"Tom Barron","email":"tpb@dyncloud.net","username":"tbarron"},"change_message_id":"0052c71bb16914ccbbfa1b502cf08aa34a30d0d6","unresolved":false,"context_lines":[{"line_number":192,"context_line":""},{"line_number":193,"context_line":"The discrepancy is calculated by taking the highest weighed back end"},{"line_number":194,"context_line":"candidate\u0027s (other than the source pool) final weigh and subtracting the source"},{"line_number":195,"context_line":"pool\u0027s final weigh, and finally dividing by 10 to obtain the percentage value."},{"line_number":196,"context_line":"Examples:"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"1. Back end A, which is the source pool of the original share, has a final"}],"source_content_type":"text/x-rst","patch_set":6,"id":"3f79a3b5_6a71e6de","line":195,"range":{"start_line":195,"start_character":13,"end_line":195,"end_character":18},"updated":"2018-11-28 21:16:18.000000000","message":"weight","commit_id":"9dad8a1c38d5a886f18efd5ce57018323a7a897e"}],"specs/train/create-share-from-snapshot-in-another-pool.rst":[{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":267,"context_line":"AZ parameter is erroneously ignored when creating new shares from snapshots."},{"line_number":268,"context_line":"The proposal changes the API behavior to use the AZ parameter to determine the"},{"line_number":269,"context_line":"AZ to schedule the new share from snapshot to, therefore the AZ parameter will"},{"line_number":270,"context_line":"not be ignored anymore."},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"Driver impact"},{"line_number":273,"context_line":"-------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_f03bcdcd","line":270,"range":{"start_line":270,"start_character":22,"end_line":270,"end_character":23},"updated":"2019-06-26 17:57:35.000000000","message":"You will now check if the requested AZ isn\u0027t the same as the source share\u0027s AZ. If it isn\u0027t the same and the configuration option ``[DEFAULT]/use_scheduler_creating_share_from_snapshot`` is set to False, you will return HTTP400, Bad Request. \n\nPlease add that point here.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":267,"context_line":"AZ parameter is erroneously ignored when creating new shares from snapshots."},{"line_number":268,"context_line":"The proposal changes the API behavior to use the AZ parameter to determine the"},{"line_number":269,"context_line":"AZ to schedule the new share from snapshot to, therefore the AZ parameter will"},{"line_number":270,"context_line":"not be ignored anymore."},{"line_number":271,"context_line":""},{"line_number":272,"context_line":"Driver impact"},{"line_number":273,"context_line":"-------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_e44ab27e","line":270,"range":{"start_line":270,"start_character":22,"end_line":270,"end_character":23},"in_reply_to":"9fb8cfa7_f03bcdcd","updated":"2019-07-05 19:12:11.000000000","message":"You are right, let me know if looks better now.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":276,"context_line":"proposed feature. If the cloud administrator enables the option"},{"line_number":277,"context_line":"``use_scheduler_creating_share_from_snapshot``, the scheduler filter will"},{"line_number":278,"context_line":"guarantee that unsupported back ends will not receive these kind of requests."},{"line_number":279,"context_line":"Vendors that want to support this feature will need to change their drivers"},{"line_number":280,"context_line":"implementation to properly handle this use case."},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"Security impact"},{"line_number":283,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_70e91d18","line":280,"range":{"start_line":279,"start_character":1,"end_line":280,"end_character":48},"updated":"2019-06-26 17:57:35.000000000","message":"Can you expand here on what that implementation would look like? I can think of the following pre-requisites:\n\n1) Use the configuration option ``replication_domain`` and supply it to the scheduler in the storage pool stats.\n2) Implement a way to clone a snapshot from a source pool, the source share details are present in snapshot.share and the destination pool is present in the new share\u0027s ``host`` attribute. Any further details regarding the destination pool or backend can be obtained from the configuration file.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":276,"context_line":"proposed feature. If the cloud administrator enables the option"},{"line_number":277,"context_line":"``use_scheduler_creating_share_from_snapshot``, the scheduler filter will"},{"line_number":278,"context_line":"guarantee that unsupported back ends will not receive these kind of requests."},{"line_number":279,"context_line":"Vendors that want to support this feature will need to change their drivers"},{"line_number":280,"context_line":"implementation to properly handle this use case."},{"line_number":281,"context_line":""},{"line_number":282,"context_line":"Security impact"},{"line_number":283,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_840dfe3f","line":280,"range":{"start_line":279,"start_character":1,"end_line":280,"end_character":48},"in_reply_to":"9fb8cfa7_70e91d18","updated":"2019-07-05 19:12:11.000000000","message":"Just added these pre-requisites, including the asynchronous call for create_share_from_snapshot. I can\u0027t think on other driver impacts right now.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":290,"context_line":"New scheduler code introduced will include error notifications for when a new"},{"line_number":291,"context_line":"share from snapshot fails to be scheduled. The message and code for those"},{"line_number":292,"context_line":"notifications will continue to be ``No valid host found``."},{"line_number":293,"context_line":"The API will notify the user about erroneous usage of the AZ parameter, during"},{"line_number":294,"context_line":"the share creation from snapshot. If the former is provided when the"},{"line_number":295,"context_line":"``use_scheduler_creating_share_from_snapshot`` option is disabled, the user"},{"line_number":296,"context_line":"will be notified that a destination AZ should not be provided or that the"},{"line_number":297,"context_line":"scheduler option must be enabled instead."},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"Other end user impact"},{"line_number":300,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_10da2177","line":297,"range":{"start_line":293,"start_character":0,"end_line":297,"end_character":40},"updated":"2019-06-26 17:57:35.000000000","message":"This isn\u0027t a notification impact, please move to API Impact.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":290,"context_line":"New scheduler code introduced will include error notifications for when a new"},{"line_number":291,"context_line":"share from snapshot fails to be scheduled. The message and code for those"},{"line_number":292,"context_line":"notifications will continue to be ``No valid host found``."},{"line_number":293,"context_line":"The API will notify the user about erroneous usage of the AZ parameter, during"},{"line_number":294,"context_line":"the share creation from snapshot. If the former is provided when the"},{"line_number":295,"context_line":"``use_scheduler_creating_share_from_snapshot`` option is disabled, the user"},{"line_number":296,"context_line":"will be notified that a destination AZ should not be provided or that the"},{"line_number":297,"context_line":"scheduler option must be enabled instead."},{"line_number":298,"context_line":""},{"line_number":299,"context_line":"Other end user impact"},{"line_number":300,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_4407061e","line":297,"range":{"start_line":293,"start_character":0,"end_line":297,"end_character":40},"in_reply_to":"9fb8cfa7_10da2177","updated":"2019-07-05 19:12:11.000000000","message":"Done, thanks.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":306,"context_line":"Performance Impact"},{"line_number":307,"context_line":"------------------"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"There is no significant performance impact expected."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"Other deployer impact"},{"line_number":312,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_505df976","line":309,"range":{"start_line":309,"start_character":51,"end_line":309,"end_character":52},"updated":"2019-06-26 17:57:35.000000000","message":"Creating shares in pools other than the source pool will always involve a data copy operation, and hence is inherently slow. What if this operation takes a really long time? Can we think of an asynchronous way of interacting with the share driver?\n\n\nThe share manager calls the driver interface ``create_share_from_snapshot``. We expect that that driver call returns in reasonable time, today. However, after this spec, one of two things can happen:\n\na) The new share is requested to be on the same pool and backend as the original share/snapshot. The interaction doesn\u0027t change as it is today, the driver clones the snapshot into the new share and returns a model update to the share manager in reasonable time. \n\nb) The driver sees that the new share has to be created on a different pool or backend, this can potentially take a long time if the driver has to wait for all the data to be copied before it returns a model update to the share manager.\n\n\nTo tackle situation (b), we can allow the driver to initiate a copy, and return a model update to the share manager that the share is still in \"creating\" state. The share manager can, in regular intervals check whether the driver has finished copying the share data, and once it succeeds (or fails), it can update the database (and raise a user message in case of failure). \n\nTo enhance user experience, if a share driver returns \"creating\" in its model update to the share manager, we can raise a user message for the new share stating that the new share is being created from the snapshot, and can potentially take time proportional to the size of the old share; and that the share status will be updated when that operation completes. \n\n\nThis will ensure that there is no performance impact within the share manager. \n\n\nNow, the driver impact will change if we add this optimization, and we\u0027ll need to call that out. I would recommend using the current driver stats vehicle to include driver interface to check on status of asynchronous operations: https://github.com/openstack/manila/blob/f4fc7aa08a8b2d4e7bba02af49bd84ea30d2fcac/manila/share/manager.py#L3540","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"0be1f7ce83eefeb2c4ae293ff1080d69e83572af","unresolved":false,"context_lines":[{"line_number":306,"context_line":"Performance Impact"},{"line_number":307,"context_line":"------------------"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"There is no significant performance impact expected."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"Other deployer impact"},{"line_number":312,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_740c183b","line":309,"range":{"start_line":309,"start_character":51,"end_line":309,"end_character":52},"in_reply_to":"7faddb67_df5bc32b","updated":"2019-07-08 22:08:05.000000000","message":"It\u0027s possible that driver authors can decide to implement a synchronous call, and that might affect the share manager performance. We can only dissuade them during code review perhaps..","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":306,"context_line":"Performance Impact"},{"line_number":307,"context_line":"------------------"},{"line_number":308,"context_line":""},{"line_number":309,"context_line":"There is no significant performance impact expected."},{"line_number":310,"context_line":""},{"line_number":311,"context_line":"Other deployer impact"},{"line_number":312,"context_line":"---------------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_df5bc32b","line":309,"range":{"start_line":309,"start_character":51,"end_line":309,"end_character":52},"in_reply_to":"9fb8cfa7_505df976","updated":"2019-07-05 19:12:11.000000000","message":"As we talked on the irc meeting/channel, I agree that we might need an asynchronous call during this share creation. Will be up to the vendors decide how they should answer to this create_share_from_snapshot, synchronously or asynchronously. I updated the Proposed Changes section do include the share-manager\u0027s periodic check on shares in CREATING status. Do you think that we need to provide more details about that? Or can we let to the developers decide the better way of implementing this?","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":346,"context_line":"    * Implement enhancements to the devstack plugin to deploy the Dummy driver"},{"line_number":347,"context_line":"      with multiple AZs;"},{"line_number":348,"context_line":"    * Implement functionality in Dummy driver to validate correct scheduling."},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"* Functional tests in manila-tempest-plugin."},{"line_number":351,"context_line":""},{"line_number":352,"context_line":"* Docs update."}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_f0daede6","line":349,"range":{"start_line":349,"start_character":0,"end_line":349,"end_character":0},"updated":"2019-06-26 17:57:35.000000000","message":"We should try and implement this in a real first party backend, zfsonlinux. If we can take a stab at the initial driver interaction, I can help with the zfsonlinux implementation. Please add that however, as part of your work plan.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":346,"context_line":"    * Implement enhancements to the devstack plugin to deploy the Dummy driver"},{"line_number":347,"context_line":"      with multiple AZs;"},{"line_number":348,"context_line":"    * Implement functionality in Dummy driver to validate correct scheduling."},{"line_number":349,"context_line":""},{"line_number":350,"context_line":"* Functional tests in manila-tempest-plugin."},{"line_number":351,"context_line":""},{"line_number":352,"context_line":"* Docs update."}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_1f895b74","line":349,"range":{"start_line":349,"start_character":0,"end_line":349,"end_character":0},"in_reply_to":"9fb8cfa7_f0daede6","updated":"2019-07-05 19:12:11.000000000","message":"Sure, I decided to remove the Dummy driver here and use the zfsonlinux to validated the behavior.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":16643,"name":"Goutham Pacha Ravi","email":"gouthampravi@gmail.com","username":"gouthamr"},"change_message_id":"4c42a1c74533c429075a3306ef14b43adafcc9e3","unresolved":false,"context_lines":[{"line_number":360,"context_line":"Testing"},{"line_number":361,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":362,"context_line":""},{"line_number":363,"context_line":"The only new functional test to be added will be to create a new share from a"},{"line_number":364,"context_line":"snapshot in a given AZ different than the existing one."},{"line_number":365,"context_line":""},{"line_number":366,"context_line":"The new test will be run at the gate for the Dummy driver with Devstack plugin"}],"source_content_type":"text/x-rst","patch_set":7,"id":"9fb8cfa7_70959de3","line":363,"range":{"start_line":363,"start_character":0,"end_line":363,"end_character":77},"updated":"2019-06-26 17:57:35.000000000","message":"We certainly need more tests than the happy path testing; we can add some negative tests as well. If this feature isn\u0027t enabled, we should run the negative test that when users requests an incompatible AZ, they will get HTTP 400, from a new microversion of the manila API.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"df27d217e6bd23190ec3085fb319deb8d64889e2","unresolved":false,"context_lines":[{"line_number":360,"context_line":"Testing"},{"line_number":361,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":362,"context_line":""},{"line_number":363,"context_line":"The only new functional test to be added will be to create a new share from a"},{"line_number":364,"context_line":"snapshot in a given AZ different than the existing one."},{"line_number":365,"context_line":""},{"line_number":366,"context_line":"The new test will be run at the gate for the Dummy driver with Devstack plugin"}],"source_content_type":"text/x-rst","patch_set":7,"id":"7faddb67_df82e34f","line":363,"range":{"start_line":363,"start_character":0,"end_line":363,"end_character":77},"in_reply_to":"9fb8cfa7_70959de3","updated":"2019-07-05 19:12:11.000000000","message":"Sure, this negative tests will need to be implemented.","commit_id":"eea3009f80c622be1a9725216cb289dcb81f0b6b"}]}
