)]}'
{"nova/compute/resource_tracker.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":245,"context_line":"        instance_numa_topology \u003d claim.claimed_numa_topology"},{"line_number":246,"context_line":"        instance.numa_topology \u003d instance_numa_topology"},{"line_number":247,"context_line":"        instance_copy.numa_topology \u003d instance_numa_topology"},{"line_number":248,"context_line":"        self._set_instance_host_and_node(instance, nodename)"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"        if self.pci_tracker:"},{"line_number":251,"context_line":"            # NOTE(jaypipes): ComputeNode.pci_device_pools is set below"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_78be7ad5","line":248,"updated":"2017-08-17 11:40:41.000000000","message":"For me it is confusing that we use the instance and the instance_copy for different calls in the same function. Do we really need use for both or can we use the instance_copy only? If we need to use both for different calls then I think it would be nice to have a note when to use what and why.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"c177dfde61b6537b67fc35801085a5e0d868948a","unresolved":false,"context_lines":[{"line_number":245,"context_line":"        instance_numa_topology \u003d claim.claimed_numa_topology"},{"line_number":246,"context_line":"        instance.numa_topology \u003d instance_numa_topology"},{"line_number":247,"context_line":"        instance_copy.numa_topology \u003d instance_numa_topology"},{"line_number":248,"context_line":"        self._set_instance_host_and_node(instance, nodename)"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"        if self.pci_tracker:"},{"line_number":251,"context_line":"            # NOTE(jaypipes): ComputeNode.pci_device_pools is set below"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_2abb9672","line":248,"in_reply_to":"9f436f4f_78be7ad5","updated":"2017-08-24 21:28:49.000000000","message":"I think we do need to use both (for example I think you wouldn\u0027t want to \"save\" the modified copy back to the DB).  But it would be nice to have a comment explaining when to use which one.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":245,"context_line":"        instance_numa_topology \u003d claim.claimed_numa_topology"},{"line_number":246,"context_line":"        instance.numa_topology \u003d instance_numa_topology"},{"line_number":247,"context_line":"        instance_copy.numa_topology \u003d instance_numa_topology"},{"line_number":248,"context_line":"        self._set_instance_host_and_node(instance, nodename)"},{"line_number":249,"context_line":""},{"line_number":250,"context_line":"        if self.pci_tracker:"},{"line_number":251,"context_line":"            # NOTE(jaypipes): ComputeNode.pci_device_pools is set below"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_6ac19ee4","line":248,"in_reply_to":"9f436f4f_78be7ad5","updated":"2017-08-24 21:26:48.000000000","message":"I\u0027m jumping through a lot of hoops here to make sure that the instance.flavor isn\u0027t saved with root_gb\u003d0 in it. Previous attempts at fixing this complained about possible pollution of instance.flavors, so I use the copy only for calls where I know the flavor can\u0027t be saved.\n\nIf we pass the copy to _set_instance_host_and_node, the instance.save() call would pollute the instance.flavor (save root_gb\u003d0 to the database).","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":999,"context_line":"                        itype_copy, numa_topology\u003dnuma_topology)"},{"line_number":1000,"context_line":"            if self.pci_tracker and sign:"},{"line_number":1001,"context_line":"                self.pci_tracker.update_pci_for_instance("},{"line_number":1002,"context_line":"                    context, instance, sign\u003dsign)"},{"line_number":1003,"context_line":"            self._update_usage(usage, nodename)"},{"line_number":1004,"context_line":"            if self.pci_tracker:"},{"line_number":1005,"context_line":"                obj \u003d self.pci_tracker.stats.to_device_pools_obj()"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_98a47e4c","line":1002,"range":{"start_line":1002,"start_character":29,"end_line":1002,"end_character":37},"updated":"2017-08-17 11:40:41.000000000","message":"don\u0027t we need to copy this instance obj too?","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":999,"context_line":"                        itype_copy, numa_topology\u003dnuma_topology)"},{"line_number":1000,"context_line":"            if self.pci_tracker and sign:"},{"line_number":1001,"context_line":"                self.pci_tracker.update_pci_for_instance("},{"line_number":1002,"context_line":"                    context, instance, sign\u003dsign)"},{"line_number":1003,"context_line":"            self._update_usage(usage, nodename)"},{"line_number":1004,"context_line":"            if self.pci_tracker:"},{"line_number":1005,"context_line":"                obj \u003d self.pci_tracker.stats.to_device_pools_obj()"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_caabf21a","line":1002,"range":{"start_line":1002,"start_character":29,"end_line":1002,"end_character":37},"in_reply_to":"9f436f4f_98a47e4c","updated":"2017-08-24 21:26:48.000000000","message":"PCI stuff doesn\u0027t care about the instance.flavor and we don\u0027t want it saving instance.flavor with root_gb\u003d0.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"            self.tracked_instances.pop(uuid)"},{"line_number":1087,"context_line":"            sign \u003d -1"},{"line_number":1088,"context_line":""},{"line_number":1089,"context_line":"        cn \u003d self.compute_nodes[nodename]"},{"line_number":1090,"context_line":""},{"line_number":1091,"context_line":"        if instance_copy is None:"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_9848feb2","line":1088,"updated":"2017-08-17 11:40:41.000000000","message":"Is it so that if the instance bfv and it is not new and not removed then changing the root_gb\u003d0 doesn\u0027t break anything as we already changed that to 0 when the instance was new? Can we simplify this logic to change the bfv instance root_gb to 0 regardless if it is old or new or removed or not?","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":1085,"context_line":""},{"line_number":1086,"context_line":"            self.tracked_instances.pop(uuid)"},{"line_number":1087,"context_line":"            sign \u003d -1"},{"line_number":1088,"context_line":""},{"line_number":1089,"context_line":"        cn \u003d self.compute_nodes[nodename]"},{"line_number":1090,"context_line":""},{"line_number":1091,"context_line":"        if instance_copy is None:"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_aa7b06bc","line":1088,"in_reply_to":"9f436f4f_9848feb2","updated":"2017-08-24 21:26:48.000000000","message":"I think we have to recalc this every time because we\u0027re intentionally not ever saving the instance with root_gb\u003d0.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":1091,"context_line":"        if instance_copy is None:"},{"line_number":1092,"context_line":"            # If this instance isn\u0027t new or removed, we don\u0027t need to check if"},{"line_number":1093,"context_line":"            # it\u0027s for boot-from-volume again."},{"line_number":1094,"context_line":"            instance_copy \u003d instance"},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"        self.stats.update_stats_for_instance(instance_copy,"},{"line_number":1097,"context_line":"                                             is_removed_instance)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_f88a6abc","line":1094,"updated":"2017-08-17 11:40:41.000000000","message":"Would it be simpler to reassign the instance reference to the instance_copy instead? Then we don\u0027t have to change the below code to pass the instance_copy. I don\u0027t see that instance is separately referenced from instance_copy below","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"c177dfde61b6537b67fc35801085a5e0d868948a","unresolved":false,"context_lines":[{"line_number":1091,"context_line":"        if instance_copy is None:"},{"line_number":1092,"context_line":"            # If this instance isn\u0027t new or removed, we don\u0027t need to check if"},{"line_number":1093,"context_line":"            # it\u0027s for boot-from-volume again."},{"line_number":1094,"context_line":"            instance_copy \u003d instance"},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"        self.stats.update_stats_for_instance(instance_copy,"},{"line_number":1097,"context_line":"                                             is_removed_instance)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_8a1a8a7a","line":1094,"in_reply_to":"9f436f4f_f88a6abc","updated":"2017-08-24 21:28:49.000000000","message":"maybe something like\n\nif instance_copy is not None:\n    instance \u003d instance_copy\n\nand then leave the rest the same, with a note saying that we want to be sure not to save() the modified instance?","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":1101,"context_line":"        if is_new_instance or is_removed_instance:"},{"line_number":1102,"context_line":"            if self.pci_tracker:"},{"line_number":1103,"context_line":"                self.pci_tracker.update_pci_for_instance(context,"},{"line_number":1104,"context_line":"                                                         instance_copy,"},{"line_number":1105,"context_line":"                                                         sign\u003dsign)"},{"line_number":1106,"context_line":"            if has_ocata_computes:"},{"line_number":1107,"context_line":"                LOG.debug(\"We\u0027re on a Pike compute host in a deployment \""}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_183c0edf","line":1104,"updated":"2017-08-17 11:40:41.000000000","message":"In L1001 we pass instance instead of instance_copy to update_pci_for_instance(). Is it intentional?","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":1101,"context_line":"        if is_new_instance or is_removed_instance:"},{"line_number":1102,"context_line":"            if self.pci_tracker:"},{"line_number":1103,"context_line":"                self.pci_tracker.update_pci_for_instance(context,"},{"line_number":1104,"context_line":"                                                         instance_copy,"},{"line_number":1105,"context_line":"                                                         sign\u003dsign)"},{"line_number":1106,"context_line":"            if has_ocata_computes:"},{"line_number":1107,"context_line":"                LOG.debug(\"We\u0027re on a Pike compute host in a deployment \""}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_6a4f5e92","line":1104,"in_reply_to":"9f436f4f_183c0edf","updated":"2017-08-24 21:26:48.000000000","message":"Thanks for noticing that. I didn\u0027t mean to pass instance_copy here.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":1107,"context_line":"                LOG.debug(\"We\u0027re on a Pike compute host in a deployment \""},{"line_number":1108,"context_line":"                          \"with Ocata compute hosts. Auto-correcting \""},{"line_number":1109,"context_line":"                          \"allocations to handle Ocata-style assumptions.\")"},{"line_number":1110,"context_line":"                self.reportclient.update_instance_allocation(cn, instance,"},{"line_number":1111,"context_line":"                                                             sign)"},{"line_number":1112,"context_line":"            else:"},{"line_number":1113,"context_line":"                # NOTE(jaypipes): We\u0027re on a Pike compute host or later in"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_784e7a97","line":1110,"range":{"start_line":1110,"start_character":65,"end_line":1110,"end_character":73},"updated":"2017-08-17 11:40:41.000000000","message":"don\u0027t we need to pass instance_copy here?","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":1107,"context_line":"                LOG.debug(\"We\u0027re on a Pike compute host in a deployment \""},{"line_number":1108,"context_line":"                          \"with Ocata compute hosts. Auto-correcting \""},{"line_number":1109,"context_line":"                          \"allocations to handle Ocata-style assumptions.\")"},{"line_number":1110,"context_line":"                self.reportclient.update_instance_allocation(cn, instance,"},{"line_number":1111,"context_line":"                                                             sign)"},{"line_number":1112,"context_line":"            else:"},{"line_number":1113,"context_line":"                # NOTE(jaypipes): We\u0027re on a Pike compute host or later in"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_ea5a2e4e","line":1110,"range":{"start_line":1110,"start_character":65,"end_line":1110,"end_character":73},"in_reply_to":"9f436f4f_784e7a97","updated":"2017-08-24 21:26:48.000000000","message":"Probably. I think this is new since I\u0027ve been rebasing this for several months.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":8768,"name":"Chris Friesen","email":"chris.friesen@windriver.com","username":"cbf123"},"change_message_id":"c177dfde61b6537b67fc35801085a5e0d868948a","unresolved":false,"context_lines":[{"line_number":1107,"context_line":"                LOG.debug(\"We\u0027re on a Pike compute host in a deployment \""},{"line_number":1108,"context_line":"                          \"with Ocata compute hosts. Auto-correcting \""},{"line_number":1109,"context_line":"                          \"allocations to handle Ocata-style assumptions.\")"},{"line_number":1110,"context_line":"                self.reportclient.update_instance_allocation(cn, instance,"},{"line_number":1111,"context_line":"                                                             sign)"},{"line_number":1112,"context_line":"            else:"},{"line_number":1113,"context_line":"                # NOTE(jaypipes): We\u0027re on a Pike compute host or later in"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_8a316a0e","line":1110,"range":{"start_line":1110,"start_character":65,"end_line":1110,"end_character":73},"in_reply_to":"9f436f4f_784e7a97","updated":"2017-08-24 21:28:49.000000000","message":"seems that way to me","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"}],"nova/tests/functional/test_boot_from_volume.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from nova.virt import fake as virt_fake"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class BootFromVolumeTest(integrated_helpers.InstanceHelperMixin,"},{"line_number":23,"context_line":"                         test_servers.ServersTestBase):"},{"line_number":24,"context_line":"    def _setup_compute_service(self):"},{"line_number":25,"context_line":"        def fake_load_compute_driver(virtapi, compute_driver\u003dNone):"},{"line_number":26,"context_line":"            return BFVFakeDriver(virtapi)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_3307f51a","line":23,"range":{"start_line":22,"start_character":26,"end_line":23,"end_character":55},"updated":"2017-08-17 11:40:41.000000000","message":"These two base classes might conflict. At least both base class has _wait_for_state_change() function.\n\nI think the existing functional tests either use ServerTestBase (or the base that _IntegratedTestBase) or use the InstanceHelperMixin exclusively.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from nova.virt import fake as virt_fake"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class BootFromVolumeTest(integrated_helpers.InstanceHelperMixin,"},{"line_number":23,"context_line":"                         test_servers.ServersTestBase):"},{"line_number":24,"context_line":"    def _setup_compute_service(self):"},{"line_number":25,"context_line":"        def fake_load_compute_driver(virtapi, compute_driver\u003dNone):"},{"line_number":26,"context_line":"            return BFVFakeDriver(virtapi)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_ea1fce6d","line":23,"range":{"start_line":22,"start_character":26,"end_line":23,"end_character":55},"in_reply_to":"9f436f4f_3307f51a","updated":"2017-08-24 21:26:48.000000000","message":"Okay, I will check on that.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e51b245d77d880aae02064bc61f69d7d69b4d620","unresolved":false,"context_lines":[{"line_number":19,"context_line":"from nova.virt import fake as virt_fake"},{"line_number":20,"context_line":""},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"class BootFromVolumeTest(integrated_helpers.InstanceHelperMixin,"},{"line_number":23,"context_line":"                         test_servers.ServersTestBase):"},{"line_number":24,"context_line":"    def _setup_compute_service(self):"},{"line_number":25,"context_line":"        def fake_load_compute_driver(virtapi, compute_driver\u003dNone):"},{"line_number":26,"context_line":"            return BFVFakeDriver(virtapi)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_0a29f736","line":23,"range":{"start_line":22,"start_character":26,"end_line":23,"end_character":55},"in_reply_to":"9f436f4f_3307f51a","updated":"2017-08-24 23:23:10.000000000","message":"Yeah, so python will call the \"first\" found method and that\u0027s probably why I put InstanceHelperMixin first in the multiple inheritance (I prefer its _wait_for_state_change() function). Maybe that\u0027s too \"clever.\" I definitely want the network service stubbing etc that comes from ServersTestBase too.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        self.assertNotEqual(0, rspec.flavor.root_gb)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def setUp(self):"},{"line_number":59,"context_line":"        self.useFixture(nova_fixtures.PlacementFixture())"},{"line_number":60,"context_line":"        # These need to be set up before services are started, else they"},{"line_number":61,"context_line":"        # won\u0027t be reflected in the running service."},{"line_number":62,"context_line":"        volume_fake.stub_out_volume_api(self)"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_1358712e","line":59,"updated":"2017-08-17 11:40:41.000000000","message":"The base class setUp() also adds this fixture. Will it cause a problem if a fixture is added twice? Can we just change the  service ordering in the base class.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":56,"context_line":"        self.assertNotEqual(0, rspec.flavor.root_gb)"},{"line_number":57,"context_line":""},{"line_number":58,"context_line":"    def setUp(self):"},{"line_number":59,"context_line":"        self.useFixture(nova_fixtures.PlacementFixture())"},{"line_number":60,"context_line":"        # These need to be set up before services are started, else they"},{"line_number":61,"context_line":"        # won\u0027t be reflected in the running service."},{"line_number":62,"context_line":"        volume_fake.stub_out_volume_api(self)"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_aa29c69b","line":59,"in_reply_to":"9f436f4f_1358712e","updated":"2017-08-24 21:26:48.000000000","message":"Thanks. It might not have been around back when I first wrote this, or I made a mistake. :) I will remove it.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        self._verify_request_spec_flavor_not_zero(server_id)"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"class BFVFakeDriver(virt_fake.SmallFakeDriver):"},{"line_number":167,"context_line":"    \"\"\"A specific fake driver for our tests."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"    Here, we need 2 vcpus for resize to same host because allocations are"}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_935c6119","line":166,"updated":"2017-08-17 11:40:41.000000000","message":"There is already nova.virt.fake.MediumFakeDriver available that allows resize.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"e51b245d77d880aae02064bc61f69d7d69b4d620","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        self._verify_request_spec_flavor_not_zero(server_id)"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"class BFVFakeDriver(virt_fake.SmallFakeDriver):"},{"line_number":167,"context_line":"    \"\"\"A specific fake driver for our tests."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"    Here, we need 2 vcpus for resize to same host because allocations are"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_8a9f275e","line":166,"in_reply_to":"9f436f4f_935c6119","updated":"2017-08-24 23:23:10.000000000","message":"Looks like you bumped up SmallFakeDriver to 2 vcpus already [1] so I don\u0027t even need the MediumFakeDriver either. Nice.\n\n[1] https://review.openstack.org/#/c/491529/","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":163,"context_line":"        self._verify_request_spec_flavor_not_zero(server_id)"},{"line_number":164,"context_line":""},{"line_number":165,"context_line":""},{"line_number":166,"context_line":"class BFVFakeDriver(virt_fake.SmallFakeDriver):"},{"line_number":167,"context_line":"    \"\"\"A specific fake driver for our tests."},{"line_number":168,"context_line":""},{"line_number":169,"context_line":"    Here, we need 2 vcpus for resize to same host because allocations are"}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_6a1d1e72","line":166,"in_reply_to":"9f436f4f_935c6119","updated":"2017-08-24 21:26:48.000000000","message":"Okay, I will check that.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"}],"nova/tests/unit/conductor/test_conductor.py.orig":[{"author":{"_account_id":23630,"name":"Tovin Seven","email":"tovin07@gmail.com","username":"tovin07"},"change_message_id":"42bdf0998e8934367940adcae5690753004e020b","unresolved":false,"context_lines":[{"line_number":1,"context_line":"#    Copyright 2012 IBM Corp."},{"line_number":2,"context_line":"#    Copyright 2013 Red Hat, Inc."},{"line_number":3,"context_line":"#"},{"line_number":4,"context_line":"#    Licensed under the Apache License, Version 2.0 (the \"License\"); you may"}],"source_content_type":"application/octet-stream","patch_set":19,"id":"7f515b1d_ba184b84","line":1,"updated":"2017-10-04 04:34:26.000000000","message":"remove this file?","commit_id":"795eb94e7cc47b34c4b43899cdda4ecc4a388dc9"}],"nova/tests/unit/volume/fake.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"439dc9e483f33de0d1579df832f7e1141c8dcba8","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import nova.volume.cinder"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class FakeVolumeAPI(nova.volume.cinder.API):"},{"line_number":22,"context_line":"    def __init__(self):"},{"line_number":23,"context_line":"        self.volumes \u003d {}"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"9f436f4f_53eef921","line":21,"updated":"2017-08-17 11:40:41.000000000","message":"There is already a fake cinder available in nova.tests.fixtures.CinderFixture","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"06963cc869e2e13515cd66977356380f3e0fbd74","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import nova.volume.cinder"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class FakeVolumeAPI(nova.volume.cinder.API):"},{"line_number":22,"context_line":"    def __init__(self):"},{"line_number":23,"context_line":"        self.volumes \u003d {}"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_6a4bdbaf","line":21,"in_reply_to":"7f287b81_2a3ef6d9","updated":"2017-08-24 23:42:40.000000000","message":"Just tried to use the CinderFixture and it doesn\u0027t work for what I\u0027m doing here with booting from volume [1] because we need to be able to create a volume in the test and get it afterward.\n\n[1] http://paste.openstack.org/show/619370/","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"},{"author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"change_message_id":"5f771a10230b6cbee181b8e1f0e9b2c2f0accf3c","unresolved":false,"context_lines":[{"line_number":18,"context_line":"import nova.volume.cinder"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":""},{"line_number":21,"context_line":"class FakeVolumeAPI(nova.volume.cinder.API):"},{"line_number":22,"context_line":"    def __init__(self):"},{"line_number":23,"context_line":"        self.volumes \u003d {}"},{"line_number":24,"context_line":""}],"source_content_type":"text/x-python","patch_set":14,"id":"7f287b81_2a3ef6d9","line":21,"in_reply_to":"9f436f4f_53eef921","updated":"2017-08-24 21:26:48.000000000","message":"Thanks, will see if I can use that.","commit_id":"4ef70e2154592efa6d772fb4a8c104a8b158fd81"}]}
