)]}'
{"nova/scheduler/manager.py":[{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"94d5f6f0ce0501cd6d3f24428ea4cfd1ecf9e0c8","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        \u0027limits\u0027 as keys."},{"line_number":112,"context_line":"        \"\"\""},{"line_number":113,"context_line":"        LOG.debug(\"Starting to schedule for instances: %s\", instance_uuids)"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"        # TODO(sbauza): Change the method signature to only accept a spec_obj"},{"line_number":116,"context_line":"        # argument once API v5 is provided."},{"line_number":117,"context_line":"        if spec_obj is self._sentinel:"}],"source_content_type":"text/x-python","patch_set":3,"id":"bf57530f_2804207b","side":"PARENT","line":114,"updated":"2017-09-20 08:09:21.000000000","message":"unrelated change","commit_id":"6a473b0134309d17d6e64de0e22b2aaa8035807a"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"3b220aa778b1da5a3dc01c2b3a3150056bcd618a","unresolved":false,"context_lines":[{"line_number":195,"context_line":"        \"\"\"Extract traits from a RequestSpec obj and call Placement api to"},{"line_number":196,"context_line":"        validate traits. The extra_specs entries will be in the format:"},{"line_number":197,"context_line":""},{"line_number":198,"context_line":"            traits\u003d$TRAIT_A,$TRAIT_B"},{"line_number":199,"context_line":"        \"\"\""},{"line_number":200,"context_line":"        if \"extra_specs\" in spec_obj.flavor:"},{"line_number":201,"context_line":"            traits \u003d spec_obj.flavor.extra_specs.get(\u0027traits\u0027)"}],"source_content_type":"text/x-python","patch_set":3,"id":"bf57530f_48451470","line":198,"updated":"2017-09-20 08:11:40.000000000","message":"I guess we need to take care some invalid input case, like \u0027traits\u003d,,\", which leads to some empty string.","commit_id":"861bec12b0449ad5eba22e90be714809d2097fac"},{"author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"change_message_id":"94d5f6f0ce0501cd6d3f24428ea4cfd1ecf9e0c8","unresolved":false,"context_lines":[{"line_number":200,"context_line":"        if \"extra_specs\" in spec_obj.flavor:"},{"line_number":201,"context_line":"            traits \u003d spec_obj.flavor.extra_specs.get(\u0027traits\u0027)"},{"line_number":202,"context_line":"            if traits:"},{"line_number":203,"context_line":"                valid_traits \u003d self.placement_client.validate_traits(traits)"},{"line_number":204,"context_line":"                if valid_traits:"},{"line_number":205,"context_line":"                    return valid_traits"}],"source_content_type":"text/x-python","patch_set":3,"id":"bf57530f_e823a804","line":203,"updated":"2017-09-20 08:09:21.000000000","message":"If there are some invalid traits in the extra spec, this sounds like we just ignore them? I think we should fail on the scheduling.\n\nAnd the allocation_candidates will validate the valid traits also, I think we needn\u0027t to validate it separately.","commit_id":"861bec12b0449ad5eba22e90be714809d2097fac"},{"author":{"_account_id":15888,"name":"Zhenyu Zheng","email":"zheng.zhenyu@outlook.com","username":"Kevin_Zheng"},"change_message_id":"f75e38714e7bda915d01f4b916870dbe6122c65c","unresolved":false,"context_lines":[{"line_number":111,"context_line":"        \u0027limits\u0027 as keys."},{"line_number":112,"context_line":"        \"\"\""},{"line_number":113,"context_line":"        LOG.debug(\"Starting to schedule for instances: %s\", instance_uuids)"},{"line_number":114,"context_line":""},{"line_number":115,"context_line":"        # TODO(sbauza): Change the method signature to only accept a spec_obj"},{"line_number":116,"context_line":"        # argument once API v5 is provided."},{"line_number":117,"context_line":"        if spec_obj is self._sentinel:"}],"source_content_type":"text/x-python","patch_set":5,"id":"3f4b6375_e8108059","side":"PARENT","line":114,"updated":"2017-10-26 03:53:54.000000000","message":"Unrelated change","commit_id":"b739536c852ad4577fc78cbc271044ce6859f6df"}]}
