)]}'
{"cinder/volume/drivers/ibm/storwize_svc/storwize_svc_common.py":[{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"d08ab568911524489d1e864fe00db693cc57b111","unresolved":false,"context_lines":[{"line_number":1173,"context_line":"                      \u0027%(host_name)s.\u0027,"},{"line_number":1174,"context_line":"                      {\u0027volume_name\u0027: volume_name, \u0027host_name\u0027: host_name})"},{"line_number":1175,"context_line":"            return int(result_lun)"},{"line_number":1176,"context_line":"        attempts \u003d 3"},{"line_number":1177,"context_line":"        while attempts \u003e 0:"},{"line_number":1178,"context_line":"            attempts -\u003d 1"},{"line_number":1179,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_b8c40e42","line":1176,"updated":"2018-03-24 00:36:41.000000000","message":"It kind of seems like this would be better implemented as a fixed interval looping call.  Can you look into doing that instead.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1173,"context_line":"                      \u0027%(host_name)s.\u0027,"},{"line_number":1174,"context_line":"                      {\u0027volume_name\u0027: volume_name, \u0027host_name\u0027: host_name})"},{"line_number":1175,"context_line":"            return int(result_lun)"},{"line_number":1176,"context_line":"        attempts \u003d 3"},{"line_number":1177,"context_line":"        while attempts \u003e 0:"},{"line_number":1178,"context_line":"            attempts -\u003d 1"},{"line_number":1179,"context_line":"            try:"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_606f5f92","line":1176,"in_reply_to":"bf659307_b8c40e42","updated":"2018-03-27 09:44:01.000000000","message":"Hi Jay, thanks a lot for your comments, it is implemented by retrying in the new patch.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"c3c9d867158f33f5620f00bf0d31d54e7c4cfe77","unresolved":false,"context_lines":[{"line_number":1174,"context_line":"                      {\u0027volume_name\u0027: volume_name, \u0027host_name\u0027: host_name})"},{"line_number":1175,"context_line":"            return int(result_lun)"},{"line_number":1176,"context_line":"        attempts \u003d 3"},{"line_number":1177,"context_line":"        while attempts \u003e 0:"},{"line_number":1178,"context_line":"            attempts -\u003d 1"},{"line_number":1179,"context_line":"            try:"},{"line_number":1180,"context_line":"                result_lun \u003d self._get_unused_lun_id(host_name)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_e1209c4c","line":1177,"updated":"2018-03-23 18:06:31.000000000","message":"Personally I like to use cinder.utils.retry when I can but I think you would have to use retrying.Retrying here since your looking at the contents of the exception and not just that a particular exception was raised.\n\nIf you find that you need to rework this method for other reasons you might consider looking at retyring","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1174,"context_line":"                      {\u0027volume_name\u0027: volume_name, \u0027host_name\u0027: host_name})"},{"line_number":1175,"context_line":"            return int(result_lun)"},{"line_number":1176,"context_line":"        attempts \u003d 3"},{"line_number":1177,"context_line":"        while attempts \u003e 0:"},{"line_number":1178,"context_line":"            attempts -\u003d 1"},{"line_number":1179,"context_line":"            try:"},{"line_number":1180,"context_line":"                result_lun \u003d self._get_unused_lun_id(host_name)"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_60f43fd0","line":1177,"in_reply_to":"bf659307_e1209c4c","updated":"2018-03-27 09:44:01.000000000","message":"Hi Gerald, thanks a lot for your comments, it is implemented by retrying in the new patch.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"e21dfb7c2df2117288d1436352d5a33910a683c7","unresolved":false,"context_lines":[{"line_number":1187,"context_line":"                        LOG.warning("},{"line_number":1188,"context_line":"                            \u0027Retried 3 times to get the unused lun id.\u0027"},{"line_number":1189,"context_line":"                            \u0027 There may be several volumes attaching to the\u0027"},{"line_number":1190,"context_line":"                            \u0027 same host at the same time. Please attach the\u0027"},{"line_number":1191,"context_line":"                            \u0027 volumes to the same host one by one.\u0027)"},{"line_number":1192,"context_line":"                        raise"},{"line_number":1193,"context_line":"                    else:"},{"line_number":1194,"context_line":"                        continue"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_09b82b74","line":1191,"range":{"start_line":1190,"start_character":58,"end_line":1191,"end_character":67},"updated":"2018-03-26 15:03:06.000000000","message":"This is not really valid advice to give.  Cinder drivers are expected to be able to handle concurrent requests.\n\nAsking people to use Cinder differently like this is not appropriate.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1187,"context_line":"                        LOG.warning("},{"line_number":1188,"context_line":"                            \u0027Retried 3 times to get the unused lun id.\u0027"},{"line_number":1189,"context_line":"                            \u0027 There may be several volumes attaching to the\u0027"},{"line_number":1190,"context_line":"                            \u0027 same host at the same time. Please attach the\u0027"},{"line_number":1191,"context_line":"                            \u0027 volumes to the same host one by one.\u0027)"},{"line_number":1192,"context_line":"                        raise"},{"line_number":1193,"context_line":"                    else:"},{"line_number":1194,"context_line":"                        continue"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_40225b54","line":1191,"range":{"start_line":1190,"start_character":58,"end_line":1191,"end_character":67},"in_reply_to":"bf659307_09b82b74","updated":"2018-03-27 09:44:01.000000000","message":"Hi Eric, thanks a lot for your comments, it is removed in the new patch.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":14532,"name":"Gerald McBrearty","email":"gfm@us.ibm.com","username":"gfm"},"change_message_id":"c3c9d867158f33f5620f00bf0d31d54e7c4cfe77","unresolved":false,"context_lines":[{"line_number":1191,"context_line":"                            \u0027 volumes to the same host one by one.\u0027)"},{"line_number":1192,"context_line":"                        raise"},{"line_number":1193,"context_line":"                    else:"},{"line_number":1194,"context_line":"                        continue"},{"line_number":1195,"context_line":"                elif (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1196,"context_line":"                        \u0027CMMVC6071E\u0027 in ex.msg):"},{"line_number":1197,"context_line":"                    LOG.error(\u0027storwize_svc_multihostmap_enabled is set \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_415e28e7","line":1194,"updated":"2018-03-23 18:06:31.000000000","message":"Would a random sleep here lessen the probability of a 2nd conflict?","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1191,"context_line":"                            \u0027 volumes to the same host one by one.\u0027)"},{"line_number":1192,"context_line":"                        raise"},{"line_number":1193,"context_line":"                    else:"},{"line_number":1194,"context_line":"                        continue"},{"line_number":1195,"context_line":"                elif (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1196,"context_line":"                        \u0027CMMVC6071E\u0027 in ex.msg):"},{"line_number":1197,"context_line":"                    LOG.error(\u0027storwize_svc_multihostmap_enabled is set \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_c0d3cb37","line":1194,"in_reply_to":"bf659307_415e28e7","updated":"2018-03-27 09:44:01.000000000","message":"A random wait is in the retrying in the new patch","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"e21dfb7c2df2117288d1436352d5a33910a683c7","unresolved":false,"context_lines":[{"line_number":1194,"context_line":"                        continue"},{"line_number":1195,"context_line":"                elif (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1196,"context_line":"                        \u0027CMMVC6071E\u0027 in ex.msg):"},{"line_number":1197,"context_line":"                    LOG.error(\u0027storwize_svc_multihostmap_enabled is set \u0027"},{"line_number":1198,"context_line":"                              \u0027to False, not allowing multi host mapping.\u0027)"},{"line_number":1199,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1200,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_e985b7ae","line":1197,"range":{"start_line":1197,"start_character":24,"end_line":1197,"end_character":29},"updated":"2018-03-26 15:03:06.000000000","message":"Is this really an error?  Sounds like it may be a warning instead.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1194,"context_line":"                        continue"},{"line_number":1195,"context_line":"                elif (not multihostmap and hasattr(ex, \u0027msg\u0027) and"},{"line_number":1196,"context_line":"                        \u0027CMMVC6071E\u0027 in ex.msg):"},{"line_number":1197,"context_line":"                    LOG.error(\u0027storwize_svc_multihostmap_enabled is set \u0027"},{"line_number":1198,"context_line":"                              \u0027to False, not allowing multi host mapping.\u0027)"},{"line_number":1199,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1200,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_e0d60f28","line":1197,"range":{"start_line":1197,"start_character":24,"end_line":1197,"end_character":29},"in_reply_to":"bf659307_e985b7ae","updated":"2018-03-27 09:44:01.000000000","message":"Done","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":4523,"name":"Eric Harney","email":"eharney@redhat.com","username":"eharney"},"change_message_id":"e21dfb7c2df2117288d1436352d5a33910a683c7","unresolved":false,"context_lines":[{"line_number":1199,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1200,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"},{"line_number":1201,"context_line":"                                  \u0027not created because the VDisk is already \u0027"},{"line_number":1202,"context_line":"                                  \u0027mapped to a host.\\n\"\u0027))"},{"line_number":1203,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":1204,"context_line":"                    LOG.error(\u0027Error mapping VDisk-to-host\u0027)"},{"line_number":1205,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_099fcb03","line":1202,"range":{"start_line":1202,"start_character":52,"end_line":1202,"end_character":54},"updated":"2018-03-26 15:03:06.000000000","message":"No need for \\n here.","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1199,"context_line":"                    raise exception.VolumeDriverException("},{"line_number":1200,"context_line":"                        message\u003d_(\u0027CMMVC6071E The VDisk-to-host mapping was \u0027"},{"line_number":1201,"context_line":"                                  \u0027not created because the VDisk is already \u0027"},{"line_number":1202,"context_line":"                                  \u0027mapped to a host.\\n\"\u0027))"},{"line_number":1203,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":1204,"context_line":"                    LOG.error(\u0027Error mapping VDisk-to-host\u0027)"},{"line_number":1205,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_80ddd343","line":1202,"range":{"start_line":1202,"start_character":52,"end_line":1202,"end_character":54},"in_reply_to":"bf659307_099fcb03","updated":"2018-03-27 09:44:01.000000000","message":"Done","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":7198,"name":"Jay Bryant","email":"jungleboyj@electronicjungle.net","username":"jsbryant"},"change_message_id":"d08ab568911524489d1e864fe00db693cc57b111","unresolved":false,"context_lines":[{"line_number":1201,"context_line":"                                  \u0027not created because the VDisk is already \u0027"},{"line_number":1202,"context_line":"                                  \u0027mapped to a host.\\n\"\u0027))"},{"line_number":1203,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":1204,"context_line":"                    LOG.error(\u0027Error mapping VDisk-to-host\u0027)"},{"line_number":1205,"context_line":""},{"line_number":1206,"context_line":"        LOG.debug(\u0027Leave: map_vol_to_host: LUN %(result_lun)s, volume \u0027"},{"line_number":1207,"context_line":"                  \u0027%(volume_name)s, host %(host_name)s.\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_589db257","line":1204,"range":{"start_line":1204,"start_character":56,"end_line":1204,"end_character":58},"updated":"2018-03-24 00:36:41.000000000","message":"missing \u0027.\u0027 at eol","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"},{"author":{"_account_id":11186,"name":"yixuan zhang","email":"yixuan_z@hotmail.com","username":"yixuanzhang"},"change_message_id":"084c80860495c56a4c464b471054085cc352e3b6","unresolved":false,"context_lines":[{"line_number":1201,"context_line":"                                  \u0027not created because the VDisk is already \u0027"},{"line_number":1202,"context_line":"                                  \u0027mapped to a host.\\n\"\u0027))"},{"line_number":1203,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":1204,"context_line":"                    LOG.error(\u0027Error mapping VDisk-to-host\u0027)"},{"line_number":1205,"context_line":""},{"line_number":1206,"context_line":"        LOG.debug(\u0027Leave: map_vol_to_host: LUN %(result_lun)s, volume \u0027"},{"line_number":1207,"context_line":"                  \u0027%(volume_name)s, host %(host_name)s.\u0027,"}],"source_content_type":"text/x-python","patch_set":1,"id":"bf659307_a0e017fc","line":1204,"range":{"start_line":1204,"start_character":56,"end_line":1204,"end_character":58},"in_reply_to":"bf659307_589db257","updated":"2018-03-27 09:44:01.000000000","message":"Done","commit_id":"d2b2131ff5d3ae3066aa341554fea28b8105c655"}]}
