)]}'
{"specs/mitaka/approved/image-import/image-import-refactor.rst":[{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"61f88452cbc078e8e4f002150304b3ac0e5714c4","unresolved":false,"context_lines":[{"line_number":531,"context_line":""},{"line_number":532,"context_line":"* Method type: PUT"},{"line_number":533,"context_line":"* Normal http response code(s): 202 (Accepted)"},{"line_number":534,"context_line":"    * The request data has been uploaded and image import continues"},{"line_number":535,"context_line":"      asynchronously; the uploaded data may or may not result in the creation"},{"line_number":536,"context_line":"      of an image in Glance."},{"line_number":537,"context_line":"* Expected error http response code(s): 401, 405, 409, 415"},{"line_number":538,"context_line":"    * 401: unauthorized"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_7e076f81","line":535,"range":{"start_line":534,"start_character":45,"end_line":535,"end_character":20},"updated":"2016-05-03 10:54:03.000000000","message":"Not sure I know how to read this part. Isn\u0027t the stage part synchronous? ie aren\u0027t any plugins triggered as part of the \u0027/import\u0027 call? (To be the same for glance/swift cases.)","commit_id":"facf94d871eafa3978956209bef90e4a568582d2"},{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"61f88452cbc078e8e4f002150304b3ac0e5714c4","unresolved":false,"context_lines":[{"line_number":533,"context_line":"* Normal http response code(s): 202 (Accepted)"},{"line_number":534,"context_line":"    * The request data has been uploaded and image import continues"},{"line_number":535,"context_line":"      asynchronously; the uploaded data may or may not result in the creation"},{"line_number":536,"context_line":"      of an image in Glance."},{"line_number":537,"context_line":"* Expected error http response code(s): 401, 405, 409, 415"},{"line_number":538,"context_line":"    * 401: unauthorized"},{"line_number":539,"context_line":"    * 405: only PUT supported for this call"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_5e48b3cc","line":536,"updated":"2016-05-03 10:54:03.000000000","message":"\u003e the uploaded data may or may not result in the creation of an image in Glance.\n\nThe image already exists. The \u0027/stage\u0027 call won\u0027t ever result in an active image. The \u0027/import\u0027 call may or may not result in an active image.","commit_id":"facf94d871eafa3978956209bef90e4a568582d2"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"022ffda1df369e8f5ac2bfe896ac8c47bb79d779","unresolved":false,"context_lines":[{"line_number":533,"context_line":"* Normal http response code(s): 202 (Accepted)"},{"line_number":534,"context_line":"    * The request data has been uploaded and image import continues"},{"line_number":535,"context_line":"      asynchronously; the uploaded data may or may not result in the creation"},{"line_number":536,"context_line":"      of an image in Glance."},{"line_number":537,"context_line":"* Expected error http response code(s): 401, 405, 409, 415"},{"line_number":538,"context_line":"    * 401: unauthorized"},{"line_number":539,"context_line":"    * 405: only PUT supported for this call"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_612fcf3e","line":536,"in_reply_to":"1a122d0e_5e48b3cc","updated":"2016-05-03 13:47:12.000000000","message":"I\u0027ll rewrite to address this and your above comment.  I was trying to explain why a 202 is appropriate, and didn\u0027t do a very good job!","commit_id":"facf94d871eafa3978956209bef90e4a568582d2"},{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"61f88452cbc078e8e4f002150304b3ac0e5714c4","unresolved":false,"context_lines":[{"line_number":1007,"context_line":"* (internal) task configuration"},{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the interface exposing import data"},{"line_number":1010,"context_line":"    processing to operators will force all processing to take place on the same"},{"line_number":1011,"context_line":"    node.  (With TaskFlow, it\u0027s possible to have tasks comprising a flow be"},{"line_number":1012,"context_line":"    processed on different nodes, but this would require each component task to"},{"line_number":1013,"context_line":"    download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects.)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_de3963f4","line":1011,"range":{"start_line":1010,"start_character":39,"end_line":1011,"end_character":9},"updated":"2016-05-03 10:54:03.000000000","message":"\u003e all processing to take place on the same node.\n\nShould we make it clearer that in aggregate processing will be spread over several nodes?\n\n\"The operator plugins which are triggered by an import call will all be executed on the same node which handles the import call.\"\n\nAlso, we envision a separate mechanism to allow public facing API nodes to redirect import calls so they don\u0027t have to perform processing.","commit_id":"facf94d871eafa3978956209bef90e4a568582d2"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"022ffda1df369e8f5ac2bfe896ac8c47bb79d779","unresolved":false,"context_lines":[{"line_number":1007,"context_line":"* (internal) task configuration"},{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the interface exposing import data"},{"line_number":1010,"context_line":"    processing to operators will force all processing to take place on the same"},{"line_number":1011,"context_line":"    node.  (With TaskFlow, it\u0027s possible to have tasks comprising a flow be"},{"line_number":1012,"context_line":"    processed on different nodes, but this would require each component task to"},{"line_number":1013,"context_line":"    download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects.)"}],"source_content_type":"text/x-rst","patch_set":1,"id":"1a122d0e_e1c91f7b","line":1011,"range":{"start_line":1010,"start_character":39,"end_line":1011,"end_character":9},"in_reply_to":"1a122d0e_de3963f4","updated":"2016-05-03 13:47:12.000000000","message":"I agree, this could use clarification.  I will steal your verbiage.","commit_id":"facf94d871eafa3978956209bef90e4a568582d2"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2d729beafbc94fa259c324022d3d77241505f0c6","unresolved":false,"context_lines":[{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"data-put"},{"line_number":492,"context_line":"********"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_a93df78f","line":489,"updated":"2016-05-05 07:32:45.000000000","message":"I probably have missed some discussion but why is this needed? Specially on the light of version aware client this feels quite unnecessary being part of our pre defined API.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"474c828fc49ae1bf7755ae51945deeb0bf6f0328","unresolved":false,"context_lines":[{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"data-put"},{"line_number":492,"context_line":"********"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_e28c0a82","line":489,"in_reply_to":"1a122d0e_9602c60a","updated":"2016-05-05 18:58:37.000000000","message":"I haven\u0027t changed this on PS 3.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c226344164261bf9efe4c0051169ba6f6c334bc8","unresolved":false,"context_lines":[{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."},{"line_number":490,"context_line":""},{"line_number":491,"context_line":"data-put"},{"line_number":492,"context_line":"********"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_9602c60a","line":489,"in_reply_to":"1a122d0e_a93df78f","updated":"2016-05-05 14:30:40.000000000","message":"The justification was that while the glance-direct-url is optional (site might not expose glance-direct), the image-import call is necessary for all methods and may be the next call made.  So it seems as important to expose in a header as the glance-direct-url.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2d729beafbc94fa259c324022d3d77241505f0c6","unresolved":false,"context_lines":[{"line_number":551,"context_line":"^^^^^^^^^^^^^^^^^^^^^"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"The exact nature of the ``stage`` (formerly, \"bikeshed\") needs to be"},{"line_number":554,"context_line":"determined.  Depending upon this implementation, it may be the case that the"},{"line_number":555,"context_line":"uploaded image data may not be persisted.  Hence, end users should be advised"},{"line_number":556,"context_line":"in any documentation that it is prudent not to delete their local copy of the"},{"line_number":557,"context_line":"submitted data until the image status has become \u0027active\u0027."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_0914ebe6","line":554,"range":{"start_line":554,"start_character":13,"end_line":554,"end_character":48},"updated":"2016-05-05 07:32:45.000000000","message":"I don\u0027t think this is just this implementation issue. IMO we should keep this advice in place for all image upload cases.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c226344164261bf9efe4c0051169ba6f6c334bc8","unresolved":false,"context_lines":[{"line_number":551,"context_line":"^^^^^^^^^^^^^^^^^^^^^"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"The exact nature of the ``stage`` (formerly, \"bikeshed\") needs to be"},{"line_number":554,"context_line":"determined.  Depending upon this implementation, it may be the case that the"},{"line_number":555,"context_line":"uploaded image data may not be persisted.  Hence, end users should be advised"},{"line_number":556,"context_line":"in any documentation that it is prudent not to delete their local copy of the"},{"line_number":557,"context_line":"submitted data until the image status has become \u0027active\u0027."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_a1a69e51","line":554,"range":{"start_line":554,"start_character":13,"end_line":554,"end_character":48},"in_reply_to":"1a122d0e_0914ebe6","updated":"2016-05-05 14:30:40.000000000","message":"That\u0027s a good point, you never know what might happen, even in those cases where we don\u0027t delete the data intentionally!","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"474c828fc49ae1bf7755ae51945deeb0bf6f0328","unresolved":false,"context_lines":[{"line_number":551,"context_line":"^^^^^^^^^^^^^^^^^^^^^"},{"line_number":552,"context_line":""},{"line_number":553,"context_line":"The exact nature of the ``stage`` (formerly, \"bikeshed\") needs to be"},{"line_number":554,"context_line":"determined.  Depending upon this implementation, it may be the case that the"},{"line_number":555,"context_line":"uploaded image data may not be persisted.  Hence, end users should be advised"},{"line_number":556,"context_line":"in any documentation that it is prudent not to delete their local copy of the"},{"line_number":557,"context_line":"submitted data until the image status has become \u0027active\u0027."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_62c63a9d","line":554,"range":{"start_line":554,"start_character":13,"end_line":554,"end_character":48},"in_reply_to":"1a122d0e_a1a69e51","updated":"2016-05-05 18:58:37.000000000","message":"Moved this warning up to where the 202 response is discussed; also there\u0027s a bullet point about this in the \"documentation\" section.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2d729beafbc94fa259c324022d3d77241505f0c6","unresolved":false,"context_lines":[{"line_number":554,"context_line":"determined.  Depending upon this implementation, it may be the case that the"},{"line_number":555,"context_line":"uploaded image data may not be persisted.  Hence, end users should be advised"},{"line_number":556,"context_line":"in any documentation that it is prudent not to delete their local copy of the"},{"line_number":557,"context_line":"submitted data until the image status has become \u0027active\u0027."},{"line_number":558,"context_line":""},{"line_number":559,"context_line":"image-detail"},{"line_number":560,"context_line":"************"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_e9e7ef0f","line":557,"updated":"2016-05-05 07:32:45.000000000","message":"Perhaps worth of mentioning in documentation that immutability is not guaranteed before active transformation either.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c226344164261bf9efe4c0051169ba6f6c334bc8","unresolved":false,"context_lines":[{"line_number":554,"context_line":"determined.  Depending upon this implementation, it may be the case that the"},{"line_number":555,"context_line":"uploaded image data may not be persisted.  Hence, end users should be advised"},{"line_number":556,"context_line":"in any documentation that it is prudent not to delete their local copy of the"},{"line_number":557,"context_line":"submitted data until the image status has become \u0027active\u0027."},{"line_number":558,"context_line":""},{"line_number":559,"context_line":"image-detail"},{"line_number":560,"context_line":"************"}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_c11c7a79","line":557,"in_reply_to":"1a122d0e_e9e7ef0f","updated":"2016-05-05 14:30:40.000000000","message":"Good point, I will add your suggestion as a bullet point in the \"Documentation\" section, below.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"ca5d96a0ceb72fa34df74867f12a7c646208f56a","unresolved":false,"context_lines":[{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the operator plugins which are"},{"line_number":1010,"context_line":"    triggered by an import call will be executed on the same node handling the"},{"line_number":1011,"context_line":"    import call.  Although TaskFlow makes it possible to have tasks comprising"},{"line_number":1012,"context_line":"    a flow be processed on different nodes, this would require each component"},{"line_number":1013,"context_line":"    task to download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_7b272a63","line":1011,"updated":"2016-05-05 02:08:27.000000000","message":"mmh.. Are we sure we want the same nodes handling the import calls to do the execution? I think it\u0027d be better for the import node to send the flow execution to a different node. This also allows for a better architecture, I believe.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c226344164261bf9efe4c0051169ba6f6c334bc8","unresolved":false,"context_lines":[{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the operator plugins which are"},{"line_number":1010,"context_line":"    triggered by an import call will be executed on the same node handling the"},{"line_number":1011,"context_line":"    import call.  Although TaskFlow makes it possible to have tasks comprising"},{"line_number":1012,"context_line":"    a flow be processed on different nodes, this would require each component"},{"line_number":1013,"context_line":"    task to download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_3c3e31b8","line":1011,"in_reply_to":"1a122d0e_3ea756a8","updated":"2016-05-05 14:30:40.000000000","message":"Stuart\u0027s correct about the intention here, but since both Flavio and Erno misunderstood, this section could obviously use a rewrite.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2d729beafbc94fa259c324022d3d77241505f0c6","unresolved":false,"context_lines":[{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the operator plugins which are"},{"line_number":1010,"context_line":"    triggered by an import call will be executed on the same node handling the"},{"line_number":1011,"context_line":"    import call.  Although TaskFlow makes it possible to have tasks comprising"},{"line_number":1012,"context_line":"    a flow be processed on different nodes, this would require each component"},{"line_number":1013,"context_line":"    task to download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_899abb60","line":1011,"in_reply_to":"1a122d0e_7b272a63","updated":"2016-05-05 07:32:45.000000000","message":"This makes sense in the direct upload cases where the data needs to flow through glance node initially and will be staged locally. I do agree with Flavio that we should not tie our front end nodes to run tasks per design.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"e62f20c973711df7e61b000f99149d8d08f96c57","unresolved":false,"context_lines":[{"line_number":1008,"context_line":""},{"line_number":1009,"context_line":"  * In order to minimize data movement, the operator plugins which are"},{"line_number":1010,"context_line":"    triggered by an import call will be executed on the same node handling the"},{"line_number":1011,"context_line":"    import call.  Although TaskFlow makes it possible to have tasks comprising"},{"line_number":1012,"context_line":"    a flow be processed on different nodes, this would require each component"},{"line_number":1013,"context_line":"    task to download, transform, and then upload the data.  This would add a"},{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_3ea756a8","line":1011,"in_reply_to":"1a122d0e_899abb60","updated":"2016-05-05 09:11:07.000000000","message":"\u003e I do agree with Flavio that we should not tie our front end nodes to run tasks per design.\n\nAgreed. But that\u0027s not being proposed. See below:\n\n\"we envision a separate mechanism to allow public facing API nodes to redirect import calls so they don\u0027t have to perform processing.\"","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"ca5d96a0ceb72fa34df74867f12a7c646208f56a","unresolved":false,"context_lines":[{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1017,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"* python-glanceclient support"},{"line_number":1020,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_db20fe4b","line":1017,"updated":"2016-05-05 02:08:27.000000000","message":"This should be the default, imho.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"c226344164261bf9efe4c0051169ba6f6c334bc8","unresolved":false,"context_lines":[{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1017,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"* python-glanceclient support"},{"line_number":1020,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_bc30819f","line":1017,"in_reply_to":"1a122d0e_3eec76ba","updated":"2016-05-05 14:30:40.000000000","message":"I\u0027m with Stuart on this, keep it simple for the MVP.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"e62f20c973711df7e61b000f99149d8d08f96c57","unresolved":false,"context_lines":[{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1017,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"* python-glanceclient support"},{"line_number":1020,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_3eec76ba","line":1017,"in_reply_to":"1a122d0e_c9c79343","updated":"2016-05-05 09:11:07.000000000","message":"For a minimum viable \u0027v1\u0027 I envisage a simple forwarding of the  api call. Once that\u0027s implemented if somebody wants to propose and implement something more complicated -- go for it.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":5202,"name":"Erno Kuvaja","email":"jokke@usr.fi","username":"jokke"},"change_message_id":"2d729beafbc94fa259c324022d3d77241505f0c6","unresolved":false,"context_lines":[{"line_number":1014,"context_line":"    significant amount of overhead, particularly for image-sized objects."},{"line_number":1015,"context_line":""},{"line_number":1016,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1017,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1018,"context_line":""},{"line_number":1019,"context_line":"* python-glanceclient support"},{"line_number":1020,"context_line":""}],"source_content_type":"text/x-rst","patch_set":2,"id":"1a122d0e_c9c79343","line":1017,"in_reply_to":"1a122d0e_db20fe4b","updated":"2016-05-05 07:32:45.000000000","message":"We quite like need finally to implement messaging between Glance api nodes to handle this and the tasks operations smoothly.","commit_id":"72c68d4c52d9f67893334fd092a3db486514dff7"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"da52dc0aff849544160b3402fe9fceb109736058","unresolved":false,"context_lines":[{"line_number":483,"context_line":"``OpenStack-image-import-url``"},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"   The value of the header is the URL to which the image-import call should be"},{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_9729c39d","line":486,"updated":"2016-05-11 18:47:06.000000000","message":"So this is telling the caller where to go after uploading the data somewhere? And not telling the caller where to put the data?","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"ad0142275d033beb06736825e8cbed7d701064b0","unresolved":false,"context_lines":[{"line_number":483,"context_line":"``OpenStack-image-import-url``"},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"   The value of the header is the URL to which the image-import call should be"},{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_edd5dc42","line":486,"in_reply_to":"dab17558_9729c39d","updated":"2016-05-11 19:13:10.000000000","message":"That\u0027s right, it\u0027s the URL to use to make the import call.  (The OpenStack-image-glance-direct-url gives you the url for where to put the data when using the glance-direct method.)","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"},{"author":{"_account_id":2472,"name":"Doug Hellmann","email":"dhellmann@redhat.com","username":"doug-hellmann"},"change_message_id":"5456f5ce9d07c320c040441d3de044d7a5662644","unresolved":false,"context_lines":[{"line_number":483,"context_line":"``OpenStack-image-import-url``"},{"line_number":484,"context_line":""},{"line_number":485,"context_line":"   The value of the header is the URL to which the image-import call should be"},{"line_number":486,"context_line":"   made after data has been made available to Glance.  This header is included"},{"line_number":487,"context_line":"   in the response for the convenience of those callers who are using an"},{"line_number":488,"context_line":"   import-method that does not require the end user to upload the image data to"},{"line_number":489,"context_line":"   Glance (for example, ``swift-local``)."}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_b90c433c","line":486,"in_reply_to":"dab17558_edd5dc42","updated":"2016-05-13 19:18:11.000000000","message":"OK, thanks.","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"8562b09bfb5abd0835f05ba99f56f9a50b9c3c9b","unresolved":false,"context_lines":[{"line_number":1022,"context_line":"    at the end of the flow."},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1025,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1026,"context_line":""},{"line_number":1027,"context_line":"* python-glanceclient support"},{"line_number":1028,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_a6c5578f","line":1025,"updated":"2016-05-08 21:43:12.000000000","message":"What kind of mechanisms are we talking about here? Is the idea to add specific HTTP/rpc calls for this?\n\nOne reason for us to also adopt taskflow was that it supports these \"distribution\" of tasks[0]. This could be orchestrated in such a way that only specific nodes will be waiting for these tasks.\n\nI don\u0027t think we should be adding new calls to handle this. If that\u0027s the idea, I\u0027d love to see that specified in this spec but I\u0027m, honestly, likely going to be opposed to the idea as I believe we should use taskflow for this instead of adding new calls.\n\n[0] http://docs.openstack.org/developer/taskflow/engines.html#workers","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"},{"author":{"_account_id":6159,"name":"Flavio Percoco Premoli","display_name":"flaper87","email":"flavio.percoco@flyrlabs.com","username":"flaper87"},"change_message_id":"b5abc17112f9bc7c1461bfff2f88f2f311952c0c","unresolved":false,"context_lines":[{"line_number":1022,"context_line":"    at the end of the flow."},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1025,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1026,"context_line":""},{"line_number":1027,"context_line":"* python-glanceclient support"},{"line_number":1028,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_5129ab88","line":1025,"in_reply_to":"dab17558_8c85c95a","updated":"2016-05-13 21:37:06.000000000","message":"mmh, that means we need to have the knowledge of internal/public endpoints somewhere and we also need to have a list of nodes we know we can talk to. \n\nThis sounds like something we\u0027d have troubles to move away from and I believe it\u0027ll make OPs deploy glance-api in non-convenient ways.\n\nI\u0027d rather do the taskflow thing right away than having this being implemented.","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"},{"author":{"_account_id":455,"name":"Stuart McLaren","email":"stuart.mclaren@hpe.com","username":"stuart-mclaren"},"change_message_id":"645c7e68401336b7fe31885be34a6ab1999b6132","unresolved":false,"context_lines":[{"line_number":1022,"context_line":"    at the end of the flow."},{"line_number":1023,"context_line":""},{"line_number":1024,"context_line":"  * Additionally, we envision a separate mechanism to allow public facing API"},{"line_number":1025,"context_line":"    nodes to redirect import calls so they don\u0027t have to perform processing."},{"line_number":1026,"context_line":""},{"line_number":1027,"context_line":"* python-glanceclient support"},{"line_number":1028,"context_line":""}],"source_content_type":"text/x-rst","patch_set":3,"id":"dab17558_8c85c95a","line":1025,"in_reply_to":"dab17558_a6c5578f","updated":"2016-05-09 09:37:42.000000000","message":"\u003e What kind of mechanisms are we talking about here?\n\nI was trying to keep it simple.\n\n* A public facing node receives an /import call.\n* It returns 202 as usual, but forwards the /import call (unmodified) to one of the internal nodes.\n\nThere\u0027s no need to add a new API call, just new code to optionally forward the /import call.","commit_id":"6f1349e551d8b8725767b34c7bbc0c446d747ec0"}]}
