)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dan Smith \u003cdansmith@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-07-23 07:49:43 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove \u0027nova.virt.driver.ComputeDriver.estimate_instance_overhead\u0027"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"With the removal of the Core, Ram and Disk filters in change"},{"line_number":10,"context_line":"I8a0d332877fbb9794700081e7954f2501b7e7c09, there\u0027s now only a single"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_5e2fcbf5","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":6},"updated":"2019-07-24 12:59:33.000000000","message":"Deprecate - right? You haven\u0027t removed it.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"4aedd41496b782dfd674d4954da31e3a87ff5f82","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dan Smith \u003cdansmith@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-07-23 07:49:43 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove \u0027nova.virt.driver.ComputeDriver.estimate_instance_overhead\u0027"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"With the removal of the Core, Ram and Disk filters in change"},{"line_number":10,"context_line":"I8a0d332877fbb9794700081e7954f2501b7e7c09, there\u0027s now only a single"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_274c3e75","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":6},"in_reply_to":"7faddb67_5e2fcbf5","updated":"2019-07-24 14:13:56.000000000","message":"He has removed it from all the existing virt drivers, so this is right in that respect. But as you say, I\u0027m not sure why the base method is still there.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c96ba1b0172d12395b806a7842c41f4e1fee55b8","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Dan Smith \u003cdansmith@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2019-07-23 07:49:43 -0700"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"Remove \u0027nova.virt.driver.ComputeDriver.estimate_instance_overhead\u0027"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"With the removal of the Core, Ram and Disk filters in change"},{"line_number":10,"context_line":"I8a0d332877fbb9794700081e7954f2501b7e7c09, there\u0027s now only a single"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_c13afacb","line":7,"range":{"start_line":7,"start_character":0,"end_line":7,"end_character":6},"in_reply_to":"7faddb67_5e2fcbf5","updated":"2019-07-24 15:06:31.000000000","message":"Yeah, I wasn\u0027t sure how to word this in \u003c 72 characters. Deprecate might be the word","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":13,"context_line":"and \u0027free_disk_gb\u0027 fields of a compute nodes \u0027ComputeNode\u0027 object being"},{"line_number":14,"context_line":"modified when calculating usage as part of the resource tracker."},{"line_number":15,"context_line":"However, in most cases these fields aren\u0027t actually used for anything"},{"line_number":16,"context_line":"except logging, the \u0027os-hypervisors\u0027 API, and a path that triggers when"},{"line_number":17,"context_line":"a virt driver doesn\u0027t implement the \u0027update_provider_tree\u0027 interface."},{"line_number":18,"context_line":"Support for virt drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":19,"context_line":"interface was deprecated in I1eae47bce08f6292d38e893a2122289bcd6f4b58"},{"line_number":20,"context_line":"and is no longer used by any of the in-tree drivers. As a result, the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_be87dfb6","line":17,"range":{"start_line":16,"start_character":42,"end_line":17,"end_character":69},"updated":"2019-07-24 12:59:33.000000000","message":"You\u0027ve lost me here. Where is the compute node\u0027s *used fields used when reporting inventory? There are two fallbacks if a driver doesn\u0027t implement update_provider_tree:\n\n1. get_inventory: https://github.com/openstack/nova/blob/a3a8e895b32fa7cf28793801f00772ef261e32f9/nova/compute/resource_tracker.py#L1038 which will call _normalize_inventory_from_cn_obj but that doesn\u0027t use the fields you mentioned above.\n\n2. if the driver doesn\u0027t implement get_inventory, we\u0027ll fallback to https://github.com/openstack/nova/blob/a3a8e895b32fa7cf28793801f00772ef261e32f9/nova/compute/resource_tracker.py#L1044 but compute_node_to_inventory_dict doesn\u0027t use those fields you mentioned above either.\n\nSo as far as I can tell, the non-upt paths don\u0027t have anything to do with those fields above being impacted by overhead or not. The only things that care are filters and the hypervisors API, but they\u0027d essentially be a lie if we included overhead at this point since we\u0027re not using it in the claim anymore and expect operators to compensate for that by bumping the reserved amounts of inventory.\n\nI guess I\u0027m not really sure what we\u0027re gaining by even leaving the overhead stuff in the code - it seems more confusing than anything.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"c96ba1b0172d12395b806a7842c41f4e1fee55b8","unresolved":false,"context_lines":[{"line_number":13,"context_line":"and \u0027free_disk_gb\u0027 fields of a compute nodes \u0027ComputeNode\u0027 object being"},{"line_number":14,"context_line":"modified when calculating usage as part of the resource tracker."},{"line_number":15,"context_line":"However, in most cases these fields aren\u0027t actually used for anything"},{"line_number":16,"context_line":"except logging, the \u0027os-hypervisors\u0027 API, and a path that triggers when"},{"line_number":17,"context_line":"a virt driver doesn\u0027t implement the \u0027update_provider_tree\u0027 interface."},{"line_number":18,"context_line":"Support for virt drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":19,"context_line":"interface was deprecated in I1eae47bce08f6292d38e893a2122289bcd6f4b58"},{"line_number":20,"context_line":"and is no longer used by any of the in-tree drivers. As a result, the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_d293aaa2","line":17,"range":{"start_line":16,"start_character":42,"end_line":17,"end_character":69},"in_reply_to":"7faddb67_8746524f","updated":"2019-07-24 15:06:31.000000000","message":"I got as far as \u0027compute_node_to_inventory_dict\u0027 too...and didn\u0027t bother to look if any of it was being used. Doh. Will respin to PS1","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"4aedd41496b782dfd674d4954da31e3a87ff5f82","unresolved":false,"context_lines":[{"line_number":13,"context_line":"and \u0027free_disk_gb\u0027 fields of a compute nodes \u0027ComputeNode\u0027 object being"},{"line_number":14,"context_line":"modified when calculating usage as part of the resource tracker."},{"line_number":15,"context_line":"However, in most cases these fields aren\u0027t actually used for anything"},{"line_number":16,"context_line":"except logging, the \u0027os-hypervisors\u0027 API, and a path that triggers when"},{"line_number":17,"context_line":"a virt driver doesn\u0027t implement the \u0027update_provider_tree\u0027 interface."},{"line_number":18,"context_line":"Support for virt drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":19,"context_line":"interface was deprecated in I1eae47bce08f6292d38e893a2122289bcd6f4b58"},{"line_number":20,"context_line":"and is no longer used by any of the in-tree drivers. As a result, the"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_8746524f","line":17,"range":{"start_line":16,"start_character":42,"end_line":17,"end_character":69},"in_reply_to":"7faddb67_be87dfb6","updated":"2019-07-24 14:13:56.000000000","message":"Agreed. Especially since we\u0027re not factoring the overhead\u0027d values into scheduling, we shouldn\u0027t be reporting them. People are already baffled as to how nova comes up with the numbers we report in the API, and it always starts with \"the scheduler did something I didn\u0027t expect, so I looked at the free/used values and am now trying to make sense of them.\"","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":20,"context_line":"and is no longer used by any of the in-tree drivers. As a result, the"},{"line_number":21,"context_line":"implementations of the \u0027estimate_instance_overhead\u0027 function for these"},{"line_number":22,"context_line":"drivers can be removed, with an eye on removing the interface entirely"},{"line_number":23,"context_line":"once the drivers are required to implement \u0027update_provider_tree\u0027."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Change-Id: I033e8269194de54432079cbc970431e3dcea7ce5"},{"line_number":26,"context_line":"Signed-off-by: Stephen Finucane \u003csfinucan@redhat.com\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"7faddb67_deadfb31","line":23,"range":{"start_line":23,"start_character":5,"end_line":23,"end_character":8},"updated":"2019-07-24 12:59:33.000000000","message":"all? meaning in and out of tree because we\u0027ll remove the compat code.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"b6253a97c2c5460fc289885dd83b16698213c61a","unresolved":false,"context_lines":[{"line_number":13,"context_line":"and \u0027free_disk_gb\u0027 fields of a compute nodes \u0027ComputeNode\u0027 object being"},{"line_number":14,"context_line":"modified when calculating usage as part of the resource tracker to"},{"line_number":15,"context_line":"include driver-specific overhead. However, these fields are no longer"},{"line_number":16,"context_line":"used for for anything except logging and the \u0027os-hypervisors\u0027 API. Since"},{"line_number":17,"context_line":"overhead is not reflected in placement (and therefore the scheduler),"},{"line_number":18,"context_line":"reporting them as part of the various usage values for both logging and"},{"line_number":19,"context_line":"that API is actually a bit of a lie and is likely to cause confusion"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7faddb67_92a77250","line":16,"range":{"start_line":16,"start_character":5,"end_line":16,"end_character":12},"updated":"2019-07-24 15:39:25.000000000","message":"fooooooooooooorrrrrrrrrrrrrr","commit_id":"97096c8e4a363691a62b608115f27d46425605b4"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ef68cf9539deba16c109c1ba43d57910b8199722","unresolved":false,"context_lines":[{"line_number":13,"context_line":"and \u0027free_disk_gb\u0027 fields of a compute nodes \u0027ComputeNode\u0027 object being"},{"line_number":14,"context_line":"modified when calculating usage as part of the resource tracker to"},{"line_number":15,"context_line":"include driver-specific overhead. However, these fields are no longer"},{"line_number":16,"context_line":"used for for anything except logging and the \u0027os-hypervisors\u0027 API. Since"},{"line_number":17,"context_line":"overhead is not reflected in placement (and therefore the scheduler),"},{"line_number":18,"context_line":"reporting them as part of the various usage values for both logging and"},{"line_number":19,"context_line":"that API is actually a bit of a lie and is likely to cause confusion"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":5,"id":"7faddb67_4d8e3b2f","line":16,"range":{"start_line":16,"start_character":5,"end_line":16,"end_character":12},"in_reply_to":"7faddb67_92a77250","updated":"2019-07-24 16:02:28.000000000","message":"fourty four?","commit_id":"97096c8e4a363691a62b608115f27d46425605b4"}],"nova/compute/resource_tracker.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":1054,"context_line":""},{"line_number":1055,"context_line":"    def _update_usage(self, usage, nodename, sign\u003d1):"},{"line_number":1056,"context_line":"        # TODO(stephenfin): We don\u0027t use the CPU, RAM and disk fields for much"},{"line_number":1057,"context_line":"        # except the AggregateCoreFilter and related RAM and disk filters now,"},{"line_number":1058,"context_line":"        # plus some possible out-of-tree filters. Once the former is removed or"},{"line_number":1059,"context_line":"        # updated to use placement\u0027y stuff, we can think about dropping the"},{"line_number":1060,"context_line":"        # fields entirely"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_9e7c63b6","line":1057,"updated":"2019-07-24 12:59:33.000000000","message":"You\u0027re missing the os-hypervisors API in this list of things that rely on these fields.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0efe7dfb237d096806fc6e44bfd52a765739f5f6","unresolved":false,"context_lines":[{"line_number":1054,"context_line":""},{"line_number":1055,"context_line":"    def _update_usage(self, usage, nodename, sign\u003d1):"},{"line_number":1056,"context_line":"        # TODO(stephenfin): We don\u0027t use the CPU, RAM and disk fields for much"},{"line_number":1057,"context_line":"        # except the AggregateCoreFilter and related RAM and disk filters now,"},{"line_number":1058,"context_line":"        # plus some possible out-of-tree filters. Once the former is removed or"},{"line_number":1059,"context_line":"        # updated to use placement\u0027y stuff, we can think about dropping the"},{"line_number":1060,"context_line":"        # fields entirely"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_f2db464c","line":1057,"in_reply_to":"7faddb67_9e7c63b6","updated":"2019-07-24 15:27:49.000000000","message":"Done","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":1063,"context_line":"        vcpus_usage \u003d usage.get(\u0027vcpus\u0027, 0)"},{"line_number":1064,"context_line":""},{"line_number":1065,"context_line":"        # TODO(stephenfin): Stop including overhead once we remove support for"},{"line_number":1066,"context_line":"        # drivers that don\u0027t implement the \u0027update_provider_tree\u0027 interface and"},{"line_number":1067,"context_line":"        # can therefore no longer rely on the ComputeNode object to provide our"},{"line_number":1068,"context_line":"        # usage"},{"line_number":1069,"context_line":"        overhead \u003d self.driver.estimate_instance_overhead(usage)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_be54bf55","line":1066,"updated":"2019-07-24 12:59:33.000000000","message":"OK so with I1eae47bce08f6292d38e893a2122289bcd6f4b58 that would be the U release.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":1066,"context_line":"        # drivers that don\u0027t implement the \u0027update_provider_tree\u0027 interface and"},{"line_number":1067,"context_line":"        # can therefore no longer rely on the ComputeNode object to provide our"},{"line_number":1068,"context_line":"        # usage"},{"line_number":1069,"context_line":"        overhead \u003d self.driver.estimate_instance_overhead(usage)"},{"line_number":1070,"context_line":"        mem_usage +\u003d overhead[\u0027memory_mb\u0027]"},{"line_number":1071,"context_line":"        disk_usage +\u003d overhead.get(\u0027disk_gb\u0027, 0)"},{"line_number":1072,"context_line":"        vcpus_usage +\u003d overhead.get(\u0027vcpus\u0027, 0)"},{"line_number":1073,"context_line":""},{"line_number":1074,"context_line":"        cn \u003d self.compute_nodes[nodename]"},{"line_number":1075,"context_line":"        cn.memory_mb_used +\u003d sign * mem_usage"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_1e4ab37f","line":1072,"range":{"start_line":1069,"start_character":8,"end_line":1072,"end_character":47},"updated":"2019-07-24 12:59:33.000000000","message":"As noted in the commit message, it seems like a lie to even be reporting this since we\u0027re not using it during the resource claim nor the allocations created in placement. Why even use it still? Also, none of the in tree drivers will implement the overhead method so can\u0027t we just drop it now with a friendly note to the ML that we\u0027re removing it (it\u0027s vestigial by the time we get to this patch in the series anyway).","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0efe7dfb237d096806fc6e44bfd52a765739f5f6","unresolved":false,"context_lines":[{"line_number":1066,"context_line":"        # drivers that don\u0027t implement the \u0027update_provider_tree\u0027 interface and"},{"line_number":1067,"context_line":"        # can therefore no longer rely on the ComputeNode object to provide our"},{"line_number":1068,"context_line":"        # usage"},{"line_number":1069,"context_line":"        overhead \u003d self.driver.estimate_instance_overhead(usage)"},{"line_number":1070,"context_line":"        mem_usage +\u003d overhead[\u0027memory_mb\u0027]"},{"line_number":1071,"context_line":"        disk_usage +\u003d overhead.get(\u0027disk_gb\u0027, 0)"},{"line_number":1072,"context_line":"        vcpus_usage +\u003d overhead.get(\u0027vcpus\u0027, 0)"},{"line_number":1073,"context_line":""},{"line_number":1074,"context_line":"        cn \u003d self.compute_nodes[nodename]"},{"line_number":1075,"context_line":"        cn.memory_mb_used +\u003d sign * mem_usage"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_52d7ba24","line":1072,"range":{"start_line":1069,"start_character":8,"end_line":1072,"end_character":47},"in_reply_to":"7faddb67_1e4ab37f","updated":"2019-07-24 15:27:49.000000000","message":"Done","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"}],"nova/tests/unit/virt/xenapi/test_driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":110,"context_line":"        instance \u003d {\u0027memory_mb\u0027: 30720, \u0027vcpus\u0027: 4}"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"        # expected memory overhead per:"},{"line_number":113,"context_line":"        # https://wiki.openstack.org/wiki/XenServer/Overhead"},{"line_number":114,"context_line":"        expected \u003d ((instance[\u0027memory_mb\u0027] * xenapi_driver.OVERHEAD_PER_MB) +"},{"line_number":115,"context_line":"                    (instance[\u0027vcpus\u0027] * xenapi_driver.OVERHEAD_PER_VCPU) +"},{"line_number":116,"context_line":"                    xenapi_driver.OVERHEAD_BASE)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_fe39d7f1","side":"PARENT","line":113,"range":{"start_line":113,"start_character":10,"end_line":113,"end_character":60},"updated":"2019-07-24 12:59:33.000000000","message":"I still think it would be good to link this into the docs so we don\u0027t lose this.","commit_id":"691239a52f807adf2de9c9042d5faa11a961f7a1"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0efe7dfb237d096806fc6e44bfd52a765739f5f6","unresolved":false,"context_lines":[{"line_number":110,"context_line":"        instance \u003d {\u0027memory_mb\u0027: 30720, \u0027vcpus\u0027: 4}"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"        # expected memory overhead per:"},{"line_number":113,"context_line":"        # https://wiki.openstack.org/wiki/XenServer/Overhead"},{"line_number":114,"context_line":"        expected \u003d ((instance[\u0027memory_mb\u0027] * xenapi_driver.OVERHEAD_PER_MB) +"},{"line_number":115,"context_line":"                    (instance[\u0027vcpus\u0027] * xenapi_driver.OVERHEAD_PER_VCPU) +"},{"line_number":116,"context_line":"                    xenapi_driver.OVERHEAD_BASE)"}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_72d99620","side":"PARENT","line":113,"range":{"start_line":113,"start_character":10,"end_line":113,"end_character":60},"in_reply_to":"7faddb67_fe39d7f1","updated":"2019-07-24 15:27:49.000000000","message":"Done","commit_id":"691239a52f807adf2de9c9042d5faa11a961f7a1"}],"nova/virt/driver.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f8b3222d40d75000aaf683dc19f3bdbc425e06d6","unresolved":false,"context_lines":[{"line_number":262,"context_line":"        Defaults to zero, drivers should override if per-instance overhead"},{"line_number":263,"context_line":"        calculations are desired."},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"        NOTE(stephenfin): This method is deprecated and will be removed once"},{"line_number":266,"context_line":"        support for drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":267,"context_line":"        interface is removed."},{"line_number":268,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_be235fbe","line":265,"updated":"2019-07-24 12:59:33.000000000","message":"Who is this for? Just out of tree drivers that implement it?","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"0efe7dfb237d096806fc6e44bfd52a765739f5f6","unresolved":false,"context_lines":[{"line_number":262,"context_line":"        Defaults to zero, drivers should override if per-instance overhead"},{"line_number":263,"context_line":"        calculations are desired."},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"        NOTE(stephenfin): This method is deprecated and will be removed once"},{"line_number":266,"context_line":"        support for drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":267,"context_line":"        interface is removed."},{"line_number":268,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_32055e7b","line":265,"in_reply_to":"7faddb67_673476df","updated":"2019-07-24 15:27:49.000000000","message":"Done","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"4aedd41496b782dfd674d4954da31e3a87ff5f82","unresolved":false,"context_lines":[{"line_number":262,"context_line":"        Defaults to zero, drivers should override if per-instance overhead"},{"line_number":263,"context_line":"        calculations are desired."},{"line_number":264,"context_line":""},{"line_number":265,"context_line":"        NOTE(stephenfin): This method is deprecated and will be removed once"},{"line_number":266,"context_line":"        support for drivers that don\u0027t implement the \u0027update_provider_tree\u0027"},{"line_number":267,"context_line":"        interface is removed."},{"line_number":268,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"7faddb67_673476df","line":265,"in_reply_to":"7faddb67_be235fbe","updated":"2019-07-24 14:13:56.000000000","message":"No reason to leave it here for them, IMHO. If we\u0027re not going to call it, they can have it defined without any trouble.","commit_id":"e13e1176a0180eece2ed8b8a5b1ad7631f709c56"}]}
