)]}'
{"cinder/volume/targets/lio.py":[{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6132bc465c2bee428a8b3c3f21d19b9eed47fa91","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_5a1adf6f","line":116,"updated":"2015-05-06 13:07:17.000000000","message":"Remove this second LOG instance and just make the first one LOG.exception. That will result in the same thing and be a little cleaner.\n\nAlso, the closing () should just be around the string and not include \", e\" inside it.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1e8c671bb3e2b3a9f4229e2ac97645d1cef5952d","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_c21de510","line":116,"in_reply_to":"1aca2d91_4479e592","updated":"2015-05-06 14:44:36.000000000","message":"And now I agree to.  :-)","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"99f8e3f118cf81426df94b4c43ad4518ab98333c","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_ba77b3d3","line":116,"in_reply_to":"1aca2d91_5a1adf6f","updated":"2015-05-06 13:19:51.000000000","message":"That would output something different to the logs.\n\nWith current code you would get in the logs the unicode representation of the exception, whereas with LOG.exception you would get the unicode representation as well as the traceback.\n\nI believe the intention is not to get the traceback into the logs.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"change_message_id":"221f77621a920193ab4eed7387602f2e7db81b00","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_4479e592","line":116,"in_reply_to":"1aca2d91_918dfd7d","updated":"2015-05-06 14:02:47.000000000","message":"I am agree with Sean, it should be LOG.error(_LE(\"%s\"), e)","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"1e8c671bb3e2b3a9f4229e2ac97645d1cef5952d","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_c2f605d7","line":116,"in_reply_to":"1aca2d91_918dfd7d","updated":"2015-05-06 14:44:36.000000000","message":"You are right.\n\nI had actually never tried using it this way before, I saw it in the guideline and followed it thinking this should be something new I missed before. But no, it\u0027s not something new, it\u0027s a doc typo like you said. ;-)","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"c2fc59f6ef1065f7bd6bf00e1df85a67a3f797a7","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_ce519464","line":116,"in_reply_to":"1aca2d91_aec89875","updated":"2015-05-06 13:35:56.000000000","message":"This patch was meant to fix the file not following guidelines, not to increment logging information (which is a good idea).\n\nAs for the parenthesis, since exceptions may be translatable they should be included in the _LE call and this has been changed on purpose and included in the commit message. Guideline section mentioning this: http://docs.openstack.org/developer/oslo.i18n/guidelines.html#avoid-forcing-the-translation-of-translatable-variables","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"8c2534906d8abeb8e1cd5cbcb12ef7d67c932e4b","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_aec89875","line":116,"in_reply_to":"1aca2d91_ba77b3d3","updated":"2015-05-06 13:30:19.000000000","message":"I would actually prefer to have the traceback in the log to help troubleshooting. Regardless, if it is kept as is there still is an error in the parenthesis for _LE(), so this does need another update.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"963a148d2ec2202a7b71b8c657410e756081c761","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_628f3124","line":116,"in_reply_to":"1aca2d91_c2f605d7","updated":"2015-05-06 14:46:12.000000000","message":"Just FYI so it\u0027s captured here - I\u0027ve submitted https://review.openstack.org/#/c/180550/ to fix the typo in the guidelines documentation.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"7da46b193620371ed9a66903f4fd47c380766ff5","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_918dfd7d","line":116,"in_reply_to":"1aca2d91_ce519464","updated":"2015-05-06 13:43:40.000000000","message":"That\u0027s not actually how the _Lx() markers work. They need to be around static strings. I believe that is a typo on the guidelines page.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6132bc465c2bee428a8b3c3f21d19b9eed47fa91","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":143,"context_line":"            LOG.error(_LE(\"Failed to remove iscsi target for volume \""},{"line_number":144,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":145,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":146,"context_line":"            raise exception.ISCSITargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        # We make changes persistent"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_fa7beb79","line":145,"updated":"2015-05-06 13:07:17.000000000","message":"Same.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"99f8e3f118cf81426df94b4c43ad4518ab98333c","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":143,"context_line":"            LOG.error(_LE(\"Failed to remove iscsi target for volume \""},{"line_number":144,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":145,"context_line":"            LOG.error(_LE(\"%s\", e))"},{"line_number":146,"context_line":"            raise exception.ISCSITargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        # We make changes persistent"}],"source_content_type":"text/x-python","patch_set":1,"id":"1aca2d91_1a4fc793","line":145,"in_reply_to":"1aca2d91_fa7beb79","updated":"2015-05-06 13:19:51.000000000","message":"Same reason to keep it as it is.","commit_id":"d9cea92376c419108dad525e7fd06d2d1c7402b1"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"ce966dde7e22e0e67f8dbae20dbe4ccd7cc6351a","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\"), e)"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_f920864b","line":116,"updated":"2015-05-06 20:23:49.000000000","message":"Should be LOG.exception","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"166c2bec7a9bccc68dcf93977a768f18dc002d8e","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\"), e)"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_90782af4","line":116,"in_reply_to":"1aca2d91_b591d854","updated":"2015-05-07 12:50:41.000000000","message":"My preference would be LOG.exception, but I\u0027m really fine either way.","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"9fc75861472f63cae71f9faf03c34e81e8cb0bb1","unresolved":false,"context_lines":[{"line_number":113,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":114,"context_line":"            LOG.error(_LE(\"Failed to create iscsi target for volume \""},{"line_number":115,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":116,"context_line":"            LOG.error(_LE(\"%s\"), e)"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"            raise exception.ISCSITargetCreateFailed(volume_id\u003dvol_id)"},{"line_number":119,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_b591d854","line":116,"in_reply_to":"1aca2d91_f920864b","updated":"2015-05-07 12:27:11.000000000","message":"We discussed this in previous patch:\n\n\u003e That would output something different to the logs.\n\n\u003eWith current code you would get in the logs the unicode representation of the exception, whereas with LOG.exception you would get the unicode representation as well as the traceback.\n\n\u003eI believe the intention is not to get the traceback into the logs.\n\nBut if everyone still prefers having LOG.exception I\u0027ll change it. Sean?","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":1736,"name":"Ivan Kolodyazhny","email":"e0ne@e0ne.info","username":"e0ne"},"change_message_id":"ce966dde7e22e0e67f8dbae20dbe4ccd7cc6351a","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":143,"context_line":"            LOG.error(_LE(\"Failed to remove iscsi target for volume \""},{"line_number":144,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":145,"context_line":"            LOG.error(_LE(\"%s\"), e)"},{"line_number":146,"context_line":"            raise exception.ISCSITargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        # We make changes persistent"}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_991752ed","line":145,"updated":"2015-05-06 20:23:49.000000000","message":"LOG.exception","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"9fc75861472f63cae71f9faf03c34e81e8cb0bb1","unresolved":false,"context_lines":[{"line_number":142,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":143,"context_line":"            LOG.error(_LE(\"Failed to remove iscsi target for volume \""},{"line_number":144,"context_line":"                          \"id:%s.\"), vol_id)"},{"line_number":145,"context_line":"            LOG.error(_LE(\"%s\"), e)"},{"line_number":146,"context_line":"            raise exception.ISCSITargetRemoveFailed(volume_id\u003dvol_id)"},{"line_number":147,"context_line":""},{"line_number":148,"context_line":"        # We make changes persistent"}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_95aedc83","line":145,"in_reply_to":"1aca2d91_991752ed","updated":"2015-05-07 12:27:11.000000000","message":"Same as above.","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"6b195b701a2bd4ae7cb37cb2fdcf3d4fbdf843ba","unresolved":false,"context_lines":[{"line_number":190,"context_line":"                          connector[\u0027initiator\u0027],"},{"line_number":191,"context_line":"                          run_as_root\u003dTrue)"},{"line_number":192,"context_line":"        except putils.ProcessExecutionError:"},{"line_number":193,"context_line":"            LOG.error(_LE(\"Failed to delete initiator iqn %s to target.\"),"},{"line_number":194,"context_line":"                      connector[\u0027initiator\u0027])"},{"line_number":195,"context_line":"            raise exception.ISCSITargetDetachFailed(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":196,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_576e30ca","line":193,"updated":"2015-05-06 15:50:37.000000000","message":"\"from target\" :)","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"9fc75861472f63cae71f9faf03c34e81e8cb0bb1","unresolved":false,"context_lines":[{"line_number":190,"context_line":"                          connector[\u0027initiator\u0027],"},{"line_number":191,"context_line":"                          run_as_root\u003dTrue)"},{"line_number":192,"context_line":"        except putils.ProcessExecutionError:"},{"line_number":193,"context_line":"            LOG.error(_LE(\"Failed to delete initiator iqn %s to target.\"),"},{"line_number":194,"context_line":"                      connector[\u0027initiator\u0027])"},{"line_number":195,"context_line":"            raise exception.ISCSITargetDetachFailed(volume_id\u003dvolume[\u0027id\u0027])"},{"line_number":196,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"1aca2d91_d5a454a7","line":193,"in_reply_to":"1aca2d91_576e30ca","updated":"2015-05-07 12:27:11.000000000","message":"Good catch! :-)\nI\u0027ll change it when I hear back on above LOG.exception comments.","commit_id":"1b3a6f35213bbf51b6a737c466ca531ab4614441"},{"author":{"_account_id":11904,"name":"Sean McGinnis","email":"sean.mcginnis@gmail.com","username":"SeanM"},"change_message_id":"6e826c76f4af337baf2db6a9f455472b036ad670","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                          connector[\u0027initiator\u0027],"},{"line_number":189,"context_line":"                          run_as_root\u003dTrue)"},{"line_number":190,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":191,"context_line":"            LOG.error(_LE(\"Failed to delete initiator iqn %(initiator)s to \""},{"line_number":192,"context_line":"                          \"target. Error: %(error)s\"),"},{"line_number":193,"context_line":"                      {\u0027initiator\u0027: connector[\u0027initiator\u0027], \u0027error\u0027: e})"},{"line_number":194,"context_line":"            raise exception.ISCSITargetDetachFailed(volume_id\u003dvolume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9af37de9_40656543","line":191,"updated":"2015-05-11 13:38:43.000000000","message":"Should this be LOG.exception so there is more detail in the logs?","commit_id":"dd9456deb315e3a81b4b76df8b9558547e9bc6b6"},{"author":{"_account_id":9535,"name":"Gorka Eguileor","email":"geguileo@redhat.com","username":"Gorka"},"change_message_id":"427e9f193b07d694e8a53780f83b6eb2a210137a","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                          connector[\u0027initiator\u0027],"},{"line_number":189,"context_line":"                          run_as_root\u003dTrue)"},{"line_number":190,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":191,"context_line":"            LOG.error(_LE(\"Failed to delete initiator iqn %(initiator)s to \""},{"line_number":192,"context_line":"                          \"target. Error: %(error)s\"),"},{"line_number":193,"context_line":"                      {\u0027initiator\u0027: connector[\u0027initiator\u0027], \u0027error\u0027: e})"},{"line_number":194,"context_line":"            raise exception.ISCSITargetDetachFailed(volume_id\u003dvolume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9af37de9_f971b0e1","line":191,"in_reply_to":"9af37de9_40656543","updated":"2015-05-11 14:44:17.000000000","message":"Following the same reasoning why the others have been changed yes it should.","commit_id":"dd9456deb315e3a81b4b76df8b9558547e9bc6b6"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"4671f1a2ef5007a6d7f30de4bcfa7a23a5b5daa0","unresolved":false,"context_lines":[{"line_number":188,"context_line":"                          connector[\u0027initiator\u0027],"},{"line_number":189,"context_line":"                          run_as_root\u003dTrue)"},{"line_number":190,"context_line":"        except putils.ProcessExecutionError as e:"},{"line_number":191,"context_line":"            LOG.error(_LE(\"Failed to delete initiator iqn %(initiator)s to \""},{"line_number":192,"context_line":"                          \"target. Error: %(error)s\"),"},{"line_number":193,"context_line":"                      {\u0027initiator\u0027: connector[\u0027initiator\u0027], \u0027error\u0027: e})"},{"line_number":194,"context_line":"            raise exception.ISCSITargetDetachFailed(volume_id\u003dvolume[\u0027id\u0027])"}],"source_content_type":"text/x-python","patch_set":4,"id":"9af37de9_59bc3c6c","line":191,"in_reply_to":"9af37de9_40656543","updated":"2015-05-11 14:44:13.000000000","message":"No, all of the useful information will be in the processutils exception since it came from the cinder-rtstool program.","commit_id":"dd9456deb315e3a81b4b76df8b9558547e9bc6b6"},{"author":{"_account_id":7219,"name":"git-harry","email":"git-harry@live.co.uk","username":"git-harry"},"change_message_id":"c6bb4d1f6102620f93c2fae9985746d6115cf04e","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    def _verify_rtstool(self):"},{"line_number":55,"context_line":"        try:"},{"line_number":56,"context_line":"            utils.execute(\u0027cinder-rtstool\u0027, \u0027verify\u0027)"},{"line_number":57,"context_line":"        except (OSError, putils.ProcessExecutionError):"},{"line_number":58,"context_line":"            LOG.error(_LE(\u0027cinder-rtstool is not installed correctly\u0027))"},{"line_number":59,"context_line":"            raise"},{"line_number":60,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"9af37de9_efd562b9","line":57,"updated":"2015-05-11 15:29:20.000000000","message":"Is there a reason this one hasn\u0027t also been changed to use LOG.exception?","commit_id":"948d6d87e8f09bbc3696cb0efec00f235b6cf799"}]}
