)]}'
{"cinder/tests/unit/volume/test_volume.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"09a9b309088dcf03ebac2ade769af56822adfbc8","unresolved":false,"context_lines":[{"line_number":347,"context_line":"        # NOTE: this test was added to verify that a user message is"},{"line_number":348,"context_line":"        # sent.  It is by no means a thorough test of the delete_volume"},{"line_number":349,"context_line":"        # function."},{"line_number":350,"context_line":"        def fake_reserve(context, expire\u003dNone, project_id\u003dNone, **deltas):"},{"line_number":351,"context_line":"            return [\"RESERVATION\"]"},{"line_number":352,"context_line":""},{"line_number":353,"context_line":"        def fake_commit_and_rollback(context, reservations, project_id\u003dNone):"},{"line_number":354,"context_line":"            pass"},{"line_number":355,"context_line":""},{"line_number":356,"context_line":"        my_params \u003d self.volume_params.copy()"},{"line_number":357,"context_line":"        my_params[\u0027attach_status\u0027] \u003d fields.VolumeAttachStatus.ATTACHED"}],"source_content_type":"text/x-python","patch_set":4,"id":"bf51134e_5de5c437","line":354,"range":{"start_line":350,"start_character":0,"end_line":354,"end_character":16},"updated":"2020-07-22 12:12:30.000000000","message":"Arrrrgh ... I forgot to remove these.","commit_id":"f3fe001ac4218d9b24536cb9e01d9dcf14b36e03"}],"cinder/volume/manager.py":[{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":835,"context_line":"                context,"},{"line_number":836,"context_line":"                message_field.Action.DELETE_VOLUME,"},{"line_number":837,"context_line":"                context.project_id,"},{"line_number":838,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":839,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":840,"context_line":"                exception\u003dexcep)"},{"line_number":841,"context_line":"            raise excep"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_62111b5d","line":838,"range":{"start_line":838,"start_character":16,"end_line":838,"end_character":60},"updated":"2019-03-28 13:47:51.000000000","message":"this is the default, probably don\u0027t need it.  (If you decide to remove it, please remove it from your other calls.)","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":837,"context_line":"                context.project_id,"},{"line_number":838,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":839,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":840,"context_line":"                exception\u003dexcep)"},{"line_number":841,"context_line":"            raise excep"},{"line_number":842,"context_line":"        self._check_is_our_resource(volume)"},{"line_number":843,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_651fe55a","line":840,"updated":"2019-03-28 13:47:51.000000000","message":"Here you do need a detail\u003d , or you need to add \u0027VolumeAttached\u0027 to the message_field.EXCEPTION_DETAIL_MAPPINGS.  (I think the only reason to pass an exception, actually, is to take advantage of the mapping.)","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":914,"context_line":"                context.project_id,"},{"line_number":915,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":916,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":917,"context_line":"                exception\u003dexcep)"},{"line_number":918,"context_line":"            # If this is a destination volume, we have to clear the database"},{"line_number":919,"context_line":"            # record to avoid user confusion."},{"line_number":920,"context_line":"            self._clear_db(context, is_migrating_dest, volume,"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_254c7d40","line":917,"updated":"2019-03-28 13:47:51.000000000","message":"This is another one that needs a detail\u003d or needs to be added to the mapping.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2e12a558dbe2b159feacfbae832e3e6de47ae7ed","unresolved":false,"context_lines":[{"line_number":914,"context_line":"                context.project_id,"},{"line_number":915,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":916,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":917,"context_line":"                exception\u003dexcep)"},{"line_number":918,"context_line":"            # If this is a destination volume, we have to clear the database"},{"line_number":919,"context_line":"            # record to avoid user confusion."},{"line_number":920,"context_line":"            self._clear_db(context, is_migrating_dest, volume,"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_43db374e","line":917,"in_reply_to":"5fc1f717_254c7d40","updated":"2020-07-21 16:24:49.000000000","message":"It\u0027s in the mapping now.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                    context.project_id,"},{"line_number":929,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":930,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":931,"context_line":"                    exception\u003dexcep,"},{"line_number":932,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":933,"context_line":"                # If this is a destination volume, we have to clear the"},{"line_number":934,"context_line":"                # database record to avoid user confusion."}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_e5ff55a8","line":931,"updated":"2019-03-28 13:47:51.000000000","message":"Not sure it\u0027s worth passing the exception since we don\u0027t know what it is.  (It\u0027s only used in message_api.create to determine a detail_id, it\u0027s not actually used in the message.)","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2e12a558dbe2b159feacfbae832e3e6de47ae7ed","unresolved":false,"context_lines":[{"line_number":928,"context_line":"                    context.project_id,"},{"line_number":929,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":930,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":931,"context_line":"                    exception\u003dexcep,"},{"line_number":932,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":933,"context_line":"                # If this is a destination volume, we have to clear the"},{"line_number":934,"context_line":"                # database record to avoid user confusion."}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_43a9778e","line":931,"in_reply_to":"5fc1f717_e5ff55a8","updated":"2020-07-21 16:24:49.000000000","message":"We do want both.  If the exception is in the mapping, it will be used, otherwise the detail will be used.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"6dfe6a116527d8223a9b4c681bff16ec54c6838f","unresolved":false,"context_lines":[{"line_number":2471,"context_line":"                ctxt.project_id,"},{"line_number":2472,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2473,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2474,"context_line":"                exception\u003dexcep)"},{"line_number":2475,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":2476,"context_line":"                volume.migration_status \u003d \u0027error\u0027"},{"line_number":2477,"context_line":"                volume.save()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_7db0acde","line":2474,"updated":"2019-03-19 23:55:16.000000000","message":"detail\u003dmessage_field.Detail.DRIVER_NOT_INITIALIZED","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"6213f5357835357cc6008fafaa713218b18b2a0a","unresolved":false,"context_lines":[{"line_number":2471,"context_line":"                ctxt.project_id,"},{"line_number":2472,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2473,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2474,"context_line":"                exception\u003dexcep)"},{"line_number":2475,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":2476,"context_line":"                volume.migration_status \u003d \u0027error\u0027"},{"line_number":2477,"context_line":"                volume.save()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_b27e8867","line":2474,"in_reply_to":"5fc1f717_7db0acde","updated":"2019-03-27 15:54:23.000000000","message":"Do we need this? DriverNotInitialized is in the message_field.Detail.EXCEPTION_DETAIL_MAPPINGS, so I believe that message_api.create will generate the detail_id itself.  On the other hand, I guess it\u0027s not a bad idea to be explicit.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2e12a558dbe2b159feacfbae832e3e6de47ae7ed","unresolved":false,"context_lines":[{"line_number":2471,"context_line":"                ctxt.project_id,"},{"line_number":2472,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2473,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2474,"context_line":"                exception\u003dexcep)"},{"line_number":2475,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":2476,"context_line":"                volume.migration_status \u003d \u0027error\u0027"},{"line_number":2477,"context_line":"                volume.save()"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_83254f0d","line":2474,"in_reply_to":"5fc1f717_b27e8867","updated":"2020-07-21 16:24:49.000000000","message":"Just using the exception is supposed to save us some typing; we don\u0027t need the detail here.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":2512,"context_line":"                    ctxt.project_id,"},{"line_number":2513,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2514,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2515,"context_line":"                    exception\u003dexcep,"},{"line_number":2516,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":2517,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":2518,"context_line":"                    updates \u003d {\u0027migration_status\u0027: \u0027error\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_8528d132","line":2515,"updated":"2019-03-28 13:47:51.000000000","message":"Same comment as line 931.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2e12a558dbe2b159feacfbae832e3e6de47ae7ed","unresolved":false,"context_lines":[{"line_number":2512,"context_line":"                    ctxt.project_id,"},{"line_number":2513,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2514,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2515,"context_line":"                    exception\u003dexcep,"},{"line_number":2516,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":2517,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":2518,"context_line":"                    updates \u003d {\u0027migration_status\u0027: \u0027error\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_63675b53","line":2515,"in_reply_to":"5fc1f717_8528d132","updated":"2020-07-21 16:24:49.000000000","message":"We want both the exception and the detail here.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"71406288831e2385860f3ea8436592e4f250e493","unresolved":false,"context_lines":[{"line_number":2529,"context_line":"                    ctxt.project_id,"},{"line_number":2530,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2531,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2532,"context_line":"                    exception\u003dexcep,"},{"line_number":2533,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":2534,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":2535,"context_line":"                    updates \u003d {\u0027migration_status\u0027: \u0027error\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_c5c01953","line":2532,"updated":"2019-03-28 13:47:51.000000000","message":"Same as 931.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"2e12a558dbe2b159feacfbae832e3e6de47ae7ed","unresolved":false,"context_lines":[{"line_number":2529,"context_line":"                    ctxt.project_id,"},{"line_number":2530,"context_line":"                    resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2531,"context_line":"                    resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2532,"context_line":"                    exception\u003dexcep,"},{"line_number":2533,"context_line":"                    detail\u003dmessage_field.Detail.BACKEND_OPERATION_FAILED)"},{"line_number":2534,"context_line":"                with excutils.save_and_reraise_exception():"},{"line_number":2535,"context_line":"                    updates \u003d {\u0027migration_status\u0027: \u0027error\u0027}"}],"source_content_type":"text/x-python","patch_set":2,"id":"bf51134e_a371730f","line":2532,"in_reply_to":"5fc1f717_c5c01953","updated":"2020-07-21 16:24:49.000000000","message":"We want both the exception and the detail here.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5997,"name":"Walt","display_name":"Hemna","email":"waboring@hemna.com","username":"walter-boring","status":"SAP"},"change_message_id":"6dfe6a116527d8223a9b4c681bff16ec54c6838f","unresolved":false,"context_lines":[{"line_number":2742,"context_line":"                context.project_id,"},{"line_number":2743,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2744,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2745,"context_line":"                exception\u003dexcep)"},{"line_number":2746,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":2747,"context_line":"                volume.status \u003d \u0027error_extending\u0027"},{"line_number":2748,"context_line":"                volume.save()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_3dca244f","line":2745,"updated":"2019-03-19 23:55:16.000000000","message":"detail\u003dmessage_field.Detail.DRIVER_NOT_INITIALIZED","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"},{"author":{"_account_id":5314,"name":"Brian Rosmaita","email":"rosmaita.fossdev@gmail.com","username":"brian-rosmaita"},"change_message_id":"6213f5357835357cc6008fafaa713218b18b2a0a","unresolved":false,"context_lines":[{"line_number":2742,"context_line":"                context.project_id,"},{"line_number":2743,"context_line":"                resource_type\u003dmessage_field.Resource.VOLUME,"},{"line_number":2744,"context_line":"                resource_uuid\u003dvolume[\u0027id\u0027],"},{"line_number":2745,"context_line":"                exception\u003dexcep)"},{"line_number":2746,"context_line":"            with excutils.save_and_reraise_exception():"},{"line_number":2747,"context_line":"                volume.status \u003d \u0027error_extending\u0027"},{"line_number":2748,"context_line":"                volume.save()"}],"source_content_type":"text/x-python","patch_set":2,"id":"5fc1f717_d2d3145f","line":2745,"in_reply_to":"5fc1f717_3dca244f","updated":"2019-03-27 15:54:23.000000000","message":"See line 2474.","commit_id":"04ac1c1994ec5ee7ba3531160b8f4f437bda21b1"}]}
