)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"dd4e845bd2e9ae8ad7a3e0527989803a459dde7d","unresolved":false,"context_lines":[{"line_number":11,"context_line":"we\u0027re still reporting it against the compute node\u0027s capacity. This adds"},{"line_number":12,"context_line":"functional test coverage demonstrating the bug."},{"line_number":13,"context_line":""},{"line_number":14,"context_line":"WIP: Add bug number"},{"line_number":15,"context_line":""},{"line_number":16,"context_line":"Change-Id: Ia46754d8ff65c501545853e6c2909a5a900d45c0"},{"line_number":17,"context_line":"Related-Bug: #\u003cTODO\u003e"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":1,"id":"5f7c97a3_a633e2c3","line":14,"updated":"2018-07-18 15:59:52.000000000","message":"Bug 1782393","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"}],"nova/tests/functional/test_servers.py":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"34ab1bc965c6ea9dbe43ae3e08c70af6d9b60f8e","unresolved":false,"context_lines":[{"line_number":3586,"context_line":"    def setUp(self):"},{"line_number":3587,"context_line":"        super(VolumeBackedServerTest, self).setUp()"},{"line_number":3588,"context_line":"        self.compute1 \u003d self._start_compute(\u0027host\u0027)"},{"line_number":3589,"context_line":"        self.cn \u003d self.compute1.manager._resource_tracker.compute_nodes[\u0027host\u0027]"},{"line_number":3590,"context_line":"        self.flavor_id \u003d self._create_flavor()"},{"line_number":3591,"context_line":""},{"line_number":3592,"context_line":"    def _create_flavor(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_0b63bfac","line":3589,"updated":"2018-07-18 15:23:17.000000000","message":"Alternative to this, you could have use the hypervisor statistics API, which is arguably better for functional testing from the user POV.\n\nhttps://developer.openstack.org/api-ref/compute/#show-hypervisor-statistics","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"bcc0c96605491b009b756d003d9333797a7c83a8","unresolved":false,"context_lines":[{"line_number":3586,"context_line":"    def setUp(self):"},{"line_number":3587,"context_line":"        super(VolumeBackedServerTest, self).setUp()"},{"line_number":3588,"context_line":"        self.compute1 \u003d self._start_compute(\u0027host\u0027)"},{"line_number":3589,"context_line":"        self.cn \u003d self.compute1.manager._resource_tracker.compute_nodes[\u0027host\u0027]"},{"line_number":3590,"context_line":"        self.flavor_id \u003d self._create_flavor()"},{"line_number":3591,"context_line":""},{"line_number":3592,"context_line":"    def _create_flavor(self):"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_860ca6eb","line":3589,"in_reply_to":"5f7c97a3_0b63bfac","updated":"2018-07-18 16:07:22.000000000","message":"Done","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"34ab1bc965c6ea9dbe43ae3e08c70af6d9b60f8e","unresolved":false,"context_lines":[{"line_number":3647,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3648,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3649,"context_line":"        self.assertEqual(35, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        # 10gb root, 20gb ephemerial"},{"line_number":3652,"context_line":"        self.assertEqual(30, self.cn.local_gb_used)"},{"line_number":3653,"context_line":""},{"line_number":3654,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3655,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_8b3eef87","line":3652,"range":{"start_line":3650,"start_character":8,"end_line":3652,"end_character":51},"updated":"2018-07-18 15:23:17.000000000","message":"It\u0027s funny the RT does account for ephemeral disk usage but not swap disk usage:\n\nhttps://github.com/openstack/nova/blob/eb4f65a7951e921b1cd8d05713e144e72f2f254f/nova/compute/resource_tracker.py#L921","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"8c340693709b8673f47d6266778eb07f80ce63d6","unresolved":false,"context_lines":[{"line_number":3647,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3648,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3649,"context_line":"        self.assertEqual(35, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        # 10gb root, 20gb ephemerial"},{"line_number":3652,"context_line":"        self.assertEqual(30, self.cn.local_gb_used)"},{"line_number":3653,"context_line":""},{"line_number":3654,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3655,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_c6613eaa","line":3652,"range":{"start_line":3650,"start_character":8,"end_line":3652,"end_character":51},"in_reply_to":"5f7c97a3_6b7b53f2","updated":"2018-07-18 16:00:23.000000000","message":"Maybe add a TODO or FIXME to account for swap disk once bug 1782386 is fixed?","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"9be7a1ac98d0309d250c220c52c7f8f90b84ae4d","unresolved":false,"context_lines":[{"line_number":3647,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3648,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3649,"context_line":"        self.assertEqual(35, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        # 10gb root, 20gb ephemerial"},{"line_number":3652,"context_line":"        self.assertEqual(30, self.cn.local_gb_used)"},{"line_number":3653,"context_line":""},{"line_number":3654,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3655,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_6b7b53f2","line":3652,"range":{"start_line":3650,"start_character":8,"end_line":3652,"end_character":51},"in_reply_to":"5f7c97a3_6b7cb321","updated":"2018-07-18 15:37:43.000000000","message":"https://bugs.launchpad.net/nova/+bug/1782386","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"f31f6bfcdf250558715dd887dfdd419b067ff76e","unresolved":false,"context_lines":[{"line_number":3647,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3648,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3649,"context_line":"        self.assertEqual(35, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        # 10gb root, 20gb ephemerial"},{"line_number":3652,"context_line":"        self.assertEqual(30, self.cn.local_gb_used)"},{"line_number":3653,"context_line":""},{"line_number":3654,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3655,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_6b7cb321","line":3652,"range":{"start_line":3650,"start_character":8,"end_line":3652,"end_character":51},"in_reply_to":"5f7c97a3_8b3eef87","updated":"2018-07-18 15:29:03.000000000","message":"I guess this goes way back to Grizzly when the DiskFilter was added:\n\nhttps://review.openstack.org/#/c/13182/","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"bcc0c96605491b009b756d003d9333797a7c83a8","unresolved":false,"context_lines":[{"line_number":3647,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3648,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3649,"context_line":"        self.assertEqual(35, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        # 10gb root, 20gb ephemerial"},{"line_number":3652,"context_line":"        self.assertEqual(30, self.cn.local_gb_used)"},{"line_number":3653,"context_line":""},{"line_number":3654,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3655,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_26ccb288","line":3652,"range":{"start_line":3650,"start_character":8,"end_line":3652,"end_character":51},"in_reply_to":"5f7c97a3_c6613eaa","updated":"2018-07-18 16:07:22.000000000","message":"Done","commit_id":"c0435f5785c2c0fb34fe2fe25a10d1d83713bf8b"},{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"e2dd3a3cc371fc62d3e001de4501bfefbdfd3ba6","unresolved":false,"context_lines":[{"line_number":3585,"context_line":""},{"line_number":3586,"context_line":"    def setUp(self):"},{"line_number":3587,"context_line":"        super(VolumeBackedServerTest, self).setUp()"},{"line_number":3588,"context_line":"        self.compute1 \u003d self._start_compute(\u0027host1\u0027)"},{"line_number":3589,"context_line":"        self.flavor_id \u003d self._create_flavor()"},{"line_number":3590,"context_line":""},{"line_number":3591,"context_line":"    def _create_flavor(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_260a7226","line":3588,"range":{"start_line":3588,"start_character":44,"end_line":3588,"end_character":51},"updated":"2018-07-18 16:28:44.000000000","message":"Didn\u0027t really need to change this. But I guess it\u0027s fine since you removed the unused compute2.","commit_id":"36f050505a9fe660b43b9886e09f0d61496a0d94"},{"author":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"change_message_id":"0999267cae558f01148b5b53406fd77bd67aa8db","unresolved":false,"context_lines":[{"line_number":3585,"context_line":""},{"line_number":3586,"context_line":"    def setUp(self):"},{"line_number":3587,"context_line":"        super(VolumeBackedServerTest, self).setUp()"},{"line_number":3588,"context_line":"        self.compute1 \u003d self._start_compute(\u0027host1\u0027)"},{"line_number":3589,"context_line":"        self.flavor_id \u003d self._create_flavor()"},{"line_number":3590,"context_line":""},{"line_number":3591,"context_line":"    def _create_flavor(self):"}],"source_content_type":"text/x-python","patch_set":2,"id":"5f7c97a3_a3baef6d","line":3588,"range":{"start_line":3588,"start_character":44,"end_line":3588,"end_character":51},"in_reply_to":"5f7c97a3_260a7226","updated":"2018-07-18 19:44:49.000000000","message":"I changed it back to the base. Removing the \u00271\u0027 was a cheat to make the compute node assignment fit on one line :)","commit_id":"36f050505a9fe660b43b9886e09f0d61496a0d94"},{"author":{"_account_id":6062,"name":"jichenjc","email":"jichenjc@cn.ibm.com","username":"jichenjc"},"change_message_id":"0e6c8e98c4483012cb01a038a2097a6f5e0e65b4","unresolved":false,"context_lines":[{"line_number":3639,"context_line":"        server \u003d self._wait_for_state_change(self.api, server, \u0027ACTIVE\u0027)"},{"line_number":3640,"context_line":"        return server"},{"line_number":3641,"context_line":""},{"line_number":3642,"context_line":"    def test_ephemeral_has_disk_allocation(self):"},{"line_number":3643,"context_line":"        server \u003d self._create_server()"},{"line_number":3644,"context_line":"        allocs \u003d self._get_allocations_by_server_uuid(server[\u0027id\u0027])"},{"line_number":3645,"context_line":"        resources \u003d list(allocs.values())[0][\u0027resources\u0027]"},{"line_number":3646,"context_line":"        self.assertIn(\u0027MEMORY_MB\u0027, resources)"},{"line_number":3647,"context_line":"        # 10gb root, 20gb ephemeral, 5gb swap"},{"line_number":3648,"context_line":"        expected_usage \u003d 35"},{"line_number":3649,"context_line":"        self.assertEqual(expected_usage, resources[\u0027DISK_GB\u0027])"},{"line_number":3650,"context_line":"        # Ensure the compute node is reporting the correct disk usage"},{"line_number":3651,"context_line":"        self.assertEqual("},{"line_number":3652,"context_line":"            # TODO(efried): Due to bug #1782386, swap is not being reported."},{"line_number":3653,"context_line":"            # expected_usage,"},{"line_number":3654,"context_line":"            30,"},{"line_number":3655,"context_line":"            self.admin_api.get_hypervisor_stats()[\u0027local_gb_used\u0027])"},{"line_number":3656,"context_line":""},{"line_number":3657,"context_line":"    def test_volume_backed_no_disk_allocation(self):"},{"line_number":3658,"context_line":"        server \u003d self._create_volume_backed_server()"}],"source_content_type":"text/x-python","patch_set":4,"id":"5f7c97a3_410dc53e","line":3655,"range":{"start_line":3642,"start_character":4,"end_line":3655,"end_character":67},"updated":"2018-07-23 06:29:26.000000000","message":"I am not sure whether it\u0027s been tested or not and maybe it\u0027s overkill\n\nwe support this and this means flavor.eph \u003d 20 while you can use 10 GB as eph disk.... maybe a follow up patch to check as well?\n\n  --ephemeral size\u003d\u003csize\u003e[,format\u003d\u003cformat\u003e]\n                        Create and attach a local ephemeral block device of\n                        \u003csize\u003e GB and format it to \u003cformat\u003e.","commit_id":"ece289fa5a5e5e805cde5dd7189cf05f643d0fd0"}]}
