)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"fb24c9f9_85b3e4c8","updated":"2021-11-01 19:52:21.000000000","message":"The comments don\u0027t match the code :) Also, I think you\u0027re missing an assertion, see inline.","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"}],"whitebox_tempest_plugin/api/compute/test_cpu_pinning.py":[{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"e2100ff12cd6d1d46043fb3f2cbbb0909f97ed8d","unresolved":true,"context_lines":[{"line_number":466,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":467,"context_line":"                host\u003dhostname"},{"line_number":468,"context_line":"            )"},{"line_number":469,"context_line":"            server_b \u003d self.create_test_server("},{"line_number":470,"context_line":"                clients\u003dself.os_admin,"},{"line_number":471,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":472,"context_line":"                host\u003dhostname"}],"source_content_type":"text/x-python","patch_set":1,"id":"cf572ca6_0c74436e","side":"PARENT","line":469,"updated":"2021-10-26 15:31:53.000000000","message":"Since the tests are no longer forcing scheduling to a specific host, we\u0027re losing some of the same host comparisons for these tests. I think that is acceptable if we follow up with some of the more scenario style tests I\u0027ve discussed downstream in the past. We could have live/cold migration tests that create multiple guests on the same host and validate XML integrity as they are migrated back and forth from different hosts.","commit_id":"70f1c388d16a4d9f3804ee1f1c9f1d6512380491"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":386,"context_line":"        super(EmulatorThreadTest, cls).skip_checks()"},{"line_number":387,"context_line":"        if not utils.is_extension_enabled(\u0027OS-FLV-EXT-DATA\u0027, \u0027compute\u0027):"},{"line_number":388,"context_line":"            msg \u003d \"OS-FLV-EXT-DATA extension not enabled.\""},{"line_number":389,"context_line":"            raise cls.skipException(msg)"},{"line_number":390,"context_line":"        if getattr(CONF.whitebox_hardware, \u0027cpu_topology\u0027, None) is None:"},{"line_number":391,"context_line":"            msg \u003d \"cpu_topology in whitebox-hardware is not present\""},{"line_number":392,"context_line":"            raise cls.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"06a1889d_2194428b","line":389,"updated":"2021-10-28 19:20:10.000000000","message":"We can leave this as is now for, but in the future we should check whether this server a purpose...","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":386,"context_line":"        super(EmulatorThreadTest, cls).skip_checks()"},{"line_number":387,"context_line":"        if not utils.is_extension_enabled(\u0027OS-FLV-EXT-DATA\u0027, \u0027compute\u0027):"},{"line_number":388,"context_line":"            msg \u003d \"OS-FLV-EXT-DATA extension not enabled.\""},{"line_number":389,"context_line":"            raise cls.skipException(msg)"},{"line_number":390,"context_line":"        if getattr(CONF.whitebox_hardware, \u0027cpu_topology\u0027, None) is None:"},{"line_number":391,"context_line":"            msg \u003d \"cpu_topology in whitebox-hardware is not present\""},{"line_number":392,"context_line":"            raise cls.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":4,"id":"0364c7e5_823e7709","line":389,"in_reply_to":"06a1889d_2194428b","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":402,"context_line":"        self.flavors_client.set_flavor_extra_spec(flavor[\u0027id\u0027], **specs)"},{"line_number":403,"context_line":"        return flavor"},{"line_number":404,"context_line":""},{"line_number":405,"context_line":"    def get_server_emulator_threads(self, server_id):"},{"line_number":406,"context_line":"        \"\"\"Get the host CPU numbers to which the server\u0027s emulator threads are"},{"line_number":407,"context_line":"        pinned."},{"line_number":408,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"b3163e5a_7ae78067","line":405,"updated":"2021-10-28 19:20:10.000000000","message":"Can we use this opportunity to move this to the NUMA mixin helper?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":402,"context_line":"        self.flavors_client.set_flavor_extra_spec(flavor[\u0027id\u0027], **specs)"},{"line_number":403,"context_line":"        return flavor"},{"line_number":404,"context_line":""},{"line_number":405,"context_line":"    def get_server_emulator_threads(self, server_id):"},{"line_number":406,"context_line":"        \"\"\"Get the host CPU numbers to which the server\u0027s emulator threads are"},{"line_number":407,"context_line":"        pinned."},{"line_number":408,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"4f5d520a_11c6ddfb","line":405,"in_reply_to":"b3163e5a_7ae78067","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":434,"context_line":"                                    vcpus\u003dself.shared_cpus_per_numa)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"        server \u003d self.create_test_server("},{"line_number":437,"context_line":"            clients\u003dself.os_admin,"},{"line_number":438,"context_line":"            flavor\u003dflavor[\u0027id\u0027],"},{"line_number":439,"context_line":"        )"},{"line_number":440,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"1f1473a7_5f6817cb","line":437,"updated":"2021-10-28 19:20:10.000000000","message":"Since we\u0027re no longer forcing to a specific host, we don\u0027t need the admin client.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":434,"context_line":"                                    vcpus\u003dself.shared_cpus_per_numa)"},{"line_number":435,"context_line":""},{"line_number":436,"context_line":"        server \u003d self.create_test_server("},{"line_number":437,"context_line":"            clients\u003dself.os_admin,"},{"line_number":438,"context_line":"            flavor\u003dflavor[\u0027id\u0027],"},{"line_number":439,"context_line":"        )"},{"line_number":440,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"27501cd2_8956cead","line":437,"in_reply_to":"1f1473a7_5f6817cb","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":440,"context_line":""},{"line_number":441,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":442,"context_line":"        # the cpu shared set from the host"},{"line_number":443,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":444,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"},{"line_number":445,"context_line":"                                             self.os_admin.services_client)"},{"line_number":446,"context_line":"        cpu_shared_set \u003d host_sm.get_cpu_shared_set()"}],"source_content_type":"text/x-python","patch_set":4,"id":"a1143dc5_fc0b4dcf","line":443,"updated":"2021-10-28 19:20:10.000000000","message":"Let\u0027s use get_host_for_server() here.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":true,"context_lines":[{"line_number":440,"context_line":""},{"line_number":441,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":442,"context_line":"        # the cpu shared set from the host"},{"line_number":443,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":444,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"},{"line_number":445,"context_line":"                                             self.os_admin.services_client)"},{"line_number":446,"context_line":"        cpu_shared_set \u003d host_sm.get_cpu_shared_set()"}],"source_content_type":"text/x-python","patch_set":4,"id":"8b3fa804_abc9d6f8","line":443,"in_reply_to":"a1143dc5_fc0b4dcf","updated":"2021-10-28 19:48:09.000000000","message":"I tried that originally but had some failure, let me respin with it and debug what was going on.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":452,"context_line":"        # Confirm the emulator threads from server\u0027s A and B are both equal"},{"line_number":453,"context_line":"        # to cpu_shared_set"},{"line_number":454,"context_line":"        self.assertEqual("},{"line_number":455,"context_line":"            emulator_threads, cpu_shared_set,"},{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"877d6f4f_1043e58a","line":455,"updated":"2021-10-28 19:20:10.000000000","message":"nit: the order here should be expected, actual - so cpu_shared_set, emulator_threads.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":452,"context_line":"        # Confirm the emulator threads from server\u0027s A and B are both equal"},{"line_number":453,"context_line":"        # to cpu_shared_set"},{"line_number":454,"context_line":"        self.assertEqual("},{"line_number":455,"context_line":"            emulator_threads, cpu_shared_set,"},{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"d2295936_0546fe66","line":455,"in_reply_to":"877d6f4f_1043e58a","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":460,"context_line":""},{"line_number":461,"context_line":"    def test_policy_share_cpu_shared_unset(self):"},{"line_number":462,"context_line":"        \"\"\"With policy set to share and cpu_share_set unset, emulator threads"}],"source_content_type":"text/x-python","patch_set":4,"id":"28d618a1_44e0a906","line":459,"updated":"2021-10-28 19:20:10.000000000","message":"No longer need this, do we?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":460,"context_line":""},{"line_number":461,"context_line":"    def test_policy_share_cpu_shared_unset(self):"},{"line_number":462,"context_line":"        \"\"\"With policy set to share and cpu_share_set unset, emulator threads"}],"source_content_type":"text/x-python","patch_set":4,"id":"368c8c14_f7912d4c","line":459,"in_reply_to":"28d618a1_44e0a906","updated":"2021-10-28 19:48:09.000000000","message":"Yes and no.  We do not have to worry about the server being deleted after NSM has reverted nova.conf changes, but if not explicitly deleted the servers remain until the test class is completed.  With the number of guests using dedicated pCPUs I worry about smaller scale deployments not being able to accommodate all servers that are created.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"4c5f5e9790cef9227b0551eac2fa8d9517537dd4","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":460,"context_line":""},{"line_number":461,"context_line":"    def test_policy_share_cpu_shared_unset(self):"},{"line_number":462,"context_line":"        \"\"\"With policy set to share and cpu_share_set unset, emulator threads"}],"source_content_type":"text/x-python","patch_set":4,"id":"7b5d36d0_31230488","line":459,"in_reply_to":"368c8c14_f7912d4c","updated":"2021-10-28 19:56:36.000000000","message":"cleanup() runs after every test case (aka test method), so I think it should be OK?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"731d1637dab976d1d67e07e4c140b8d779ab5366","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":460,"context_line":""},{"line_number":461,"context_line":"    def test_policy_share_cpu_shared_unset(self):"},{"line_number":462,"context_line":"        \"\"\"With policy set to share and cpu_share_set unset, emulator threads"}],"source_content_type":"text/x-python","patch_set":4,"id":"3f2af7b7_8be872cb","line":459,"in_reply_to":"55665a27_0cecc9e0","updated":"2021-10-29 14:10:38.000000000","message":"Just tested it again this morning and it does keep all guests until the test class is fully complete.  At the same time the number of guests active at once is 4 so I do not think it will be a problem. I will go ahead and remove this.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"aa6fc26dc5698e2644a70acdb43e37fd56cd000c","unresolved":true,"context_lines":[{"line_number":456,"context_line":"            \u0027Emulator threads for server %s is not the same as CPU set \u0027"},{"line_number":457,"context_line":"            \u0027%s\u0027 % (emulator_threads, cpu_shared_set))"},{"line_number":458,"context_line":""},{"line_number":459,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":460,"context_line":""},{"line_number":461,"context_line":"    def test_policy_share_cpu_shared_unset(self):"},{"line_number":462,"context_line":"        \"\"\"With policy set to share and cpu_share_set unset, emulator threads"}],"source_content_type":"text/x-python","patch_set":4,"id":"55665a27_0cecc9e0","line":459,"in_reply_to":"7b5d36d0_31230488","updated":"2021-10-28 20:02:53.000000000","message":"I thought so as well, but I remember having some issues in the past with this specific test class and the last test failing due to there not being enough pCPUs left for scheduling.  Whenever I paused the test I would see the other servers were still up and ACTIVE. I will test it again in this new patchset and remove it if it\u0027s not an issue.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":465,"context_line":"        if self.dedicated_cpus_per_numa \u003c 2:"},{"line_number":466,"context_line":"            raise self.skipException("},{"line_number":467,"context_line":"                \u0027Need at least 2 or more pCPU\\\u0027s per NUMA allocated to the \u0027"},{"line_number":468,"context_line":"                \u0027cpu_dedicated_set of the compute host\u0027)"},{"line_number":469,"context_line":""},{"line_number":470,"context_line":"        hostname \u003d self.list_compute_hosts()[0]"},{"line_number":471,"context_line":"        host_sm \u003d clients.NovaServiceManager("}],"source_content_type":"text/x-python","patch_set":4,"id":"b0492421_6b1cbf8a","line":468,"updated":"2021-10-28 19:20:10.000000000","message":"nit: no apostrophes for plurals :)","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":465,"context_line":"        if self.dedicated_cpus_per_numa \u003c 2:"},{"line_number":466,"context_line":"            raise self.skipException("},{"line_number":467,"context_line":"                \u0027Need at least 2 or more pCPU\\\u0027s per NUMA allocated to the \u0027"},{"line_number":468,"context_line":"                \u0027cpu_dedicated_set of the compute host\u0027)"},{"line_number":469,"context_line":""},{"line_number":470,"context_line":"        hostname \u003d self.list_compute_hosts()[0]"},{"line_number":471,"context_line":"        host_sm \u003d clients.NovaServiceManager("}],"source_content_type":"text/x-python","patch_set":4,"id":"2d7bbd74_676aba75","line":468,"in_reply_to":"b0492421_6b1cbf8a","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":471,"context_line":"        host_sm \u003d clients.NovaServiceManager("},{"line_number":472,"context_line":"            hostname, \u0027nova-compute\u0027, self.os_admin.services_client)"},{"line_number":473,"context_line":""},{"line_number":474,"context_line":"        with host_sm.config_options((\u0027compute\u0027, \u0027cpu_shared_set\u0027, None)):"},{"line_number":475,"context_line":""},{"line_number":476,"context_line":"            # Create a flavor using the shared threads_policy and two instances"},{"line_number":477,"context_line":"            # on the same host"}],"source_content_type":"text/x-python","patch_set":4,"id":"d81a4b3e_3ca712f7","line":474,"updated":"2021-10-28 19:20:10.000000000","message":"Could we replace this with config_all_computes and avoid the list_compute_hosts()[0] construct?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":471,"context_line":"        host_sm \u003d clients.NovaServiceManager("},{"line_number":472,"context_line":"            hostname, \u0027nova-compute\u0027, self.os_admin.services_client)"},{"line_number":473,"context_line":""},{"line_number":474,"context_line":"        with host_sm.config_options((\u0027compute\u0027, \u0027cpu_shared_set\u0027, None)):"},{"line_number":475,"context_line":""},{"line_number":476,"context_line":"            # Create a flavor using the shared threads_policy and two instances"},{"line_number":477,"context_line":"            # on the same host"}],"source_content_type":"text/x-python","patch_set":4,"id":"7ef8a5da_d74344cc","line":474,"in_reply_to":"d81a4b3e_3ca712f7","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":482,"context_line":"            server_a \u003d self.create_test_server("},{"line_number":483,"context_line":"                clients\u003dself.os_admin,"},{"line_number":484,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":485,"context_line":"                host\u003dhostname"},{"line_number":486,"context_line":"            )"},{"line_number":487,"context_line":"            server_b \u003d self.create_test_server("},{"line_number":488,"context_line":"                clients\u003dself.os_admin,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3de8fa99_5fe5b219","line":485,"updated":"2021-10-28 19:20:10.000000000","message":"We\u0027ll no longer need the host here, nor the admin clients two lines up.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":482,"context_line":"            server_a \u003d self.create_test_server("},{"line_number":483,"context_line":"                clients\u003dself.os_admin,"},{"line_number":484,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":485,"context_line":"                host\u003dhostname"},{"line_number":486,"context_line":"            )"},{"line_number":487,"context_line":"            server_b \u003d self.create_test_server("},{"line_number":488,"context_line":"                clients\u003dself.os_admin,"}],"source_content_type":"text/x-python","patch_set":4,"id":"f2ab792a_adf316b7","line":485,"in_reply_to":"3de8fa99_5fe5b219","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":484,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":485,"context_line":"                host\u003dhostname"},{"line_number":486,"context_line":"            )"},{"line_number":487,"context_line":"            server_b \u003d self.create_test_server("},{"line_number":488,"context_line":"                clients\u003dself.os_admin,"},{"line_number":489,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":490,"context_line":"                host\u003dhostname"}],"source_content_type":"text/x-python","patch_set":4,"id":"8d6699f5_207e0ca9","line":487,"updated":"2021-10-28 19:20:10.000000000","message":"Would need to double check if we have the SameHostFilter turned on in our CI, but here we could use the same_host scheduler hint and avoid the host and admin_client as well.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":484,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":485,"context_line":"                host\u003dhostname"},{"line_number":486,"context_line":"            )"},{"line_number":487,"context_line":"            server_b \u003d self.create_test_server("},{"line_number":488,"context_line":"                clients\u003dself.os_admin,"},{"line_number":489,"context_line":"                flavor\u003dflavor[\u0027id\u0027],"},{"line_number":490,"context_line":"                host\u003dhostname"}],"source_content_type":"text/x-python","patch_set":4,"id":"add6dbae_b0cc3b3b","line":487,"in_reply_to":"8d6699f5_207e0ca9","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":518,"context_line":"                cpu_pins_a.isdisjoint(cpu_pins_b),"},{"line_number":519,"context_line":"                \u0027Different server pins overlap: %s and %s\u0027 % (cpu_pins_a,"},{"line_number":520,"context_line":"                                                              cpu_pins_b))"},{"line_number":521,"context_line":"            self.delete_server(server_a[\u0027id\u0027])"},{"line_number":522,"context_line":"            self.delete_server(server_b[\u0027id\u0027])"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    def test_policy_isolate(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"f3378987_250b97fb","line":521,"updated":"2021-10-28 19:20:10.000000000","message":"I think we no longer need these, correct?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":true,"context_lines":[{"line_number":518,"context_line":"                cpu_pins_a.isdisjoint(cpu_pins_b),"},{"line_number":519,"context_line":"                \u0027Different server pins overlap: %s and %s\u0027 % (cpu_pins_a,"},{"line_number":520,"context_line":"                                                              cpu_pins_b))"},{"line_number":521,"context_line":"            self.delete_server(server_a[\u0027id\u0027])"},{"line_number":522,"context_line":"            self.delete_server(server_b[\u0027id\u0027])"},{"line_number":523,"context_line":""},{"line_number":524,"context_line":"    def test_policy_isolate(self):"}],"source_content_type":"text/x-python","patch_set":4,"id":"261ec61e_8f25668a","line":521,"in_reply_to":"f3378987_250b97fb","updated":"2021-10-28 19:48:09.000000000","message":"It\u0027s only impacting shared_set so I believe you are correct in that regard. I\u0027d still be concerned about what I mentioned in #L459 though.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":529,"context_line":"        # instances on the same host"},{"line_number":530,"context_line":"        if self.dedicated_cpus_per_numa \u003c 2:"},{"line_number":531,"context_line":"            raise self.skipException("},{"line_number":532,"context_line":"                \u0027Need at least 2 or more pCPU\\\u0027s per NUMA allocated to the \u0027"},{"line_number":533,"context_line":"                \u0027cpu_dedicated_set of the compute host\u0027)"},{"line_number":534,"context_line":""},{"line_number":535,"context_line":"        flavor \u003d self.create_flavor(threads_policy\u003d\u0027isolate\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"f1f20aa6_a49cfed2","line":532,"updated":"2021-10-28 19:20:10.000000000","message":"nit: plurals and apostrophes again ;)","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":529,"context_line":"        # instances on the same host"},{"line_number":530,"context_line":"        if self.dedicated_cpus_per_numa \u003c 2:"},{"line_number":531,"context_line":"            raise self.skipException("},{"line_number":532,"context_line":"                \u0027Need at least 2 or more pCPU\\\u0027s per NUMA allocated to the \u0027"},{"line_number":533,"context_line":"                \u0027cpu_dedicated_set of the compute host\u0027)"},{"line_number":534,"context_line":""},{"line_number":535,"context_line":"        flavor \u003d self.create_flavor(threads_policy\u003d\u0027isolate\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"33156f50_32bc4842","line":532,"in_reply_to":"f1f20aa6_a49cfed2","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":536,"context_line":"                                    vcpus\u003d(self.dedicated_cpus_per_numa - 1))"},{"line_number":537,"context_line":""},{"line_number":538,"context_line":"        server \u003d self.create_test_server("},{"line_number":539,"context_line":"            clients\u003dself.os_admin,"},{"line_number":540,"context_line":"            flavor\u003dflavor[\u0027id\u0027],"},{"line_number":541,"context_line":"        )"},{"line_number":542,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"eaa43e29_ddb364f5","line":539,"updated":"2021-10-28 19:20:10.000000000","message":"No need for the admin client here.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":536,"context_line":"                                    vcpus\u003d(self.dedicated_cpus_per_numa - 1))"},{"line_number":537,"context_line":""},{"line_number":538,"context_line":"        server \u003d self.create_test_server("},{"line_number":539,"context_line":"            clients\u003dself.os_admin,"},{"line_number":540,"context_line":"            flavor\u003dflavor[\u0027id\u0027],"},{"line_number":541,"context_line":"        )"},{"line_number":542,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"f845cff6_a97ad257","line":539,"in_reply_to":"eaa43e29_ddb364f5","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":545,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":546,"context_line":"        cpu_pins \u003d self.get_pinning_as_set(server[\u0027id\u0027])"},{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":549,"context_line":"        # the cpu dedicated set from the host"},{"line_number":550,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":551,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"3b3626e4_e332d2a1","line":548,"range":{"start_line":548,"start_character":61,"end_line":548,"end_character":64},"updated":"2021-10-28 19:20:10.000000000","message":"nit: \"to\"","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":545,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":546,"context_line":"        cpu_pins \u003d self.get_pinning_as_set(server[\u0027id\u0027])"},{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":549,"context_line":"        # the cpu dedicated set from the host"},{"line_number":550,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":551,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"}],"source_content_type":"text/x-python","patch_set":4,"id":"9ff10cb2_30f3436a","line":548,"range":{"start_line":548,"start_character":61,"end_line":548,"end_character":64},"in_reply_to":"3b3626e4_e332d2a1","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":549,"context_line":"        # the cpu dedicated set from the host"},{"line_number":550,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":551,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"},{"line_number":552,"context_line":"                                             self.os_admin.services_client)"},{"line_number":553,"context_line":"        cpu_dedicated_set \u003d host_sm.get_cpu_dedicated_set()"}],"source_content_type":"text/x-python","patch_set":4,"id":"4abc02dd_b1cb77bb","line":550,"updated":"2021-10-28 19:20:10.000000000","message":"get_host_for_server()?","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":true,"context_lines":[{"line_number":547,"context_line":""},{"line_number":548,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":549,"context_line":"        # the cpu dedicated set from the host"},{"line_number":550,"context_line":"        host \u003d server[\u0027OS-EXT-SRV-ATTR:host\u0027]"},{"line_number":551,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"},{"line_number":552,"context_line":"                                             self.os_admin.services_client)"},{"line_number":553,"context_line":"        cpu_dedicated_set \u003d host_sm.get_cpu_dedicated_set()"}],"source_content_type":"text/x-python","patch_set":4,"id":"12aa152f_f18d105e","line":550,"in_reply_to":"4abc02dd_b1cb77bb","updated":"2021-10-28 19:48:09.000000000","message":"Same as the #L443, let me see what I was doing wrong.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":584,"context_line":"        # Confirm the instance cannot be built"},{"line_number":585,"context_line":"        self.assertRaises(BuildErrorException,"},{"line_number":586,"context_line":"                          self.create_test_server,"},{"line_number":587,"context_line":"                          clients\u003dself.os_admin,"},{"line_number":588,"context_line":"                          flavor\u003dflavor[\u0027id\u0027])"},{"line_number":589,"context_line":""},{"line_number":590,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"4178e454_27d781a0","line":587,"updated":"2021-10-28 19:20:10.000000000","message":"No need for the admin client here either.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":584,"context_line":"        # Confirm the instance cannot be built"},{"line_number":585,"context_line":"        self.assertRaises(BuildErrorException,"},{"line_number":586,"context_line":"                          self.create_test_server,"},{"line_number":587,"context_line":"                          clients\u003dself.os_admin,"},{"line_number":588,"context_line":"                          flavor\u003dflavor[\u0027id\u0027])"},{"line_number":589,"context_line":""},{"line_number":590,"context_line":""}],"source_content_type":"text/x-python","patch_set":4,"id":"81910174_cef82637","line":587,"in_reply_to":"4178e454_27d781a0","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":true,"context_lines":[{"line_number":411,"context_line":"            raise self.skipException(\u0027Test requires cpu_shared_set to be \u0027"},{"line_number":412,"context_line":"                                     \u0027configured on the compute hosts\u0027)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        # Create a flavor using the shared threads_policy and two instances"},{"line_number":415,"context_line":"        # on the same host"},{"line_number":416,"context_line":"        flavor \u003d self.create_flavor(threads_policy\u003d\u0027share\u0027,"},{"line_number":417,"context_line":"                                    vcpus\u003dself.shared_cpus_per_numa)"}],"source_content_type":"text/x-python","patch_set":6,"id":"13507a1b_8520b374","line":414,"updated":"2021-11-01 19:52:21.000000000","message":"Only one instance is being created...","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"4742b8be73eeaf6dc9835f374c4f1774d1bdff7c","unresolved":false,"context_lines":[{"line_number":411,"context_line":"            raise self.skipException(\u0027Test requires cpu_shared_set to be \u0027"},{"line_number":412,"context_line":"                                     \u0027configured on the compute hosts\u0027)"},{"line_number":413,"context_line":""},{"line_number":414,"context_line":"        # Create a flavor using the shared threads_policy and two instances"},{"line_number":415,"context_line":"        # on the same host"},{"line_number":416,"context_line":"        flavor \u003d self.create_flavor(threads_policy\u003d\u0027share\u0027,"},{"line_number":417,"context_line":"                                    vcpus\u003dself.shared_cpus_per_numa)"}],"source_content_type":"text/x-python","patch_set":6,"id":"91ba355f_c52ecfa3","line":414,"in_reply_to":"13507a1b_8520b374","updated":"2021-11-01 21:06:17.000000000","message":"Ack","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":true,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        server \u003d self.create_test_server(flavor\u003dflavor[\u0027id\u0027])"},{"line_number":420,"context_line":""},{"line_number":421,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":422,"context_line":"        # the cpu shared set from the host"},{"line_number":423,"context_line":"        host \u003d self.get_host_for_server(server[\u0027id\u0027])"},{"line_number":424,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"804a68d3_cfe87602","line":421,"range":{"start_line":421,"start_character":61,"end_line":421,"end_character":64},"updated":"2021-11-01 19:52:21.000000000","message":"nit: \"to\"","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"4742b8be73eeaf6dc9835f374c4f1774d1bdff7c","unresolved":false,"context_lines":[{"line_number":418,"context_line":""},{"line_number":419,"context_line":"        server \u003d self.create_test_server(flavor\u003dflavor[\u0027id\u0027])"},{"line_number":420,"context_line":""},{"line_number":421,"context_line":"        # Determine the compute host the guest was scheduled too and gather"},{"line_number":422,"context_line":"        # the cpu shared set from the host"},{"line_number":423,"context_line":"        host \u003d self.get_host_for_server(server[\u0027id\u0027])"},{"line_number":424,"context_line":"        host_sm \u003d clients.NovaServiceManager(host, \u0027nova-compute\u0027,"}],"source_content_type":"text/x-python","patch_set":6,"id":"d8112957_d67f12a8","line":421,"range":{"start_line":421,"start_character":61,"end_line":421,"end_character":64},"in_reply_to":"804a68d3_cfe87602","updated":"2021-11-01 21:06:17.000000000","message":"Ack","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":true,"context_lines":[{"line_number":425,"context_line":"                                             self.os_admin.services_client)"},{"line_number":426,"context_line":"        cpu_shared_set \u003d host_sm.get_cpu_shared_set()"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"        # Gather the emulator threads from both servers"},{"line_number":429,"context_line":"        emulator_threads \u003d \\"},{"line_number":430,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":431,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"05dbc059_6de91da9","line":428,"updated":"2021-11-01 19:52:21.000000000","message":"Err, there\u0027s only 1 server?","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"4742b8be73eeaf6dc9835f374c4f1774d1bdff7c","unresolved":false,"context_lines":[{"line_number":425,"context_line":"                                             self.os_admin.services_client)"},{"line_number":426,"context_line":"        cpu_shared_set \u003d host_sm.get_cpu_shared_set()"},{"line_number":427,"context_line":""},{"line_number":428,"context_line":"        # Gather the emulator threads from both servers"},{"line_number":429,"context_line":"        emulator_threads \u003d \\"},{"line_number":430,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":431,"context_line":""}],"source_content_type":"text/x-python","patch_set":6,"id":"f851ce9b_27f411e5","line":428,"in_reply_to":"05dbc059_6de91da9","updated":"2021-11-01 21:06:17.000000000","message":"Ack","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":true,"context_lines":[{"line_number":429,"context_line":"        emulator_threads \u003d \\"},{"line_number":430,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":431,"context_line":""},{"line_number":432,"context_line":"        # Confirm the emulator threads from server\u0027s A and B are both equal"},{"line_number":433,"context_line":"        # to cpu_shared_set"},{"line_number":434,"context_line":"        self.assertEqual("},{"line_number":435,"context_line":"            cpu_shared_set, emulator_threads,"}],"source_content_type":"text/x-python","patch_set":6,"id":"a265c08f_ea4969cf","line":432,"updated":"2021-11-01 19:52:21.000000000","message":"Still only one server...","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"4742b8be73eeaf6dc9835f374c4f1774d1bdff7c","unresolved":false,"context_lines":[{"line_number":429,"context_line":"        emulator_threads \u003d \\"},{"line_number":430,"context_line":"            self.get_server_emulator_threads(server[\u0027id\u0027])"},{"line_number":431,"context_line":""},{"line_number":432,"context_line":"        # Confirm the emulator threads from server\u0027s A and B are both equal"},{"line_number":433,"context_line":"        # to cpu_shared_set"},{"line_number":434,"context_line":"        self.assertEqual("},{"line_number":435,"context_line":"            cpu_shared_set, emulator_threads,"}],"source_content_type":"text/x-python","patch_set":6,"id":"17ab132e_def62dad","line":432,"in_reply_to":"a265c08f_ea4969cf","updated":"2021-11-01 21:06:17.000000000","message":"Ack","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"b95ac611c8ccac6667ab07e3f17739057a8dd87a","unresolved":true,"context_lines":[{"line_number":533,"context_line":"            cpu_pins.isdisjoint(emulator_threads),"},{"line_number":534,"context_line":"            \u0027Threads %s overlap with CPUs %s\u0027 % (emulator_threads,"},{"line_number":535,"context_line":"                                                 cpu_pins))"},{"line_number":536,"context_line":""},{"line_number":537,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":538,"context_line":""},{"line_number":539,"context_line":"    def test_emulator_no_extra_cpu(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"03f24bfb_99a854fd","line":536,"updated":"2021-11-01 19:52:21.000000000","message":"Don\u0027t we also need to assert that emulator_threads are a subset of cpu_dedicated_set?","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"4742b8be73eeaf6dc9835f374c4f1774d1bdff7c","unresolved":false,"context_lines":[{"line_number":533,"context_line":"            cpu_pins.isdisjoint(emulator_threads),"},{"line_number":534,"context_line":"            \u0027Threads %s overlap with CPUs %s\u0027 % (emulator_threads,"},{"line_number":535,"context_line":"                                                 cpu_pins))"},{"line_number":536,"context_line":""},{"line_number":537,"context_line":"        self.delete_server(server[\u0027id\u0027])"},{"line_number":538,"context_line":""},{"line_number":539,"context_line":"    def test_emulator_no_extra_cpu(self):"}],"source_content_type":"text/x-python","patch_set":6,"id":"fc3f689a_d41ba451","line":536,"in_reply_to":"03f24bfb_99a854fd","updated":"2021-11-01 21:06:17.000000000","message":"Yup thanks for catching this.  The original for loop made the assertion and I did not bring the logic over with the change.","commit_id":"bfbaf8705cc2eff808a4c0ce7f183ed50d413fa6"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"887d26c99627edce2a77eef632674895ad1c8a4c","unresolved":true,"context_lines":[{"line_number":642,"context_line":"        if not compute.is_scheduler_filter_enabled(\u0027DifferentHostFilter\u0027):"},{"line_number":643,"context_line":"            raise cls.skipException(\u0027DifferentHostFilter required.\u0027)"},{"line_number":644,"context_line":""},{"line_number":645,"context_line":"    def test_cpu_pinning(self):"},{"line_number":646,"context_line":"        if getattr(CONF.whitebox_hardware, \u0027cpu_topology\u0027, None) is None:"},{"line_number":647,"context_line":"            msg \u003d (\"cpu_topology in whitebox-hardware is not present\")"},{"line_number":648,"context_line":"            raise self.skipException(msg)"}],"source_content_type":"text/x-python","patch_set":7,"id":"b64dd8d8_8876f095","line":645,"updated":"2021-11-01 23:00:07.000000000","message":"I don\u0027t this is supposed to be in this commit...","commit_id":"84e17069b694429fa4239558cbf7acd4e3391ba2"}],"whitebox_tempest_plugin/config.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"610db71373d4a52856b7efa296419aea3f1c0f29","unresolved":true,"context_lines":[{"line_number":228,"context_line":"    cfg.IntOpt("},{"line_number":229,"context_line":"        \u0027dedicated_cpus_per_numa\u0027,"},{"line_number":230,"context_line":"        default\u003d0,"},{"line_number":231,"context_line":"        help\u003d\u0027Number of pCPU\\\u0027s allocated for cpu_dedicated_set per NUMA\u0027),"},{"line_number":232,"context_line":"    cfg.IntOpt("},{"line_number":233,"context_line":"        \u0027shared_cpus_per_numa\u0027,"},{"line_number":234,"context_line":"        default\u003d0,"}],"source_content_type":"text/x-python","patch_set":4,"id":"1143ecba_b2b8bd45","line":231,"updated":"2021-10-28 19:20:10.000000000","message":"nit: PCPUS is a plural, not a possessive, no need for the apostrophe.","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"6ebda8a4a2b34873c66e93cf17e20faa45f2d079","unresolved":false,"context_lines":[{"line_number":228,"context_line":"    cfg.IntOpt("},{"line_number":229,"context_line":"        \u0027dedicated_cpus_per_numa\u0027,"},{"line_number":230,"context_line":"        default\u003d0,"},{"line_number":231,"context_line":"        help\u003d\u0027Number of pCPU\\\u0027s allocated for cpu_dedicated_set per NUMA\u0027),"},{"line_number":232,"context_line":"    cfg.IntOpt("},{"line_number":233,"context_line":"        \u0027shared_cpus_per_numa\u0027,"},{"line_number":234,"context_line":"        default\u003d0,"}],"source_content_type":"text/x-python","patch_set":4,"id":"efc6dc62_a48b7ae6","line":231,"in_reply_to":"1143ecba_b2b8bd45","updated":"2021-10-28 19:48:09.000000000","message":"Ack","commit_id":"a133404f921e1c92e96984ab67350ed76138671f"}]}
