)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"c1e0c79712687615d46d5ea753b835806a32deff","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"1fa82e32_b9f0708c","updated":"2023-10-11 13:50:15.000000000","message":"The tests become way too complicated if we have to introspectively handle all possible topologies/configurations. The middle ground we settled on is assuming/requiring certain things configured for us, and expressing those as config options. So while the tests don\u0027t care about which specific CPUs are dedicated or shared, they require disjoint sets for dedicated and shared for all compute hosts (the assumption is we\u0027ll never run on more than 2, but if we ever do we should be able to make it work), and that the quantity of dedicated CPUs is the same for all NUMA nodes, same for shared.\n\nWe should probably document this somewhere...","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"0a4405296f6d437477be3ca93f7b8a1c78745429","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"c41f6b6e_4110b217","in_reply_to":"1fa82e32_b9f0708c","updated":"2023-10-11 14:07:48.000000000","message":"Yeah, I mean that\u0027s an easy thing to say for anything, that it\u0027s too complicated to make it automatic. It\u0027s obviously a spectrum where the right approach is between the two extremes. To me, what\u0027s here seems like there\u0027s too much in the config file required to all line up, somewhat duplicative, and the result of not having that right is test failures because of the inbuilt assumptions of those things. I think that if you\u0027re going to have all those things that need to line up, some sort of assumption-validator that runs before any of the tests would be good, or something. That could confirm that the dedicated-per-numa matches the size of cpus_dedicated, confirms that they don\u0027t overlap between hosts, etc.\n\nAnyway, updated.","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"2534857c2b4a78dce63bdb89f3330b9a9ddeb243","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"9dc87f6c_fce0946c","in_reply_to":"59b1861c_dfcb583a","updated":"2023-10-11 14:17:11.000000000","message":"That\u0027s still the plan, do you still intend to work on that, or should someone else take over?","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"d2ea73f0c132544e1a85e9b72c43567aec6c7a85","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"3d2bbc53_fed976e0","in_reply_to":"9dc87f6c_fce0946c","updated":"2023-10-11 14:21:58.000000000","message":"If we do that, could we have a `tools/validate.py` or something that you can run (manually or before tempest runs) that looks at all of them and validates some \"this is the same size as that\" and \"this set doesn\u0027t overlap with that set\" requirements? Should be trivially easy, but it might be useful as just sort of a unit test of all these loose assumptions.","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"76a9bf0aabe3a4322e55924db7ddbd55083ac007","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"f50aaa41_0a46339c","in_reply_to":"9dc87f6c_fce0946c","updated":"2023-10-11 14:22:52.000000000","message":"The current commit I think is ready (and is already used in a subset of our CI jobs).  What is left is converting/testing all other CI jobs we have currently to use this new approach.  I will work with Jason about converting/testing the remaining jobs.","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":31033,"name":"James Parker","email":"jparker@redhat.com","username":"jparker"},"change_message_id":"94fedb52f2656b26d4a02f40d9fbcc687dcf0c34","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"59b1861c_dfcb583a","in_reply_to":"c41f6b6e_4110b217","updated":"2023-10-11 14:11:40.000000000","message":"I thought we were considering enhancing this [1] at some point to have per host definitions for all the specific details versus how it is done now?  That still leaves the problem of having a large amount on the config side though.\n\n[1] https://review.opendev.org/c/openstack/whitebox-tempest-plugin/+/884903","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"248c47a84c7cd3bf710c6ba41cdc38f5ad31ecd6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":8,"id":"c2d9f1b8_f0458a46","updated":"2023-10-12 19:12:49.000000000","message":"Can one of you confirm this looks good now (and doesn\u0027t skip anything we shouldn\u0027t as a result of the cpu set changes)?","commit_id":"746a981d60ff703b87dbda1593758eb68df73f54"}],"whitebox_tempest_plugin/api/compute/test_cpu_pinning.py":[{"author":{"_account_id":8864,"name":"Artom Lifshitz","email":"notartom@gmail.com","username":"artom"},"change_message_id":"6f8f3316daeb37ab39f00c6f9cfa1d84dd588c4d","unresolved":true,"context_lines":[{"line_number":126,"context_line":"    \"\"\"Validate CPU policy support.\"\"\""},{"line_number":127,"context_line":"    vcpus \u003d 1"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    def setUp(self):"},{"line_number":130,"context_line":"        super().setUp()"},{"line_number":131,"context_line":"        hosts \u003d self.list_compute_hosts()"},{"line_number":132,"context_line":"        min_dedicated \u003d 100"}],"source_content_type":"text/x-python","patch_set":3,"id":"b57233ee_4dee1b83","line":129,"updated":"2023-10-10 23:21:32.000000000","message":"The pattern we tend to prefer is more declarative, so in this case it would be something like CONF.whitebox-hardware.dedicated_cpus_total, though in this case we could obtain it with simple arithmetic with CONF.whitebox.dedicated_cpus_per_numa * lent(CONF.whitebox-hardware.cpu_topology) because the keys in that dict are the NUMA nodes.","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"27b5c0b29acbef2c96a77b248f86f2c21bd951b6","unresolved":true,"context_lines":[{"line_number":126,"context_line":"    \"\"\"Validate CPU policy support.\"\"\""},{"line_number":127,"context_line":"    vcpus \u003d 1"},{"line_number":128,"context_line":""},{"line_number":129,"context_line":"    def setUp(self):"},{"line_number":130,"context_line":"        super().setUp()"},{"line_number":131,"context_line":"        hosts \u003d self.list_compute_hosts()"},{"line_number":132,"context_line":"        min_dedicated \u003d 100"}],"source_content_type":"text/x-python","patch_set":3,"id":"23c3fbb4_00dfcbf3","line":129,"in_reply_to":"b57233ee_4dee1b83","updated":"2023-10-11 13:41:45.000000000","message":"Oh, so, I was thinking this was the way it needed to be done because we don\u0027t know what the dedicated cpus count will be on all the available nodes. I guess you\u0027re saying that they basically need to always be symmetrical and match the `CONF.whitebox` stuff? That sort of thing is why tests like this are fragile (and why I\u0027m having to fix this), so it seems less than ideal to do it that way.\n\nBut okay :)","commit_id":"ce49a11ad2a5feb3e3273862a0db5cda736f1261"}]}
