)]}'
{"nova/compute/resource_tracker.py":[{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"df224b5c9ecb25f82776d716da0d6bda364ff647","unresolved":false,"context_lines":[{"line_number":387,"context_line":""},{"line_number":388,"context_line":"            instance.drop_migration_context()"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_090ef13a","line":390,"range":{"start_line":390,"start_character":14,"end_line":390,"end_character":70},"updated":"2016-09-15 09:00:55.000000000","message":"it his a comment?","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"da857b2213bdaca4fda10c265b54794920ed471d","unresolved":false,"context_lines":[{"line_number":387,"context_line":""},{"line_number":388,"context_line":"            instance.drop_migration_context()"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_465ffb0d","line":390,"range":{"start_line":390,"start_character":14,"end_line":390,"end_character":70},"in_reply_to":"7a8ec9b2_090ef13a","updated":"2016-09-15 11:52:20.000000000","message":"Yes","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"0ffc70c80b2ccbe7ac96d01e8980c4d2748fccab","unresolved":false,"context_lines":[{"line_number":387,"context_line":""},{"line_number":388,"context_line":"            instance.drop_migration_context()"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_c65cebef","line":390,"range":{"start_line":390,"start_character":14,"end_line":390,"end_character":70},"in_reply_to":"7a8ec9b2_465ffb0d","updated":"2016-09-15 11:57:48.000000000","message":"it is written like a method docstring","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"08946b6fcd15189c37cdaf3afc449d3e43c45b2c","unresolved":false,"context_lines":[{"line_number":387,"context_line":""},{"line_number":388,"context_line":"            instance.drop_migration_context()"},{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_254e5b6f","line":390,"range":{"start_line":390,"start_character":14,"end_line":390,"end_character":70},"in_reply_to":"7a8ec9b2_c65cebef","updated":"2016-09-15 14:37:01.000000000","message":"This is consistent with the other comments in this method (see above).","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"df224b5c9ecb25f82776d716da0d6bda364ff647","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":395,"context_line":"            self._update(ctxt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_b403940c","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":51},"updated":"2016-09-15 09:00:55.000000000","message":"why are you dropping pci device here and L383","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"0ffc70c80b2ccbe7ac96d01e8980c4d2748fccab","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":395,"context_line":"            self._update(ctxt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_e696474b","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":51},"in_reply_to":"7a8ec9b2_4648db5b","updated":"2016-09-15 11:57:48.000000000","message":"so why only PCI? should it be also for numa?\nis this instead of https://review.openstack.org/#/c/327356/\nwhen we call to update avaliable resources","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"da857b2213bdaca4fda10c265b54794920ed471d","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":395,"context_line":"            self._update(ctxt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_4648db5b","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":51},"in_reply_to":"7a8ec9b2_b403940c","updated":"2016-09-15 11:52:20.000000000","message":"See commit message:\n\n\"the instance is moved from\ntracked_migrations to tracked_instances\"\n\nPci devices needs to be freed in both cases.","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"08946b6fcd15189c37cdaf3afc449d3e43c45b2c","unresolved":false,"context_lines":[{"line_number":389,"context_line":""},{"line_number":390,"context_line":"        \"\"\"Remove usage for an instance (on revert at destination).\"\"\""},{"line_number":391,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances and prefix \u003d\u003d \u0027new_\u0027):"},{"line_number":392,"context_line":"            self.drop_pci_devices(instance, prefix)"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":395,"context_line":"            self._update(ctxt)"}],"source_content_type":"text/x-python","patch_set":1,"id":"7a8ec9b2_8572cfab","line":392,"range":{"start_line":392,"start_character":12,"end_line":392,"end_character":51},"in_reply_to":"7a8ec9b2_e696474b","updated":"2016-09-15 14:37:01.000000000","message":"I\u0027m not sure about other type of resources (numa, etc.).  I prefer this to be done in a separate patch.","commit_id":"4dbfff4cb41368a23370a9c323984eb65666bb36"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"d1b9cca7540c5123de0f0e2757037e457a4f9e85","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                ctxt \u003d context.elevated()"},{"line_number":381,"context_line":"                self._update(ctxt)"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        \"\"\"Remove usage for an instance that is not tracked in migrations.\"\"\""},{"line_number":384,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":385,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"},{"line_number":386,"context_line":"            self._drop_pci_devices(instance, prefix)"},{"line_number":387,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":390,"context_line":"            self._update(ctxt)"},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":393,"context_line":"    def update_usage(self, context, instance):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a74a57a_b2f94950","line":390,"range":{"start_line":383,"start_character":0,"end_line":390,"end_character":30},"updated":"2016-11-23 07:14:06.000000000","message":"so as I understand the problem is on the dest node, right?\nDoen\u0027t it mean that we just need to refresh the pci devices info?\nwhat I mean if the src compute drop the pci device it already current in the DB, so we just need to update the dest compute the refresh the correct status of the pci devices.right?\n\nyou patch will update twice the database once from the source compute and second from the dest compute","commit_id":"b034ff1a44138bb4eae9fb6b853d7537d49ee017"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"992f934f163046e0ad277647ee0e0f746aa6bd1f","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                ctxt \u003d context.elevated()"},{"line_number":381,"context_line":"                self._update(ctxt)"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        \"\"\"Remove usage for an instance that is not tracked in migrations.\"\"\""},{"line_number":384,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":385,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"},{"line_number":386,"context_line":"            self._drop_pci_devices(instance, prefix)"},{"line_number":387,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":390,"context_line":"            self._update(ctxt)"},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":393,"context_line":"    def update_usage(self, context, instance):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a74a57a_a79ac412","line":390,"range":{"start_line":383,"start_character":0,"end_line":390,"end_character":30},"in_reply_to":"5a74a57a_077ff9aa","updated":"2016-11-23 20:01:07.000000000","message":"It won\u0027t get to L372-377, this block of code gets executed if uuid is in self.tracked_migrations.\n\nresize_claim() is getting executed on the destination node.  A bit down the path, it will store the instance in the tracked_migrations (see https://github.com/openstack/nova/blob/master/nova/compute/resource_tracker.py#L798).","commit_id":"b034ff1a44138bb4eae9fb6b853d7537d49ee017"},{"author":{"_account_id":17973,"name":"Ludovic Beliveau","email":"lbeliveau@gmail.com","username":"lbeliveau"},"change_message_id":"0768aa9bb83323ce12b6ec6b707d1415f413a8d7","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                ctxt \u003d context.elevated()"},{"line_number":381,"context_line":"                self._update(ctxt)"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        \"\"\"Remove usage for an instance that is not tracked in migrations.\"\"\""},{"line_number":384,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":385,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"},{"line_number":386,"context_line":"            self._drop_pci_devices(instance, prefix)"},{"line_number":387,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":390,"context_line":"            self._update(ctxt)"},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":393,"context_line":"    def update_usage(self, context, instance):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a74a57a_b6812b92","line":390,"range":{"start_line":383,"start_character":0,"end_line":390,"end_character":30},"in_reply_to":"5a74a57a_b2f94950","updated":"2016-11-23 13:35:55.000000000","message":"No, as explained in the commit message, the issue is on the source node.  This is where we do the drop_move_claim().\n\nWe need to free the PCI devices for the isntance that is shutted down on the source node after a successful migration.","commit_id":"b034ff1a44138bb4eae9fb6b853d7537d49ee017"},{"author":{"_account_id":12171,"name":"Moshe Levi","email":"moshele@nvidia.com","username":"moshele"},"change_message_id":"ce890df0502108c93ef3ef8cbf7ec9539c7aef8d","unresolved":false,"context_lines":[{"line_number":380,"context_line":"                ctxt \u003d context.elevated()"},{"line_number":381,"context_line":"                self._update(ctxt)"},{"line_number":382,"context_line":""},{"line_number":383,"context_line":"        \"\"\"Remove usage for an instance that is not tracked in migrations.\"\"\""},{"line_number":384,"context_line":"        if (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":385,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"},{"line_number":386,"context_line":"            self._drop_pci_devices(instance, prefix)"},{"line_number":387,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":390,"context_line":"            self._update(ctxt)"},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":393,"context_line":"    def update_usage(self, context, instance):"}],"source_content_type":"text/x-python","patch_set":5,"id":"5a74a57a_077ff9aa","line":390,"range":{"start_line":383,"start_character":0,"end_line":390,"end_character":30},"in_reply_to":"5a74a57a_b6812b92","updated":"2016-11-23 19:24:26.000000000","message":"ok so for this we have lines 372-377, why aren\u0027t we getting to this line?","commit_id":"b034ff1a44138bb4eae9fb6b853d7537d49ee017"},{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"193308c0ecf26bf3024e3132301f59cb542a19a3","unresolved":false,"context_lines":[{"line_number":373,"context_line":"                for pci_device in pci_devices:"},{"line_number":374,"context_line":"                    self.pci_tracker.free_device(pci_device, instance)"},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"                cn \u003d self.compute_nodes[nodename]"},{"line_number":377,"context_line":"                dev_pools_obj \u003d self.pci_tracker.stats.to_device_pools_obj()"},{"line_number":378,"context_line":"                cn.pci_device_pools \u003d dev_pools_obj"},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":381,"context_line":"    def drop_move_claim(self, context, instance, nodename,"}],"source_content_type":"text/x-python","patch_set":12,"id":"5a3905b3_3570d971","line":378,"range":{"start_line":376,"start_character":0,"end_line":378,"end_character":51},"updated":"2017-01-24 17:09:06.000000000","message":"nit: I think\n\n  dev_pools_obj \u003d self.pci_tracker.stats.to_device_pools_obj()\n  self.compute_nodes[nodename].pci_device_pools \u003d dev_pools_obj\n\n...or similar would be more readable (it took me just a moment to figure out we didn\u0027t care about the compute node object itself)","commit_id":"68df2fe7937816ffd25fd4b027efda2f3105f620"},{"author":{"_account_id":24777,"name":"Steven Webster","email":"steven.webster@windriver.com","username":"swebster"},"change_message_id":"03ce6ea7259e7562a8fdddb14e6f4f8cb728ad71","unresolved":false,"context_lines":[{"line_number":373,"context_line":"                for pci_device in pci_devices:"},{"line_number":374,"context_line":"                    self.pci_tracker.free_device(pci_device, instance)"},{"line_number":375,"context_line":""},{"line_number":376,"context_line":"                cn \u003d self.compute_nodes[nodename]"},{"line_number":377,"context_line":"                dev_pools_obj \u003d self.pci_tracker.stats.to_device_pools_obj()"},{"line_number":378,"context_line":"                cn.pci_device_pools \u003d dev_pools_obj"},{"line_number":379,"context_line":""},{"line_number":380,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"},{"line_number":381,"context_line":"    def drop_move_claim(self, context, instance, nodename,"}],"source_content_type":"text/x-python","patch_set":12,"id":"5a3905b3_fb6c72d2","line":378,"range":{"start_line":376,"start_character":0,"end_line":378,"end_character":51},"in_reply_to":"5a3905b3_3570d971","updated":"2017-01-24 22:39:32.000000000","message":"Done","commit_id":"68df2fe7937816ffd25fd4b027efda2f3105f620"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"53d30c9f0e20db40081e6c1e9d861ec8219cb4e0","unresolved":false,"context_lines":[{"line_number":401,"context_line":"                self._update(ctxt, self.compute_nodes[nodename])"},{"line_number":402,"context_line":"        # Remove usage for an instance that is not tracked in migrations (such"},{"line_number":403,"context_line":"        # as on the source node after a migration)."},{"line_number":404,"context_line":"        # NOTE(lbeliveau): On resize on the same node, the instance is"},{"line_number":405,"context_line":"        # included in both tracked_migrations and tracked_instances."},{"line_number":406,"context_line":"        elif (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":407,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a461143_89e220d4","line":404,"updated":"2017-01-26 13:43:44.000000000","message":"I would have put this comment in the beginning of the method.","commit_id":"3a4909ae7e6294e45f09950ebca0b3d7126c80af"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"53d30c9f0e20db40081e6c1e9d861ec8219cb4e0","unresolved":false,"context_lines":[{"line_number":406,"context_line":"        elif (instance[\u0027uuid\u0027] in self.tracked_instances):"},{"line_number":407,"context_line":"            self.tracked_instances.pop(instance[\u0027uuid\u0027])"},{"line_number":408,"context_line":"            self._drop_pci_devices(instance, nodename, prefix)"},{"line_number":409,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":412,"context_line":"            self._update(ctxt, self.compute_nodes[nodename])"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a461143_0c239ebe","line":409,"updated":"2017-01-26 13:43:44.000000000","message":"Yes it\u0027s something we could do as-well, getting the instance_topology and basically on reusing code line 398 to update the usages.","commit_id":"3a4909ae7e6294e45f09950ebca0b3d7126c80af"},{"author":{"_account_id":7730,"name":"Sahid Orentino Ferdjaoui","email":"sahid.ferdjaoui@industrialdiscipline.com","username":"sahid"},"change_message_id":"53d30c9f0e20db40081e6c1e9d861ec8219cb4e0","unresolved":false,"context_lines":[{"line_number":408,"context_line":"            self._drop_pci_devices(instance, nodename, prefix)"},{"line_number":409,"context_line":"            # TODO(lbeliveau): Validate if numa needs the same treatment."},{"line_number":410,"context_line":""},{"line_number":411,"context_line":"            ctxt \u003d context.elevated()"},{"line_number":412,"context_line":"            self._update(ctxt, self.compute_nodes[nodename])"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"    @utils.synchronized(COMPUTE_RESOURCE_SEMAPHORE)"}],"source_content_type":"text/x-python","patch_set":13,"id":"3a461143_e94ba429","line":411,"updated":"2017-01-26 13:43:44.000000000","message":"If you move these two lines outside of the if..else you can save the line 400 and 401","commit_id":"3a4909ae7e6294e45f09950ebca0b3d7126c80af"}],"nova/tests/unit/compute/test_resource_tracker.py":[{"author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"change_message_id":"193308c0ecf26bf3024e3132301f59cb542a19a3","unresolved":false,"context_lines":[{"line_number":1763,"context_line":"        # (which is nothing). This empty list will be merged with the Instance"},{"line_number":1764,"context_line":"        # PCI requests defined directly above."},{"line_number":1765,"context_line":"        pci_req_mock.return_value \u003d objects.InstancePCIRequests(requests\u003d[])"},{"line_number":1766,"context_line":""},{"line_number":1767,"context_line":"        # not using mock.sentinel.ctx because resize_claim calls elevated"},{"line_number":1768,"context_line":"        ctx \u003d mock.MagicMock()"},{"line_number":1769,"context_line":""},{"line_number":1770,"context_line":"        with test.nested("}],"source_content_type":"text/x-python","patch_set":12,"id":"5a3905b3_d5db154d","line":1767,"range":{"start_line":1766,"start_character":0,"end_line":1767,"end_character":73},"updated":"2017-01-24 17:09:06.000000000","message":"Unrelated change, but meh","commit_id":"68df2fe7937816ffd25fd4b027efda2f3105f620"}]}
