Reviewed: https://review.opendev.org/c/openstack/keystone/+/800606 Committed: https://opendev.org/openstack/keystone/commit/23477a13ab29e952a77184c5cf989ecfa175a3ab Submitter: "Zuul (22348)" Branch: master
commit 23477a13ab29e952a77184c5cf989ecfa175a3ab Author: Jose Castro Leon <[email protected]> Date: Tue Jul 13 11:00:58 2021 +0200 Improve performance on trust deletion During a trust deletion, the backend will fetch all trust by the same trustor and look for redelegations to be deleted as well. If you have a considerable amount of trusts that call becomes expensive. Just by pushing this filter into the backend, the response time for the api call just depends on the number of redelegations for that trust. Change-Id: Id3a820fca0bb20561ba031797d2b0fb96ba1f78d Closes-Bug: #1935840 ** Changed in: keystone Status: In Progress => Fix Released -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Identity (keystone). https://bugs.launchpad.net/bugs/1935840 Title: Performance issue when deleting trusts Status in OpenStack Identity (keystone): Fix Released Bug description: During a trust deletion, the backend will fetch all trusts belonging to the same trustor and find if there is any delegated trust based on the one we are deleting. So it can delete it as well. If the backend list_trusts_for_trustor returns a considerable amount of trusts, the whole process will load a huge amount of memory and loop over it. On 380k trusts with no redelegation, the api call takes 35 seconds to process and 2.5 GB of memory while looping. Just by passing the filter to the backend and filter out the trusts that have delegation, the api call takes around a second with no further increase in memory utilisation. To manage notifications about this bug go to: https://bugs.launchpad.net/keystone/+bug/1935840/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : [email protected] Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp

