)]}'
{"nova/compute/manager.py":[{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"e02854eb8310acfe46a5c1614f7b093aa4b99eba","unresolved":false,"context_lines":[{"line_number":5156,"context_line":"        LOG.debug(\u0027pre_live_migration data is %s\u0027, migrate_data)"},{"line_number":5157,"context_line":"        got_migrate_data_object \u003d isinstance(migrate_data,"},{"line_number":5158,"context_line":"                                             migrate_data_obj.LiveMigrateData)"},{"line_number":5159,"context_line":"        if not got_migrate_data_object:"},{"line_number":5160,"context_line":"            migrate_data \u003d \\"},{"line_number":5161,"context_line":"                migrate_data_obj.LiveMigrateData.detect_implementation("},{"line_number":5162,"context_line":"                    migrate_data)"},{"line_number":5163,"context_line":"        block_device_info \u003d self._get_instance_block_device_info("},{"line_number":5164,"context_line":"                            context, instance, refresh_conn_info\u003dTrue)"},{"line_number":5165,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3ac371cc_875cf219","line":5162,"range":{"start_line":5159,"start_character":7,"end_line":5162,"end_character":33},"updated":"2016-08-18 15:12:31.000000000","message":"It looks like miraka version of nova passes only LiveMigrateData object here, so, I\u0027d remove this check too.","commit_id":"491e1cd4aae38936b6a184c45e574a51ba53347b"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"f349ab7d0f15e970b8faf7b1918514ebc96a28fa","unresolved":false,"context_lines":[{"line_number":5156,"context_line":"        LOG.debug(\u0027pre_live_migration data is %s\u0027, migrate_data)"},{"line_number":5157,"context_line":"        got_migrate_data_object \u003d isinstance(migrate_data,"},{"line_number":5158,"context_line":"                                             migrate_data_obj.LiveMigrateData)"},{"line_number":5159,"context_line":"        if not got_migrate_data_object:"},{"line_number":5160,"context_line":"            migrate_data \u003d \\"},{"line_number":5161,"context_line":"                migrate_data_obj.LiveMigrateData.detect_implementation("},{"line_number":5162,"context_line":"                    migrate_data)"},{"line_number":5163,"context_line":"        block_device_info \u003d self._get_instance_block_device_info("},{"line_number":5164,"context_line":"                            context, instance, refresh_conn_info\u003dTrue)"},{"line_number":5165,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"3ac371cc_196d06cc","line":5162,"range":{"start_line":5159,"start_character":7,"end_line":5162,"end_character":33},"in_reply_to":"3ac371cc_875cf219","updated":"2016-08-18 15:22:05.000000000","message":"Confirmed. The only caller of pre_live_migration in Mitaka is _do_live_migration, which explicitly populates migrate_data before calling pre_live_migration.","commit_id":"491e1cd4aae38936b6a184c45e574a51ba53347b"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"a19272b6f37ca762fa9e4ebb8cb3613f55d236b4","unresolved":false,"context_lines":[{"line_number":5159,"context_line":"        if not got_migrate_data_object:"},{"line_number":5160,"context_line":"            migrate_data \u003d \\"},{"line_number":5161,"context_line":"                migrate_data_obj.LiveMigrateData.detect_implementation("},{"line_number":5162,"context_line":"                    migrate_data)"},{"line_number":5163,"context_line":"        block_device_info \u003d self._get_instance_block_device_info("},{"line_number":5164,"context_line":"                            context, instance, refresh_conn_info\u003dTrue)"},{"line_number":5165,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"1ac06dbe_41f27070","side":"PARENT","line":5162,"updated":"2016-08-22 14:29:42.000000000","message":"You can\u0027t do this because it\u0027s an RPC method and mitaka computes are still sending the dict-based migrate_data.","commit_id":"29ae67ab553d1318190ac84049cc476fa18d4301"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"00605a935e6810bfa21cfef92d977611e26450ef","unresolved":false,"context_lines":[{"line_number":5159,"context_line":"        if not got_migrate_data_object:"},{"line_number":5160,"context_line":"            migrate_data \u003d \\"},{"line_number":5161,"context_line":"                migrate_data_obj.LiveMigrateData.detect_implementation("},{"line_number":5162,"context_line":"                    migrate_data)"},{"line_number":5163,"context_line":"        block_device_info \u003d self._get_instance_block_device_info("},{"line_number":5164,"context_line":"                            context, instance, refresh_conn_info\u003dTrue)"},{"line_number":5165,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"1ac06dbe_67ea1c11","side":"PARENT","line":5162,"in_reply_to":"1ac06dbe_41f27070","updated":"2016-08-22 14:47:14.000000000","message":"I removed this at Timofey\u0027s request. However, I did check it before I removed it, and it looked to me like Mitaka does send an object. How did I misread it?\n\nTrivial to put this back in, btw.","commit_id":"29ae67ab553d1318190ac84049cc476fa18d4301"},{"author":{"_account_id":14819,"name":"Timofey Durakov","email":"timofei.nd@gmail.com","username":"tdurakov"},"change_message_id":"657d150fa23c3cd1b3f327868fddcde48ca3fa27","unresolved":false,"context_lines":[{"line_number":5159,"context_line":"        if not got_migrate_data_object:"},{"line_number":5160,"context_line":"            migrate_data \u003d \\"},{"line_number":5161,"context_line":"                migrate_data_obj.LiveMigrateData.detect_implementation("},{"line_number":5162,"context_line":"                    migrate_data)"},{"line_number":5163,"context_line":"        block_device_info \u003d self._get_instance_block_device_info("},{"line_number":5164,"context_line":"                            context, instance, refresh_conn_info\u003dTrue)"},{"line_number":5165,"context_line":""}],"source_content_type":"text/x-python","patch_set":5,"id":"1ac06dbe_95ac9ea1","side":"PARENT","line":5162,"in_reply_to":"1ac06dbe_67ea1c11","updated":"2016-08-22 15:13:51.000000000","message":"Discussed it with Dan on IRC. It turns out we should maintain backward compatibility during RPC major version. So, regardless the fact that Mitaka is not sending dicts anymore, this code could be removed only after RPC is bumped to 5.x, sorry for the wrong proposal(","commit_id":"29ae67ab553d1318190ac84049cc476fa18d4301"}],"nova/tests/unit/virt/libvirt/test_driver.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"efc5c4f4ef486d213d2ee039569716147b89467a","unresolved":false,"context_lines":[{"line_number":9412,"context_line":""},{"line_number":9413,"context_line":"        self.mox.ReplayAll()"},{"line_number":9414,"context_line":"        migrate_data \u003d migrate_data_obj.LibvirtLiveMigrateData()"},{"line_number":9415,"context_line":"        migrate_data.from_legacy_dict({"},{"line_number":9416,"context_line":"            \"block_migration\": False,"},{"line_number":9417,"context_line":"            \"instance_relative_path\": \"foo\","},{"line_number":9418,"context_line":"            \"is_shared_block_storage\": False,"}],"source_content_type":"text/x-python","patch_set":3,"id":"1aa78d24_aa26adb7","line":9415,"range":{"start_line":9415,"start_character":8,"end_line":9415,"end_character":37},"updated":"2016-07-05 09:22:52.000000000","message":"nit: Is it necessary to continue using a dict rather than creating the object anew?","commit_id":"7699e94ce914aded8caa0174ac75415bfdaa8511"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"b93abb10132ff1b9b1cdf78d2454b7ddef21780e","unresolved":false,"context_lines":[{"line_number":9412,"context_line":""},{"line_number":9413,"context_line":"        self.mox.ReplayAll()"},{"line_number":9414,"context_line":"        migrate_data \u003d migrate_data_obj.LibvirtLiveMigrateData()"},{"line_number":9415,"context_line":"        migrate_data.from_legacy_dict({"},{"line_number":9416,"context_line":"            \"block_migration\": False,"},{"line_number":9417,"context_line":"            \"instance_relative_path\": \"foo\","},{"line_number":9418,"context_line":"            \"is_shared_block_storage\": False,"}],"source_content_type":"text/x-python","patch_set":3,"id":"3ac371cc_c25b4a53","line":9415,"range":{"start_line":9415,"start_character":8,"end_line":9415,"end_character":37},"in_reply_to":"1aa78d24_aa26adb7","updated":"2016-08-15 14:08:32.000000000","message":"It\u0027s a while since I wrote this, tbh. I was probably just copying a pattern from somewhere and hadn\u0027t given it much thought.","commit_id":"7699e94ce914aded8caa0174ac75415bfdaa8511"},{"author":{"_account_id":8688,"name":"Alexis Lee","email":"openstack@lxsli.co.uk","username":"lxsli"},"change_message_id":"e8699687b2df7300ea6a8fef2126ee724f30e94d","unresolved":false,"context_lines":[{"line_number":9416,"context_line":"            \"block_migration\": False,"},{"line_number":9417,"context_line":"            \"instance_relative_path\": \"foo\","},{"line_number":9418,"context_line":"            \"is_shared_block_storage\": False,"},{"line_number":9419,"context_line":"            \"is_shared_instance_path\": False})"},{"line_number":9420,"context_line":"        result \u003d drvr.pre_live_migration("},{"line_number":9421,"context_line":"            c, instance, vol, nw_info, None,"},{"line_number":9422,"context_line":"            migrate_data\u003dmigrate_data)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1aa78d24_962cdc4b","line":9419,"range":{"start_line":9419,"start_character":44,"end_line":9419,"end_character":46},"updated":"2016-07-04 14:28:53.000000000","message":"nit unnecessary change; the original style is very slightly better IMO as it makes it easier to add items","commit_id":"7699e94ce914aded8caa0174ac75415bfdaa8511"},{"author":{"_account_id":9555,"name":"Matthew Booth","email":"mbooth@redhat.com","username":"MatthewBooth"},"change_message_id":"b93abb10132ff1b9b1cdf78d2454b7ddef21780e","unresolved":false,"context_lines":[{"line_number":9416,"context_line":"            \"block_migration\": False,"},{"line_number":9417,"context_line":"            \"instance_relative_path\": \"foo\","},{"line_number":9418,"context_line":"            \"is_shared_block_storage\": False,"},{"line_number":9419,"context_line":"            \"is_shared_instance_path\": False})"},{"line_number":9420,"context_line":"        result \u003d drvr.pre_live_migration("},{"line_number":9421,"context_line":"            c, instance, vol, nw_info, None,"},{"line_number":9422,"context_line":"            migrate_data\u003dmigrate_data)"}],"source_content_type":"text/x-python","patch_set":3,"id":"3ac371cc_c2098a33","line":9419,"range":{"start_line":9419,"start_character":44,"end_line":9419,"end_character":46},"in_reply_to":"1aa78d24_8a50110c","updated":"2016-08-15 14:08:32.000000000","message":"I also usually prefer the original style, so weird I would have changed this.","commit_id":"7699e94ce914aded8caa0174ac75415bfdaa8511"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"efc5c4f4ef486d213d2ee039569716147b89467a","unresolved":false,"context_lines":[{"line_number":9416,"context_line":"            \"block_migration\": False,"},{"line_number":9417,"context_line":"            \"instance_relative_path\": \"foo\","},{"line_number":9418,"context_line":"            \"is_shared_block_storage\": False,"},{"line_number":9419,"context_line":"            \"is_shared_instance_path\": False})"},{"line_number":9420,"context_line":"        result \u003d drvr.pre_live_migration("},{"line_number":9421,"context_line":"            c, instance, vol, nw_info, None,"},{"line_number":9422,"context_line":"            migrate_data\u003dmigrate_data)"}],"source_content_type":"text/x-python","patch_set":3,"id":"1aa78d24_8a50110c","line":9419,"range":{"start_line":9419,"start_character":44,"end_line":9419,"end_character":46},"in_reply_to":"1aa78d24_962cdc4b","updated":"2016-07-05 09:22:52.000000000","message":"Agreed. Same for all other calls below.","commit_id":"7699e94ce914aded8caa0174ac75415bfdaa8511"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"17873da0676c367f821373e7bfff67c43f227732","unresolved":false,"context_lines":[{"line_number":9330,"context_line":"            instance_relative_path\u003d\u0027foo\u0027,"},{"line_number":9331,"context_line":"            is_shared_block_storage\u003dFalse,"},{"line_number":9332,"context_line":"            is_shared_instance_path\u003dFalse,"},{"line_number":9333,"context_line":"        )"},{"line_number":9334,"context_line":"        result \u003d drvr.pre_live_migration("},{"line_number":9335,"context_line":"            c, instance, vol, nw_info, None,"},{"line_number":9336,"context_line":"            migrate_data\u003dmigrate_data)"}],"source_content_type":"text/x-python","patch_set":6,"id":"1ac06dbe_0fed3225","line":9333,"updated":"2016-08-22 17:29:17.000000000","message":":(","commit_id":"824c8a31ff0f97ddb8809386af6618e86d5ff960"}]}
