From f6f5ce03c5b8a03180db24a02dda5b30f40b4cee Mon Sep 17 00:00:00 2001 From: Anton Frolov Date: Mon, 25 Sep 2017 12:31:24 -0700 Subject: Optimize getting endpoint list Currently ListEndpoint.take_action method unconditionally iterates over all endpoints and issue GET /v3/services/ request for each endpoint. In case of HTTPS keystone endpoint this can take significant amout of time, and it only getting worse in case of multiple regions. This commit change this logic to making just two GET requests: first it gets endpoint list, then it gets service list, searching service in the list instead of issuing GET /v3/services/ request. Change-Id: I22b61c0b45b0205a2f5a4608c2473cb7814fe3cf Closes-Bug: 1719413 --- releasenotes/notes/bug-1719413-0401d05c91cc9094.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 releasenotes/notes/bug-1719413-0401d05c91cc9094.yaml (limited to 'releasenotes/notes') diff --git a/releasenotes/notes/bug-1719413-0401d05c91cc9094.yaml b/releasenotes/notes/bug-1719413-0401d05c91cc9094.yaml new file mode 100644 index 00000000..784d19ec --- /dev/null +++ b/releasenotes/notes/bug-1719413-0401d05c91cc9094.yaml @@ -0,0 +1,8 @@ +--- +fixes: + - | + Fix an issue with ``endpoint list`` working slow because it is issuing one GET + request to /v3/services/ Keystone API for each endpoint. In case of HTTPS + keystone endpoint and multiple regions it can take significant amount of time. + [Bug `1719413 `_] + -- cgit v1.2.1