)]}'
{"nova/api/openstack/placement/objects/resource_provider.py":[{"author":{"_account_id":7,"name":"Jay Pipes","email":"jaypipes@gmail.com","username":"jaypipes"},"change_message_id":"2dd6d056ebc56505bf7039233086bf4428388031","unresolved":false,"context_lines":[{"line_number":3536,"context_line":"        #  (ARR(rc1, ss1), ARR(rc2, ss2), ARR(rc3, ss1)),"},{"line_number":3537,"context_line":"        #  (ARR(rc1, ss2), ARR(rc2, ss1), ARR(rc3, ss1)),"},{"line_number":3538,"context_line":"        #  (ARR(rc1, ss2), ARR(rc2, ss2), ARR(rc3, ss1))]"},{"line_number":3539,"context_line":"        for res_requests in itertools.product(*request_groups):"},{"line_number":3540,"context_line":"            all_prov_ids \u003d _check_traits_for_alloc_request(res_requests,"},{"line_number":3541,"context_line":"                summaries, prov_traits, required_traits, forbidden_traits)"},{"line_number":3542,"context_line":"            if (not all_prov_ids) or (all_prov_ids in alloc_prov_ids):"}],"source_content_type":"text/x-python","patch_set":1,"id":"5f7c97a3_dad1e557","line":3539,"range":{"start_line":3539,"start_character":28,"end_line":3539,"end_character":62},"updated":"2018-08-01 12:49:09.000000000","message":"is itertools.product() guaranteed to preserve ordering? I checked, yes it does. According to the docs:\n\n\"[product()] creates a lexicographic ordering so that if the input’s iterables are sorted, the product tuples are emitted in sorted order.\"\n\nSo, ++","commit_id":"0b7946f5a3dd62003bdfead068dd58bd58ed6d18"}]}
