)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":true,"context_lines":[{"line_number":4,"context_line":"Commit:     Sylvain Bauza \u003csbauza@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-02-17 19:14:58 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"per-property ImageMetaPropsWeigher"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new config option that will only check specific properties."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"7bb571da_fbfe412d","line":7,"updated":"2025-02-17 18:26:23.000000000","message":"Capitalize","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":4,"context_line":"Commit:     Sylvain Bauza \u003csbauza@redhat.com\u003e"},{"line_number":5,"context_line":"CommitDate: 2025-02-17 19:14:58 +0100"},{"line_number":6,"context_line":""},{"line_number":7,"context_line":"per-property ImageMetaPropsWeigher"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new config option that will only check specific properties."},{"line_number":10,"context_line":""}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"6176476e_83b2a5ce","line":7,"in_reply_to":"7bb571da_fbfe412d","updated":"2025-02-20 02:59:50.000000000","message":"Done","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":true,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"per-property ImageMetaPropsWeigher"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new config option that will only check specific properties."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Iae51558b9eb03da705e0da939cbd459b4d3b51f7"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"fbc0b108_e4f25cc0","line":9,"updated":"2025-02-17 18:26:23.000000000","message":"...and allow weighing properties differently?","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":6,"context_line":""},{"line_number":7,"context_line":"per-property ImageMetaPropsWeigher"},{"line_number":8,"context_line":""},{"line_number":9,"context_line":"Add a new config option that will only check specific properties."},{"line_number":10,"context_line":""},{"line_number":11,"context_line":"Change-Id: Iae51558b9eb03da705e0da939cbd459b4d3b51f7"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":2,"id":"e2f9e3c4_f8dad342","line":9,"in_reply_to":"fbc0b108_e4f25cc0","updated":"2025-02-20 02:59:50.000000000","message":"Acknowledged","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":1,"id":"34a7afcc_2bba08d0","updated":"2025-02-14 15:17:22.000000000","message":"This doesn\u0027t work exactly like I thought (with the inner weight values) but I do think this gives us more options than without them so I think it\u0027s worth doing.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":2,"id":"0ca16af6_8b7b47fc","updated":"2025-02-17 18:26:23.000000000","message":"I\u0027m honestly not sure what to say about the weight-vs-ratio thing, so I\u0027ll defer to the next person to review this. I can also fix up the grammar nits myself if that\u0027s all that prevents this from landing.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"16cf4637aecd294e53c1ef9375471741ec092e70","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"fc796fdd_b9bd7622","updated":"2025-02-25 16:29:29.000000000","message":"Forgot to come back to this after the recheck, looks good now.","commit_id":"7388362f28e53cbc87a4476cde1a798a6fa78775"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"63aee5170381a91520d2782608597b7d824cff9f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"207e1c4c_22e348fb","updated":"2025-02-20 14:56:36.000000000","message":"recheck I see no fails in the scheduler log, not sure if related or not","commit_id":"7388362f28e53cbc87a4476cde1a798a6fa78775"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"dc3fc69dbd732e6a4518117ee31679f686ef5630","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":6,"id":"8dfce1a9_44acce93","updated":"2025-02-20 08:37:55.000000000","message":"recheck guest ssh timeout even if that\u0027s for test_image_defined_boot_from_volume test method","commit_id":"7388362f28e53cbc87a4476cde1a798a6fa78775"}],"doc/source/admin/scheduling.rst":[{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"066ab5c8d92ee1f30802432e281368e92f27e92f","unresolved":true,"context_lines":[{"line_number":885,"context_line":"are specified using the :oslo.config:option:`metrics.weight_setting` config"},{"line_number":886,"context_line":"option. For example:"},{"line_number":887,"context_line":""},{"line_number":888,"context_line":".. code-block:: ini"},{"line_number":889,"context_line":""},{"line_number":890,"context_line":"    [metrics]"},{"line_number":891,"context_line":"    weight_setting \u003d name1\u003d1.0, name2\u003d-1.0"},{"line_number":892,"context_line":""},{"line_number":893,"context_line":"You can specify the metrics that are required, along with the weight of those"},{"line_number":894,"context_line":"that are not and are not available using the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"52d06c24_3d9f4290","line":891,"range":{"start_line":888,"start_character":0,"end_line":891,"end_character":42},"updated":"2025-02-17 18:19:59.000000000","message":"i would like to see an example like this showing the section and a valid set of values for the new option","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":885,"context_line":"are specified using the :oslo.config:option:`metrics.weight_setting` config"},{"line_number":886,"context_line":"option. For example:"},{"line_number":887,"context_line":""},{"line_number":888,"context_line":".. code-block:: ini"},{"line_number":889,"context_line":""},{"line_number":890,"context_line":"    [metrics]"},{"line_number":891,"context_line":"    weight_setting \u003d name1\u003d1.0, name2\u003d-1.0"},{"line_number":892,"context_line":""},{"line_number":893,"context_line":"You can specify the metrics that are required, along with the weight of those"},{"line_number":894,"context_line":"that are not and are not available using the"}],"source_content_type":"text/x-rst","patch_set":1,"id":"185b04f0_77d3ba9f","line":891,"range":{"start_line":888,"start_character":0,"end_line":891,"end_character":42},"in_reply_to":"52d06c24_3d9f4290","updated":"2025-02-20 02:59:50.000000000","message":"Acknowledged","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":true,"context_lines":[{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro``` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice."},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"Utilization-aware scheduling"}],"source_content_type":"text/x-rst","patch_set":1,"id":"35089458_a33e31ea","line":1093,"updated":"2025-02-14 15:17:22.000000000","message":"I think you should add another example, one property with no weight, one with some weight, and one with more weight to fully illustrate the idea. Also, you should explain that this is sort of a pre-weight, which then gets the multiplier treatment. Otherwise people might put a big number here.\n\nAnd then what about leaving everything unset/equal?","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"87386f9ab0cd5d8c21b5ab0e18f3c4da4676e755","unresolved":false,"context_lines":[{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro``` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice."},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"Utilization-aware scheduling"}],"source_content_type":"text/x-rst","patch_set":1,"id":"5b288be0_dcce04c6","line":1093,"in_reply_to":"35089458_a33e31ea","updated":"2025-02-17 18:08:35.000000000","message":"Good points, added more information in the doc.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"066ab5c8d92ee1f30802432e281368e92f27e92f","unresolved":true,"context_lines":[{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro``` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice."},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"Utilization-aware scheduling"}],"source_content_type":"text/x-rst","patch_set":1,"id":"6611407c_e3f8db07","line":1093,"in_reply_to":"35089458_a33e31ea","updated":"2025-02-17 18:19:59.000000000","message":"i would actully like to see an exampel in the format it is specified in the config too\n\nso yes there are two levels or weighering\n\nfirst if defined image_props_weight_setting will specify the image properties considered and the relitvie weights applied to each when computing the un nomalised value within the weigher.\n\nthe image_props_weight_multiplier is used to adjust the normalised values influance relitive to all the other weighers.\n\nso image_props_weight_multiplier defines how imporant the ImagePropertiesWeigher is vs other weighers and image_props_weight_setting defiens how imporant each image property is to \nthe ImagePropertiesWeigher.\n\nthis is somewhat duplicated form the config option help text which also documetns this but i think providing at least one example fo using the wegher without image_props_weight_multiplier and another with image_props_weight_multiplier woudl help operators.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"41f2db397f52c76ee85ab1a403398fd47139d189","unresolved":false,"context_lines":[{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro``` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice."},{"line_number":1094,"context_line":""},{"line_number":1095,"context_line":""},{"line_number":1096,"context_line":"Utilization-aware scheduling"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9462e3ff_4cf82fa8","line":1093,"in_reply_to":"6611407c_e3f8db07","updated":"2025-02-20 12:11:58.000000000","message":"Acknowledged","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3f30320bc3cb101d7e3fc7228bf2230c713a9d69","unresolved":true,"context_lines":[{"line_number":1089,"context_line":"You can also use"},{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro`` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice. Say you configure"},{"line_number":1094,"context_line":"``os_distro\u003d10,os_secure_boot\u003d1,os_require_quiesce\u003d0``, then when requesting"},{"line_number":1095,"context_line":"an instance with an image using those properties, then, for each of the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"f0955d9f_498005c9","line":1092,"range":{"start_line":1092,"start_character":33,"end_line":1092,"end_character":58},"updated":"2025-02-17 18:50:26.000000000","message":"0 is a bad example to use because if the property is not in the list its ignored \nso i woudl update his to be -1 or some other value.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":1089,"context_line":"You can also use"},{"line_number":1090,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_setting` config option"},{"line_number":1091,"context_line":"for defining the exact properties you would like to weigh. For example, if you"},{"line_number":1092,"context_line":"configure ``os_distro`` to 2 and ``hw_machine_type`` to 0, then the latter"},{"line_number":1093,"context_line":"property won\u0027t be weighed while the former will count twice. Say you configure"},{"line_number":1094,"context_line":"``os_distro\u003d10,os_secure_boot\u003d1,os_require_quiesce\u003d0``, then when requesting"},{"line_number":1095,"context_line":"an instance with an image using those properties, then, for each of the"}],"source_content_type":"text/x-rst","patch_set":2,"id":"5b705068_46d31ccc","line":1092,"range":{"start_line":1092,"start_character":33,"end_line":1092,"end_character":58},"in_reply_to":"f0955d9f_498005c9","updated":"2025-02-20 02:59:50.000000000","message":"still true but its not woth the rewite given dan is happy with it so ill just relosve.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":true,"context_lines":[{"line_number":1102,"context_line":"then any property from the image used for booting wouldn\u0027t be counted if not"},{"line_number":1103,"context_line":"provided in the option value."},{"line_number":1104,"context_line":"The resulted host weight would then be multiplied by the value of"},{"line_number":1105,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_multiplier`."},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"Utilization-aware scheduling"},{"line_number":1108,"context_line":"----------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"99ef1a88_ee7da8f8","line":1105,"updated":"2025-02-17 18:26:23.000000000","message":"This is very good now thanks.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":1102,"context_line":"then any property from the image used for booting wouldn\u0027t be counted if not"},{"line_number":1103,"context_line":"provided in the option value."},{"line_number":1104,"context_line":"The resulted host weight would then be multiplied by the value of"},{"line_number":1105,"context_line":":oslo.config:option:`filter_scheduler.image_props_weight_multiplier`."},{"line_number":1106,"context_line":""},{"line_number":1107,"context_line":"Utilization-aware scheduling"},{"line_number":1108,"context_line":"----------------------------"}],"source_content_type":"text/x-rst","patch_set":2,"id":"0c25eefe_8bbe8ce1","line":1105,"in_reply_to":"99ef1a88_ee7da8f8","updated":"2025-02-20 02:59:50.000000000","message":"Acknowledged","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"}],"nova/conf/scheduler.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":true,"context_lines":[{"line_number":596,"context_line":"Mapping of image properties to weight modifier."},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"This setting specifies the properties to be weighed and the relative ratios for"},{"line_number":599,"context_line":"each metric. This should be a single string value, consisting of a series of"},{"line_number":600,"context_line":"one or more \u0027name\u003dratio\u0027 pairs, separated by commas, where ``name`` is the name"},{"line_number":601,"context_line":"of the property to be weighed, and ``ratio`` is the relative weight for that"},{"line_number":602,"context_line":"metric."}],"source_content_type":"text/x-python","patch_set":1,"id":"56d031c2_d963b896","line":599,"range":{"start_line":599,"start_character":18,"end_line":599,"end_character":49},"updated":"2025-02-14 15:17:22.000000000","message":"This doesn\u0027t seem right to me, and you say \"a list\" below, which matches this being a `ListOpt`","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"87386f9ab0cd5d8c21b5ab0e18f3c4da4676e755","unresolved":false,"context_lines":[{"line_number":596,"context_line":"Mapping of image properties to weight modifier."},{"line_number":597,"context_line":""},{"line_number":598,"context_line":"This setting specifies the properties to be weighed and the relative ratios for"},{"line_number":599,"context_line":"each metric. This should be a single string value, consisting of a series of"},{"line_number":600,"context_line":"one or more \u0027name\u003dratio\u0027 pairs, separated by commas, where ``name`` is the name"},{"line_number":601,"context_line":"of the property to be weighed, and ``ratio`` is the relative weight for that"},{"line_number":602,"context_line":"metric."}],"source_content_type":"text/x-python","patch_set":1,"id":"c364338e_27075634","line":599,"range":{"start_line":599,"start_character":18,"end_line":599,"end_character":49},"in_reply_to":"56d031c2_d963b896","updated":"2025-02-17 18:08:35.000000000","message":"Was coming from a copy/paste from the metrics weigher option.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":true,"context_lines":[{"line_number":611,"context_line":""},{"line_number":612,"context_line":"The final weight will be:"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"    ``(name1.value * 1.0) + (name2.value * -1.3)``"},{"line_number":615,"context_line":""},{"line_number":616,"context_line":"Possible values:"},{"line_number":617,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"2275f966_d46e7b96","line":614,"updated":"2025-02-14 15:17:22.000000000","message":"This is very confusing to me as someone who hasn\u0027t read the code. What is `name1.value`? Also, do we really need floats here? Seems like we could calculate the fractions for people based on relative weights and avoid this even looking like it\u0027s in the same \"units\" as the main weigher.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"87386f9ab0cd5d8c21b5ab0e18f3c4da4676e755","unresolved":false,"context_lines":[{"line_number":611,"context_line":""},{"line_number":612,"context_line":"The final weight will be:"},{"line_number":613,"context_line":""},{"line_number":614,"context_line":"    ``(name1.value * 1.0) + (name2.value * -1.3)``"},{"line_number":615,"context_line":""},{"line_number":616,"context_line":"Possible values:"},{"line_number":617,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"1b45bdaa_8b6aa444","line":614,"in_reply_to":"2275f966_d46e7b96","updated":"2025-02-17 18:08:35.000000000","message":"Done","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":true,"context_lines":[{"line_number":619,"context_line":"  a string representing the name of a metric and the value is a numeric weight"},{"line_number":620,"context_line":"  for that metric. If any value is set to 0, the value is ignored and the"},{"line_number":621,"context_line":"  weight will be set to the value of the"},{"line_number":622,"context_line":"  ``[filter_scheduler] image_props_weight_multiplier`` option."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"Related options:"},{"line_number":625,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"54c5042f_5460416f","line":622,"updated":"2025-02-14 15:17:22.000000000","message":"Didn\u0027t we discuss that if this is not set at all, then they all count equally? That\u0027s what your code is doing, but that\u0027s not mentioned here.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"87386f9ab0cd5d8c21b5ab0e18f3c4da4676e755","unresolved":false,"context_lines":[{"line_number":619,"context_line":"  a string representing the name of a metric and the value is a numeric weight"},{"line_number":620,"context_line":"  for that metric. If any value is set to 0, the value is ignored and the"},{"line_number":621,"context_line":"  weight will be set to the value of the"},{"line_number":622,"context_line":"  ``[filter_scheduler] image_props_weight_multiplier`` option."},{"line_number":623,"context_line":""},{"line_number":624,"context_line":"Related options:"},{"line_number":625,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"907acc4d_304545f6","line":622,"in_reply_to":"54c5042f_5460416f","updated":"2025-02-17 18:08:35.000000000","message":"Done","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"}],"nova/scheduler/weights/image_props.py":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"82bf01b12c46a0a6e6485cb648f9874703b6b0b0","unresolved":true,"context_lines":[{"line_number":77,"context_line":"            if self.setting:"},{"line_number":78,"context_line":"                #  Calculate the weigh for each property by what was set"},{"line_number":79,"context_line":"                #  If it wasn\u0027t defined, then don\u0027t weigh this property."},{"line_number":80,"context_line":"                weigh +\u003d self.setting.get("},{"line_number":81,"context_line":"                            prop, 0.0) * existing_props.count((prop, value))"},{"line_number":82,"context_line":"            else:"},{"line_number":83,"context_line":"                #  By default, all properties are weighed evenly."}],"source_content_type":"text/x-python","patch_set":1,"id":"65610a17_f229be27","line":80,"range":{"start_line":80,"start_character":16,"end_line":80,"end_character":24},"updated":"2025-02-14 15:17:22.000000000","message":"This makes the weights in the config not actually relative to each other, but relative to all the other weighers, right?\n\nI guess I\u0027m not sure what the right thing is here, but I guess I would have assumed we would have the user provide integral relative weights and we would decide how we use those to calculate the actual weight out of the weigher. Otherwise the per-property values are really directly related to the implementation here.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3f30320bc3cb101d7e3fc7228bf2230c713a9d69","unresolved":true,"context_lines":[{"line_number":77,"context_line":"            if self.setting:"},{"line_number":78,"context_line":"                #  Calculate the weigh for each property by what was set"},{"line_number":79,"context_line":"                #  If it wasn\u0027t defined, then don\u0027t weigh this property."},{"line_number":80,"context_line":"                weigh +\u003d self.setting.get("},{"line_number":81,"context_line":"                            prop, 0.0) * existing_props.count((prop, value))"},{"line_number":82,"context_line":"            else:"},{"line_number":83,"context_line":"                #  By default, all properties are weighed evenly."}],"source_content_type":"text/x-python","patch_set":1,"id":"d04283c8_9f92e60b","line":80,"range":{"start_line":80,"start_character":16,"end_line":80,"end_character":24},"in_reply_to":"289f28b2_9cdee4e4","updated":"2025-02-17 18:50:26.000000000","message":"we normalise genericaly before the values for all the weghers are compared\n\n\nso after all the hosts are wighed by a given wegher we take the min/max returned value an normalise relitive to that range to produce a valuein the range of -1 to 1\n\nand then that is multipled by image_props_weight_multiplier in this case.\n\nso we do not need to do any normalisation in the parsing as its done by the shared code \n\nhttps://github.com/openstack/nova/blob/master/nova/weights.py#L134-L170\n\nspecificly https://github.com/openstack/nova/blob/master/nova/weights.py#L144-L146\nnormalises the values across all hosts for a given weigher\nhttps://github.com/openstack/nova/blob/master/nova/weights.py#L30-L56\n\nthen later we loop over the normalised vlaues\nand apply the multiplier\n\nhttps://github.com/openstack/nova/blob/master/nova/weights.py#L157-L164\n\nso we do not need to do any normalisation in _parse_setting\nor ImagePropertiesWeigher in general","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":true,"context_lines":[{"line_number":77,"context_line":"            if self.setting:"},{"line_number":78,"context_line":"                #  Calculate the weigh for each property by what was set"},{"line_number":79,"context_line":"                #  If it wasn\u0027t defined, then don\u0027t weigh this property."},{"line_number":80,"context_line":"                weigh +\u003d self.setting.get("},{"line_number":81,"context_line":"                            prop, 0.0) * existing_props.count((prop, value))"},{"line_number":82,"context_line":"            else:"},{"line_number":83,"context_line":"                #  By default, all properties are weighed evenly."}],"source_content_type":"text/x-python","patch_set":1,"id":"289f28b2_9cdee4e4","line":80,"range":{"start_line":80,"start_character":16,"end_line":80,"end_character":24},"in_reply_to":"345a4b36_c33702bf","updated":"2025-02-17 18:26:23.000000000","message":"Right, I was just expecting this to be normalized I guess. So if we had:\n- os_distro\u003d10\n- os_foo\u003d1\nWe would end up with basically os_foo\u003d0.1 and os_distro\u003d1.0 or something similar. Maybe that\u0027s more complicated or obscure than just having the weights specified here directly, I dunno.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"87386f9ab0cd5d8c21b5ab0e18f3c4da4676e755","unresolved":true,"context_lines":[{"line_number":77,"context_line":"            if self.setting:"},{"line_number":78,"context_line":"                #  Calculate the weigh for each property by what was set"},{"line_number":79,"context_line":"                #  If it wasn\u0027t defined, then don\u0027t weigh this property."},{"line_number":80,"context_line":"                weigh +\u003d self.setting.get("},{"line_number":81,"context_line":"                            prop, 0.0) * existing_props.count((prop, value))"},{"line_number":82,"context_line":"            else:"},{"line_number":83,"context_line":"                #  By default, all properties are weighed evenly."}],"source_content_type":"text/x-python","patch_set":1,"id":"345a4b36_c33702bf","line":80,"range":{"start_line":80,"start_character":16,"end_line":80,"end_character":24},"in_reply_to":"65610a17_f229be27","updated":"2025-02-17 18:08:35.000000000","message":"The conf option gives us a way to weigh some properties between each other as we wouldn\u0027t want to compare the matches evenly.\nLeaving that comment open for further discussion.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"},{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"2f334ed88ec35cf26f2a974b9eb4165a3f76f85d","unresolved":false,"context_lines":[{"line_number":77,"context_line":"            if self.setting:"},{"line_number":78,"context_line":"                #  Calculate the weigh for each property by what was set"},{"line_number":79,"context_line":"                #  If it wasn\u0027t defined, then don\u0027t weigh this property."},{"line_number":80,"context_line":"                weigh +\u003d self.setting.get("},{"line_number":81,"context_line":"                            prop, 0.0) * existing_props.count((prop, value))"},{"line_number":82,"context_line":"            else:"},{"line_number":83,"context_line":"                #  By default, all properties are weighed evenly."}],"source_content_type":"text/x-python","patch_set":1,"id":"efb42d45_fa8d5329","line":80,"range":{"start_line":80,"start_character":16,"end_line":80,"end_character":24},"in_reply_to":"d04283c8_9f92e60b","updated":"2025-02-17 19:04:15.000000000","message":"Okay I didn\u0027t realize we did this normalization of the per-weigher values, so fair enough. I think that means my other comment about just making these inner-weigher values integers instead of floats would be cleaner, but it doesn\u0027t matter that much.","commit_id":"9b523f407a605ddde70d41646bd8d75f8145f136"}],"releasenotes/notes/bp-image-metadata-props-weigher-b09125e1837428f5.yaml":[{"author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"change_message_id":"ec10fe5c122d44231235edad9d6c452676f20f52","unresolved":true,"context_lines":[{"line_number":14,"context_line":"    Another configuration option"},{"line_number":15,"context_line":"    `[filter_scheduler]/image_props_weight_setting` allows you to define"},{"line_number":16,"context_line":"    fine-grained weights for each of the properties you actually would like to"},{"line_number":17,"context_line":"    weigh (eg. `os_distro`). Please refer to the documentation for knowing how"},{"line_number":18,"context_line":"    to use this configuration option."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"65249298_bff915c9","line":17,"range":{"start_line":17,"start_character":63,"end_line":17,"end_character":75},"updated":"2025-02-17 18:26:23.000000000","message":"\"for knowing\" is not really proper here. \"for more information on\" or \"for more details about\" would sound more native.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"3f30320bc3cb101d7e3fc7228bf2230c713a9d69","unresolved":true,"context_lines":[{"line_number":14,"context_line":"    Another configuration option"},{"line_number":15,"context_line":"    `[filter_scheduler]/image_props_weight_setting` allows you to define"},{"line_number":16,"context_line":"    fine-grained weights for each of the properties you actually would like to"},{"line_number":17,"context_line":"    weigh (eg. `os_distro`). Please refer to the documentation for knowing how"},{"line_number":18,"context_line":"    to use this configuration option."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"e0fe3c9c_d571eaba","line":17,"range":{"start_line":17,"start_character":63,"end_line":17,"end_character":75},"in_reply_to":"65249298_bff915c9","updated":"2025-02-17 18:50:26.000000000","message":"or just \"to know\"\n\nbut yes dan is correct that it reads oddly to a native speaker.","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"},{"author":{"_account_id":11604,"name":"sean mooney","email":"smooney@redhat.com","username":"sean-k-mooney"},"change_message_id":"d8a79c4655def4105de5faf15aafec7d438c583a","unresolved":false,"context_lines":[{"line_number":14,"context_line":"    Another configuration option"},{"line_number":15,"context_line":"    `[filter_scheduler]/image_props_weight_setting` allows you to define"},{"line_number":16,"context_line":"    fine-grained weights for each of the properties you actually would like to"},{"line_number":17,"context_line":"    weigh (eg. `os_distro`). Please refer to the documentation for knowing how"},{"line_number":18,"context_line":"    to use this configuration option."}],"source_content_type":"text/x-yaml","patch_set":2,"id":"32c35a1f_660ac3d5","line":17,"range":{"start_line":17,"start_character":63,"end_line":17,"end_character":75},"in_reply_to":"e0fe3c9c_d571eaba","updated":"2025-02-20 02:59:50.000000000","message":"ill just fix this too so we dont loase multiple hours waiting on ci tomorrow","commit_id":"21104881906a3bbe0e2d35b6f2b902df3058ec7d"}]}
