)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"f4ef2891_46d35e77","line":9,"updated":"2022-08-27 06:45:09.000000000","message":"* is no longer available","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5c452eb5_24565906","line":9,"in_reply_to":"cca69d13_152b8fd7","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"cca69d13_152b8fd7","line":9,"in_reply_to":"f4ef2891_46d35e77","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"2625d517_7fc872c6","line":10,"updated":"2022-08-27 06:45:09.000000000","message":"so this patch adds a alternative approach using file copy operations to the scenarios where the tool was required.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"d4e85849_26810a18","line":10,"in_reply_to":"2625d517_7fc872c6","updated":"2022-09-06 00:31:18.000000000","message":"done.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":7,"context_line":"NetApp NFS: Clone image using copy file operation"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"The copy offload tool is no more available, so this patch is adding"},{"line_number":10,"context_line":"to the scenarios where the tool is used an alternative approach using"},{"line_number":11,"context_line":"copy file operation. During the clone image operation, if the source"},{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"0a18a0af_2fff437b","line":10,"in_reply_to":"d4e85849_26810a18","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The copy offload code will keeping working and it will be removed in the"},{"line_number":16,"context_line":"next release (AA)."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implements: blueprint netapp-nfs-copy-offload-image"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"58d0581d_0a688988","line":15,"updated":"2022-08-27 06:45:09.000000000","message":"in the next release (Antelope).","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The copy offload code will keeping working and it will be removed in the"},{"line_number":16,"context_line":"next release (AA)."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implements: blueprint netapp-nfs-copy-offload-image"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"3266f3e2_1c1b87cf","line":15,"in_reply_to":"2ba9080c_e9a29d41","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":12,"context_line":"volume is not available in the same pool or cache, the copy file operation"},{"line_number":13,"context_line":"is called to perform the action."},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"The copy offload code will keeping working and it will be removed in the"},{"line_number":16,"context_line":"next release (AA)."},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"Implements: blueprint netapp-nfs-copy-offload-image"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"2ba9080c_e9a29d41","line":15,"in_reply_to":"58d0581d_0a688988","updated":"2022-09-06 00:31:18.000000000","message":"done.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"0904afdd7e5b78780c0c9bffb0d261b6767f1b21","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"63cd316e_3da14d47","updated":"2022-08-19 11:39:06.000000000","message":"Code changes look good. Zuul has passed. Hopefully NetApp CI will pass soon.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"cfd9a950_6eaa74a2","updated":"2022-08-27 06:45:09.000000000","message":"Hi Felipe, please see my comments inline.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":29122,"name":"Raghavendra Tilay","email":"raghavendra-uddhav.tilay@hpe.com","username":"raghavendrat"},"change_message_id":"8431b5077d9f2e2dd976aa3122e9521a26939b6d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"9b53a3cb_c8952dda","updated":"2022-08-25 09:24:30.000000000","message":"Hi Felipe/Caique,\nYou may already know: Feature freeze is on 02nd Sept.\nHopefully CI gets passed soon.\n\n","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":33301,"name":"Caique Mello","email":"caiquemellosbo@gmail.com","username":"MelloCaique"},"change_message_id":"b4ce5ebbe7c5591cc370b84a7011fd969f334d97","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"512c5e68_759592bf","updated":"2022-08-18 14:52:16.000000000","message":"run-NetApp CI","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":33301,"name":"Caique Mello","email":"caiquemellosbo@gmail.com","username":"MelloCaique"},"change_message_id":"72dac761fc64ade1607c0f4cc0972b3cee5848a1","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"bdc85c0c_5f614011","updated":"2022-08-26 18:00:23.000000000","message":"run-NetApp CI","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":33301,"name":"Caique Mello","email":"caiquemellosbo@gmail.com","username":"MelloCaique"},"change_message_id":"899630efb6167f7805dbc619b7f94f02edec4907","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"c4aa58c8_5e3c2b23","updated":"2022-08-29 15:14:20.000000000","message":"run-NetApp CI","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":33301,"name":"Caique Mello","email":"caiquemellosbo@gmail.com","username":"MelloCaique"},"change_message_id":"d6fed1f447efa629e87fa87f809fe5f7c69077dd","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"d876725f_470295dc","updated":"2022-08-18 15:14:11.000000000","message":"run-NetApp CI","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"34b35785_66173800","updated":"2022-09-06 00:31:18.000000000","message":"thanks Fernando, all comments have been solved on new patch.","commit_id":"a6b0dd2484ee3d6e53d488423351379ca8008168"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"fb3f3803901a00ee45567f8ee802206891aa69d3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"0af26ef1_0c0e4bcf","updated":"2022-09-06 15:01:21.000000000","message":"recheck: retry since failed with unrelated errors.","commit_id":"e739ecb879c4db78b3e903da1d206dfa6f6ed4b5"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"db524af9bf58e02e399a550eb1a1dedc23585d70","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3b1358f5_fa04201d","updated":"2022-09-06 18:36:59.000000000","message":"recheck: retry since failed with unrelated errors.\n","commit_id":"e739ecb879c4db78b3e903da1d206dfa6f6ed4b5"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"9da683cc80cc28233edadad08e32b21d6ae4890f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"8d828e3a_1a5f4c0b","updated":"2022-09-07 10:41:28.000000000","message":"-1 since we would need to deprecate the config option for copy offload tool path if we\u0027re planning to remove this feature in next cycle.","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"93685e1a_d055f9c5","updated":"2022-09-07 09:19:26.000000000","message":"Marking comments addressed as resolved.","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c9a5af398769bce636fc07f03aca3df5a0f0f3fa","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"95b1ed23_ba44529b","updated":"2022-09-06 18:37:28.000000000","message":"recheck: retry since failed with unrelated errors.","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"eba61fa798adda822285d16bccee7083a0c3e737","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"3e28d6c1_7d51717e","updated":"2022-09-10 19:44:32.000000000","message":"Code and tests look fine; CI systems are happy; patch deprecating the tool has already merged.","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"1ca4713cf474024ab8f900e53a66b15a6fdf75f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"65cb5e47_dee027eb","updated":"2022-09-07 18:21:59.000000000","message":"recheck: retry since failed with unrelated errors.","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"d6b88c8377f18e3bddda087e7910eddbbd0db11a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"43ec4386_7df2a88f","updated":"2022-09-08 19:07:30.000000000","message":"revision LGTM. also the copy offload tool path deprecation patch is merged.","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"ca8bd0d19974f7a494cf43805000b464abef63f3","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"8039ae5e_fdef77dd","updated":"2022-09-09 19:48:38.000000000","message":"run-NetApp CI","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"7df6f17559df4055fab444e4e4dd457c47884a9a","unresolved":true,"context_lines":[],"source_content_type":"","patch_set":5,"id":"e348419d_784e12a0","updated":"2022-09-08 14:10:12.000000000","message":"small comment, just a recommendation.","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"db4292a05feb9af7bbb9fe41488a243a04a3b0a9","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"980bb30a_c2326b36","updated":"2022-09-07 15:54:17.000000000","message":"thank rajat and yuval, fixed in the last patch. Please, could you review the patch that is deprecating the tool too ? ","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"8903a91fbeb890d5523ec6b5276b78d315a92197","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"f108fdaa_02693d0c","in_reply_to":"e348419d_784e12a0","updated":"2022-09-09 18:31:12.000000000","message":"Ack","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"}],"cinder/volume/drivers/netapp/dataontap/nfs_base.py":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":648,"context_line":"        raise NotImplementedError()"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def _copy_from_img_service(self, context, volume, image_service,"},{"line_number":651,"context_line":"                               image_id, use_deprecated_tool\u003dFalse):"},{"line_number":652,"context_line":"        raise NotImplementedError()"},{"line_number":653,"context_line":""},{"line_number":654,"context_line":"    def clone_image(self, context, volume,"}],"source_content_type":"text/x-python","patch_set":1,"id":"30e167ca_2e1ed498","line":651,"updated":"2022-08-27 06:45:09.000000000","message":"copyoffload tools is refered by its name everywere in the code. I believe it would be better to continue using it instead of calling it the \"deprecated tool\". \n\nSuggestion: use_copyoffload_tool or use_copyoffload_binaries or use_copyoffload_legacy_binaries","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":648,"context_line":"        raise NotImplementedError()"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def _copy_from_img_service(self, context, volume, image_service,"},{"line_number":651,"context_line":"                               image_id, use_deprecated_tool\u003dFalse):"},{"line_number":652,"context_line":"        raise NotImplementedError()"},{"line_number":653,"context_line":""},{"line_number":654,"context_line":"    def clone_image(self, context, volume,"}],"source_content_type":"text/x-python","patch_set":1,"id":"48718f37_3fcde32b","line":651,"in_reply_to":"30e167ca_2e1ed498","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":648,"context_line":"        raise NotImplementedError()"},{"line_number":649,"context_line":""},{"line_number":650,"context_line":"    def _copy_from_img_service(self, context, volume, image_service,"},{"line_number":651,"context_line":"                               image_id, use_deprecated_tool\u003dFalse):"},{"line_number":652,"context_line":"        raise NotImplementedError()"},{"line_number":653,"context_line":""},{"line_number":654,"context_line":"    def clone_image(self, context, volume,"}],"source_content_type":"text/x-python","patch_set":1,"id":"1dcc9b45_25ec04b8","line":651,"in_reply_to":"48718f37_3fcde32b","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_deprecated_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                         minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"}],"source_content_type":"text/x-python","patch_set":1,"id":"5cf569d7_9f512a3d","line":690,"updated":"2022-08-27 06:45:09.000000000","message":"There is any particular reason to cast col_path to bool? I think checking it directly will give the same outputs for None, empty strings, and so on.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_deprecated_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                         minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"}],"source_content_type":"text/x-python","patch_set":1,"id":"6854062f_bfed8436","line":690,"in_reply_to":"05d6fb35_67a544fe","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_deprecated_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                         minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"}],"source_content_type":"text/x-python","patch_set":1,"id":"b2d2daac_3a666596","line":690,"in_reply_to":"5cf569d7_9f512a3d","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"72e9ae82e9e77935baf4ccd51c8f38ca28c35d42","unresolved":true,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_deprecated_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                         minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"}],"source_content_type":"text/x-python","patch_set":1,"id":"05d6fb35_67a544fe","line":690,"in_reply_to":"b2d2daac_3a666596","updated":"2022-09-06 12:44:02.000000000","message":"if I don\u0027t cast to bool, the function is called passing \"None\" for the argument \"use_copyoffload_tool\", the function expects \"True\" or \"False\".","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"9da683cc80cc28233edadad08e32b21d6ae4890f","unresolved":false,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_copyoffload_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                          minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"},{"line_number":694,"context_line":"                self._do_qos_for_volume(volume, extra_specs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7fc8654d_d6901cf8","line":691,"range":{"start_line":690,"start_character":41,"end_line":691,"end_character":54},"updated":"2022-09-07 10:41:28.000000000","message":"For clarity, we could\u0027ve assigned this in a variable with a comment but since it\u0027s going to be removed in next release, might not be worth the followup\n\n    if not cloned:\n        # We will use copy offload tool if the copy offload tool\n        # path exists and the version is greater than or equal to\n        # 1.20\n        useCol \u003d bool(col_path) and (major \u003d\u003d 1 and minor \u003e\u003d 20)\n        cloned \u003d self._copy_from_img_service(\n                    context, volume, image_service, image_id,\n                    use_copyoffload_tool\u003duseCol)","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"8d334206294cbfa8c9ba39e2886927263ec3f97e","unresolved":false,"context_lines":[{"line_number":687,"context_line":"            if not cloned:"},{"line_number":688,"context_line":"                cloned \u003d self._copy_from_img_service("},{"line_number":689,"context_line":"                    context, volume, image_service, image_id,"},{"line_number":690,"context_line":"                    use_copyoffload_tool\u003d(bool(col_path) and major \u003d\u003d 1 and"},{"line_number":691,"context_line":"                                          minor \u003e\u003d 20))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"            if cloned:"},{"line_number":694,"context_line":"                self._do_qos_for_volume(volume, extra_specs)"}],"source_content_type":"text/x-python","patch_set":4,"id":"4acbb88c_f6746cb0","line":691,"range":{"start_line":690,"start_character":41,"end_line":691,"end_character":54},"in_reply_to":"7fc8654d_d6901cf8","updated":"2022-09-07 12:22:13.000000000","message":"Totally agree with rajat.\nuseCol \u003d bool(col_path) and (major \u003d\u003d 1 and minor \u003e\u003d 20)\n\nmuch more readable","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"}],"cinder/volume/drivers/netapp/dataontap/nfs_cmode.py":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using copy file.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_deprecated_tool\u003dFalse)"},{"line_number":649,"context_line":"                copied \u003d True"}],"source_content_type":"text/x-python","patch_set":1,"id":"7ed9a30f_5659f8a0","line":646,"updated":"2022-08-27 06:45:09.000000000","message":"*file copy","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using copy file.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_deprecated_tool\u003dFalse)"},{"line_number":649,"context_line":"                copied \u003d True"}],"source_content_type":"text/x-python","patch_set":1,"id":"8c9cefca_2597e9cb","line":646,"in_reply_to":"7ed9a30f_5659f8a0","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using copy file.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_deprecated_tool\u003dFalse)"},{"line_number":649,"context_line":"                copied \u003d True"}],"source_content_type":"text/x-python","patch_set":1,"id":"bdcb0535_1fcc901f","line":646,"in_reply_to":"8c9cefca_2597e9cb","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":679,"context_line":"                                use_deprecated_tool\u003dTrue):"},{"line_number":680,"context_line":"        \"\"\"Copies the remote cached image to the provided volume."},{"line_number":681,"context_line":""},{"line_number":682,"context_line":"        Executes either the copy offload binary or the copy file operation,"},{"line_number":683,"context_line":"        copying the cached image to the destination path of the provided"},{"line_number":684,"context_line":"        volume. Also registers the new copy of the image as a cached image."},{"line_number":685,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"d6119c50_e61bbdd8","line":682,"updated":"2022-08-27 06:45:09.000000000","message":"*file copy","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":679,"context_line":"                                use_deprecated_tool\u003dTrue):"},{"line_number":680,"context_line":"        \"\"\"Copies the remote cached image to the provided volume."},{"line_number":681,"context_line":""},{"line_number":682,"context_line":"        Executes either the copy offload binary or the copy file operation,"},{"line_number":683,"context_line":"        copying the cached image to the destination path of the provided"},{"line_number":684,"context_line":"        volume. Also registers the new copy of the image as a cached image."},{"line_number":685,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"e3a583b7_a31b5869","line":682,"in_reply_to":"11d87821_2479b8b3","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":679,"context_line":"                                use_deprecated_tool\u003dTrue):"},{"line_number":680,"context_line":"        \"\"\"Copies the remote cached image to the provided volume."},{"line_number":681,"context_line":""},{"line_number":682,"context_line":"        Executes either the copy offload binary or the copy file operation,"},{"line_number":683,"context_line":"        copying the cached image to the destination path of the provided"},{"line_number":684,"context_line":"        volume. Also registers the new copy of the image as a cached image."},{"line_number":685,"context_line":"        \"\"\""}],"source_content_type":"text/x-python","patch_set":1,"id":"11d87821_2479b8b3","line":682,"in_reply_to":"d6119c50_e61bbdd8","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":691,"context_line":"            self._get_destination_ip_and_path(volume))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"}],"source_content_type":"text/x-python","patch_set":1,"id":"02b73037_074850c1","line":694,"updated":"2022-08-27 06:45:09.000000000","message":"*Antelope release","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":691,"context_line":"            self._get_destination_ip_and_path(volume))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"}],"source_content_type":"text/x-python","patch_set":1,"id":"4fb8e72a_078e0e8c","line":694,"in_reply_to":"02b73037_074850c1","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":691,"context_line":"            self._get_destination_ip_and_path(volume))"},{"line_number":692,"context_line":""},{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"}],"source_content_type":"text/x-python","patch_set":1,"id":"742c1046_4bd22b98","line":694,"in_reply_to":"4fb8e72a_078e0e8c","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."},{"line_number":699,"context_line":"            self._execute(col_path, src_ip, dest_ip, src_path, dest_path,"}],"source_content_type":"text/x-python","patch_set":1,"id":"ceecdd1e_62722bd1","line":696,"updated":"2022-08-27 06:45:09.000000000","message":"nit: you are not casting col_path to bool as you do in https://review.opendev.org/c/openstack/cinder/+/847732/1/cinder/volume/drivers/netapp/dataontap/nfs_base.py#690. Would be nice to have a consistent way to check if this variable is set.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"db4292a05feb9af7bbb9fe41488a243a04a3b0a9","unresolved":false,"context_lines":[{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."},{"line_number":699,"context_line":"            self._execute(col_path, src_ip, dest_ip, src_path, dest_path,"}],"source_content_type":"text/x-python","patch_set":1,"id":"0268c676_51e8498a","line":696,"in_reply_to":"2aadd48e_b0c71bf1","updated":"2022-09-07 15:54:17.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"72e9ae82e9e77935baf4ccd51c8f38ca28c35d42","unresolved":true,"context_lines":[{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."},{"line_number":699,"context_line":"            self._execute(col_path, src_ip, dest_ip, src_path, dest_path,"}],"source_content_type":"text/x-python","patch_set":1,"id":"2aadd48e_b0c71bf1","line":696,"in_reply_to":"4c8163a8_e25a7889","updated":"2022-09-06 12:44:02.000000000","message":"actually, the line nfs_base.py:690 is different: there it is an assignment of bolean expression, while here it is evaluating it. The difference occurs when the col_path\u003dNone: the expression ends up with \"None\". During an if check it is fine, but during an assignment the value passed is \"none\" instead of a bolean (True or False). In another words, if I don\u0027t cast to bool at line #690, the function is called passing \"None\" for the argument \"use_copyoffload_tool\", the function expects \"True\" or \"False\".","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the AA release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_deprecated_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."},{"line_number":699,"context_line":"            self._execute(col_path, src_ip, dest_ip, src_path, dest_path,"}],"source_content_type":"text/x-python","patch_set":1,"id":"4c8163a8_e25a7889","line":696,"in_reply_to":"ceecdd1e_62722bd1","updated":"2022-09-06 00:31:18.000000000","message":"agree. remove the casting.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":788,"context_line":"                              dst_img_serv_path, run_as_root\u003dFalse,"},{"line_number":789,"context_line":"                              check_exit_code\u003d0)"},{"line_number":790,"context_line":"            else:"},{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"}],"source_content_type":"text/x-python","patch_set":1,"id":"836fe053_e6acd918","line":791,"updated":"2022-08-27 06:45:09.000000000","message":"*file copy","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":788,"context_line":"                              dst_img_serv_path, run_as_root\u003dFalse,"},{"line_number":789,"context_line":"                              check_exit_code\u003d0)"},{"line_number":790,"context_line":"            else:"},{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"}],"source_content_type":"text/x-python","patch_set":1,"id":"b6c7ed31_a45f13a6","line":791,"in_reply_to":"836fe053_e6acd918","updated":"2022-09-06 00:31:18.000000000","message":"done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":788,"context_line":"                              dst_img_serv_path, run_as_root\u003dFalse,"},{"line_number":789,"context_line":"                              check_exit_code\u003d0)"},{"line_number":790,"context_line":"            else:"},{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"}],"source_content_type":"text/x-python","patch_set":1,"id":"0f912dcd_cc2c27d9","line":791,"in_reply_to":"b6c7ed31_a45f13a6","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"},{"line_number":795,"context_line":"                                dest_share_path, dest_vserver,"},{"line_number":796,"context_line":"                                dest_backend_name\u003dself.backend_name,"},{"line_number":797,"context_line":"                                dest_file_name\u003dtmp_img_file)"}],"source_content_type":"text/x-python","patch_set":1,"id":"f2dc4b9d_0dfb27ef","line":794,"updated":"2022-08-27 06:45:09.000000000","message":"question: Does img_file corresponds to the volume\u0027s id?","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"},{"line_number":795,"context_line":"                                dest_share_path, dest_vserver,"},{"line_number":796,"context_line":"                                dest_backend_name\u003dself.backend_name,"},{"line_number":797,"context_line":"                                dest_file_name\u003dtmp_img_file)"}],"source_content_type":"text/x-python","patch_set":1,"id":"f687fdee_11a7326f","line":794,"in_reply_to":"ae257df2_33897286","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":791,"context_line":"                LOG.debug(\"Trying copy from image service using copy file.\")"},{"line_number":792,"context_line":"                src_volume \u003d \u0027\u0027.join(src_volume.split(\"/\", 1))"},{"line_number":793,"context_line":"                dest_share_path \u003d \u0027\u0027.join(dest_share_path.split(\"/\", 1))"},{"line_number":794,"context_line":"                self._copy_file(img_file, img_file, src_volume, src_vserver,"},{"line_number":795,"context_line":"                                dest_share_path, dest_vserver,"},{"line_number":796,"context_line":"                                dest_backend_name\u003dself.backend_name,"},{"line_number":797,"context_line":"                                dest_file_name\u003dtmp_img_file)"}],"source_content_type":"text/x-python","patch_set":1,"id":"ae257df2_33897286","line":794,"in_reply_to":"f2dc4b9d_0dfb27ef","updated":"2022-09-06 00:31:18.000000000","message":"img_file is the file of the glance image","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":1149,"context_line":"                                      \"corresponding Job UUID % doesn\u0027t \""},{"line_number":1150,"context_line":"                                      \"exist.\"))"},{"line_number":1151,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1152,"context_line":"                    status_error_msg % (volume_id, job_uuid))"},{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("}],"source_content_type":"text/x-python","patch_set":1,"id":"dbf315bf_3fd36a09","line":1152,"updated":"2022-08-27 06:45:09.000000000","message":"Error message says: \"Error copying file %s\". \n\nShouldn\u0027t you use file_name instead of volume_id? The alternative is to change the error message.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":1149,"context_line":"                                      \"corresponding Job UUID % doesn\u0027t \""},{"line_number":1150,"context_line":"                                      \"exist.\"))"},{"line_number":1151,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1152,"context_line":"                    status_error_msg % (volume_id, job_uuid))"},{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("}],"source_content_type":"text/x-python","patch_set":1,"id":"420a9d66_2647a3ed","line":1152,"in_reply_to":"533d302b_d7f4e25e","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":1149,"context_line":"                                      \"corresponding Job UUID % doesn\u0027t \""},{"line_number":1150,"context_line":"                                      \"exist.\"))"},{"line_number":1151,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1152,"context_line":"                    status_error_msg % (volume_id, job_uuid))"},{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("}],"source_content_type":"text/x-python","patch_set":1,"id":"533d302b_d7f4e25e","line":1152,"in_reply_to":"dbf315bf_3fd36a09","updated":"2022-09-06 00:31:18.000000000","message":"agree. done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1156,"context_line":"                    status_error_msg % (volume_id,"},{"line_number":1157,"context_line":"                                        copy_status[\u0027last-failure-reason\u0027]))"},{"line_number":1158,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027complete\u0027:"},{"line_number":1159,"context_line":"                raise loopingcall.LoopingCallDone()"}],"source_content_type":"text/x-python","patch_set":1,"id":"abe51fe5_47095200","line":1156,"updated":"2022-08-27 06:45:09.000000000","message":"Error copying file. Shouldn\u0027t you use file_name instead?","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1156,"context_line":"                    status_error_msg % (volume_id,"},{"line_number":1157,"context_line":"                                        copy_status[\u0027last-failure-reason\u0027]))"},{"line_number":1158,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027complete\u0027:"},{"line_number":1159,"context_line":"                raise loopingcall.LoopingCallDone()"}],"source_content_type":"text/x-python","patch_set":1,"id":"fc6811e2_0e7918fd","line":1156,"in_reply_to":"4d6e955b_81e12782","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":1153,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027destroyed\u0027:"},{"line_number":1154,"context_line":"                status_error_msg \u003d (_(\u0027Error copying file %s. %s.\u0027))"},{"line_number":1155,"context_line":"                raise na_utils.NetAppDriverException("},{"line_number":1156,"context_line":"                    status_error_msg % (volume_id,"},{"line_number":1157,"context_line":"                                        copy_status[\u0027last-failure-reason\u0027]))"},{"line_number":1158,"context_line":"            elif copy_status[\u0027job-status\u0027] \u003d\u003d \u0027complete\u0027:"},{"line_number":1159,"context_line":"                raise loopingcall.LoopingCallDone()"}],"source_content_type":"text/x-python","patch_set":1,"id":"4d6e955b_81e12782","line":1156,"in_reply_to":"abe51fe5_47095200","updated":"2022-09-06 00:31:18.000000000","message":"agree. done.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"9da683cc80cc28233edadad08e32b21d6ae4890f","unresolved":true,"context_lines":[{"line_number":692,"context_line":""},{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the Antelope release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_copyoffload_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."}],"source_content_type":"text/x-python","patch_set":4,"id":"74be8d3a_6b704e3d","line":695,"range":{"start_line":695,"start_character":38,"end_line":695,"end_character":66},"updated":"2022-09-07 10:41:28.000000000","message":"IIUC, along with the tool, this config option will be removed as well so we will need to deprecate this[1]\n\n[1] https://github.com/openstack/cinder/blob/4dda63ef7c84a7b1ef429b93c0c43cb758288b2f/cinder/volume/drivers/netapp/options.py#L128","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"db4292a05feb9af7bbb9fe41488a243a04a3b0a9","unresolved":false,"context_lines":[{"line_number":692,"context_line":""},{"line_number":693,"context_line":"        # NOTE(felipe_rodrigues): the copy offload tool code will be removed in"},{"line_number":694,"context_line":"        # the Antelope release."},{"line_number":695,"context_line":"        col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":696,"context_line":"        if use_copyoffload_tool and col_path:"},{"line_number":697,"context_line":"            # Always run copy offload as regular user, it\u0027s sufficient"},{"line_number":698,"context_line":"            # and rootwrap doesn\u0027t allow copy offload to run as root anyways."}],"source_content_type":"text/x-python","patch_set":4,"id":"9be27cc7_2af9ae2f","line":695,"range":{"start_line":695,"start_character":38,"end_line":695,"end_character":66},"in_reply_to":"74be8d3a_6b704e3d","updated":"2022-09-07 15:54:17.000000000","message":"I added to the patch commit message, the deprecation is done by a different patch [1], Btw, could you please review it too ? It\u0027s pretty simple patch.\n\n[1] https://review.opendev.org/c/openstack/cinder/+/847733","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"9da683cc80cc28233edadad08e32b21d6ae4890f","unresolved":false,"context_lines":[{"line_number":776,"context_line":"        try:"},{"line_number":777,"context_line":"            # NOTE(felipe_rodrigues): the copy offload tool code will be"},{"line_number":778,"context_line":"            # removed in the AA release."},{"line_number":779,"context_line":"            col_path \u003d self.configuration.netapp_copyoffload_tool_path"},{"line_number":780,"context_line":"            if col_path and use_copyoffload_tool:"},{"line_number":781,"context_line":"                LOG.debug(\"Trying copy from image service using copy offload.\")"},{"line_number":782,"context_line":"                dst_img_serv_path \u003d os.path.join(dest_share_path, tmp_img_file)"}],"source_content_type":"text/x-python","patch_set":4,"id":"bbd397c4_476f02c3","line":779,"range":{"start_line":779,"start_character":12,"end_line":779,"end_character":70},"updated":"2022-09-07 10:41:28.000000000","message":"isn\u0027t this already checked when assigning the use_copyoffload_tool value in clone_image method?\nBut again, this is a harmless additional check which will be removed in few months so nothing to worry about.","commit_id":"0e73bf2ba07ba5e70a24e706e04228f8c04c0b7d"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"7df6f17559df4055fab444e4e4dd457c47884a9a","unresolved":true,"context_lines":[{"line_number":642,"context_line":"                LOG.debug(\"Trying copy from cache using copy offload.\")"},{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using file copy.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_copyoffload_tool\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":5,"id":"a15dc5a6_fc84b328","line":645,"updated":"2022-09-08 14:10:12.000000000","message":"I think you can save an the \"elif\" here\n\nelif cache_copy:\n     use_copyoffload_tool \u003d bool(self.configuration.netapp_copyoffload_tool_path)\n     LOG.debug(\"Trying copy from cache using copy offload.\")\n                self._copy_from_remote_cache(volume, image_id, cache_copy, \n                use_copyoffload_tool)\n     copied \u003d True","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"77c462abb580b6af2242e3d97061bb3b79180a0f","unresolved":false,"context_lines":[{"line_number":642,"context_line":"                LOG.debug(\"Trying copy from cache using copy offload.\")"},{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using file copy.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_copyoffload_tool\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":5,"id":"bcda2534_0b8bb906","line":645,"in_reply_to":"0ce426df_0350299f","updated":"2022-09-09 18:30:31.000000000","message":"yeah, the different blocks are used to LOG  differently.","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"},{"author":{"_account_id":33612,"name":"yuval","email":"yuval@lightbitslabs.com","username":"yuval"},"change_message_id":"0ce3e588965695aa1007b5330f5f81d45cc41cc6","unresolved":true,"context_lines":[{"line_number":642,"context_line":"                LOG.debug(\"Trying copy from cache using copy offload.\")"},{"line_number":643,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy)"},{"line_number":644,"context_line":"                copied \u003d True"},{"line_number":645,"context_line":"            elif cache_copy:"},{"line_number":646,"context_line":"                LOG.debug(\"Trying copy from cache using file copy.\")"},{"line_number":647,"context_line":"                self._copy_from_remote_cache(volume, image_id, cache_copy,"},{"line_number":648,"context_line":"                                             use_copyoffload_tool\u003dFalse)"}],"source_content_type":"text/x-python","patch_set":5,"id":"0ce426df_0350299f","line":645,"in_reply_to":"a15dc5a6_fc84b328","updated":"2022-09-08 14:22:21.000000000","message":"oh I missed the log.debug is different so never mind","commit_id":"147637b63f62de3889c1c83eeacafae51ca80286"}],"releasenotes/notes/netapp-nfs-copy-offload-image-812c7152d9fe4aae.yaml":[{"author":{"_account_id":30555,"name":"Fernando Ferraz","display_name":"Fernando Ferraz","email":"fesilva@redhat.com","username":"fernandoperches"},"change_message_id":"53b10fa434e4b98d33697804a7bdbb0c083c1b9e","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    NetApp NFS driver: add an alternative approach to perform the efficient clone"},{"line_number":5,"context_line":"    image when the Glance source store and Cinder destination pool are not in the"},{"line_number":6,"context_line":"    same FlexVol, but they are in the same Cluster. Previously, the driver required"},{"line_number":7,"context_line":"    the copy offload tool for doing it efficiently, which is no more available. Now,"},{"line_number":8,"context_line":"    the operators can maintain their efficient clone image by relying on the"},{"line_number":9,"context_line":"    storage copy file operation."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"eb502262_327cf819","line":7,"updated":"2022-08-27 06:45:09.000000000","message":"no longer available","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":31721,"name":"Felipe Rodrigues","email":"felipefuty01@gmail.com","username":"felipefutty"},"change_message_id":"c844074c6bf8f3cefc5c6ef683b55ed7c5093a59","unresolved":true,"context_lines":[{"line_number":4,"context_line":"    NetApp NFS driver: add an alternative approach to perform the efficient clone"},{"line_number":5,"context_line":"    image when the Glance source store and Cinder destination pool are not in the"},{"line_number":6,"context_line":"    same FlexVol, but they are in the same Cluster. Previously, the driver required"},{"line_number":7,"context_line":"    the copy offload tool for doing it efficiently, which is no more available. Now,"},{"line_number":8,"context_line":"    the operators can maintain their efficient clone image by relying on the"},{"line_number":9,"context_line":"    storage copy file operation."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"fe143033_67d5df00","line":7,"in_reply_to":"eb502262_327cf819","updated":"2022-09-06 00:31:18.000000000","message":"done.","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"},{"author":{"_account_id":27615,"name":"Rajat Dhasmana","email":"rajatdhasmana@gmail.com","username":"whoami-rajat"},"change_message_id":"10b81e31e74a118de6d99b10fe9f39efd19d677c","unresolved":false,"context_lines":[{"line_number":4,"context_line":"    NetApp NFS driver: add an alternative approach to perform the efficient clone"},{"line_number":5,"context_line":"    image when the Glance source store and Cinder destination pool are not in the"},{"line_number":6,"context_line":"    same FlexVol, but they are in the same Cluster. Previously, the driver required"},{"line_number":7,"context_line":"    the copy offload tool for doing it efficiently, which is no more available. Now,"},{"line_number":8,"context_line":"    the operators can maintain their efficient clone image by relying on the"},{"line_number":9,"context_line":"    storage copy file operation."}],"source_content_type":"text/x-yaml","patch_set":1,"id":"a4db1fb7_873b564d","line":7,"in_reply_to":"fe143033_67d5df00","updated":"2022-09-07 09:19:26.000000000","message":"Done","commit_id":"42e6044dff49b31a5af68fec53e3fbc0231eeda1"}]}
