Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Sort the paths in routes to ensure matcher picks nearest regex to req…
…uest uri (#687) * Test only Signed-off-by: PKhivasra <[email protected]> * Sort the paths in routes to ensure matcher picks nearest regex to request uri When the default backend routes are registered, currently it is as per unordered map. This means that the routes can have "" or "\api\v1" before "api\v1\query_range". When the router matches the regex expression (Refs: https://gecgithub01.walmart.com/Telemetry/trickster-v2/blob/main/pkg/router/route.go#L40 https://gecgithub01.walmart.com/Telemetry/trickster-v2/blob/main/pkg/router/regexp.go#L323) with the routes map, if partial routes appears first that will be considered as a match, which causes request to be "Proxy-Only". Thus, with sorting we will ensure that routes will be a sorted array in the descending order of path lengths, meaning: "\api\v1\query_range" would appear before "api\v1" and "" so that we have appropriate match. Issue:#594 Signed-off-by: PKhivasra <[email protected]> --------- Signed-off-by: PKhivasra <[email protected]>
- Loading branch information