6.12.1.1.4.6. Running profiling against Mitaka Keystone (Fernet tokens, cache turned on)¶
Contents
6.12.1.1.4.6.1. Parameters¶
Parameter name | Value |
---|---|
OpenStack release | Mitaka |
Cache | on |
Token type | Fernet |
Environment characteristics | Single node |
6.12.1.1.4.6.2. Endpoint list request stats¶
Control plane request overlook
Metric | Value |
Total (*) Keystone DB queries count | 36 |
Total (*) Keystone DB queries time spent, ms | 203 |
Infrastructure (SELECT 1) Keystone DB queries count | 15 |
Infrastructure (SELECT 1) Keystone DB queries time spent, ms | 82 |
Real Keystone DB queries count | 21 |
Real Keystone DB queries time spent, ms | 121 |
SELECT Keystone DB queries count | 21 |
SELECT Keystone DB queries time spent, ms | 121 |
Note
(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.
Keystone DB queries outliers
DB query | Time spent, ms |
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id |
3 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %(param_1)s |
8 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true |
12 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
7 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint |
9 |
Keystone DB queries with multi JOINs inside
DB query | Time spent, ms |
Keystone cached methods stats
Cache | Cached operations | args | kwargs | Times used |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d08e10>, u’default’ | 2 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d08e10>, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_role | <keystone.assignment.core.RoleManager object at 0x7ff335cbdf90>, u‘3481c11394a64189bafc60551e1ee25c’ | 3 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, u’b4a6b5f09b9c4b57a582b16537f4a976’, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_project_by_name | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’admin’, ‘default’ | 2 | |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’default’ | 4 | |
Memcache | get_user_by_name | <keystone.identity.core.Manager object at 0x7ff336019d90>, u’admin’, ‘default’ | 2 | |
Memcache | _get_revoke_tree | <keystone.revoke.core.Manager object at 0x7ff335cdf790>, | 9 | |
Memcache | _validate_token | <keystone.token.provider.Manager object at 0x7ff335c8be90>, ‘gAAAAABXBnVbEtemCkqIkBAri3f0P5C2s3z- ZzP5MCkHMCHVGuLdwaJsxuw9k731LHrIuKE9krW- 2bU7ToROLD9oPTZA38kOU4jy5kqJWzBj7O5VpoQDSi_3VerUdQytO31d47N6v-dYmLtatUKPAHJmMGvRikjhBN4laTh8gay- LEPId9yhdeA’ | 8 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, ‘b4a6b5f09b9c4b57a582b16537f4a976’, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_user | <keystone.identity.core.Manager object at 0x7ff336019d90>, ‘b4a6b5f09b9c4b57a582b16537f4a976’ | 1 |
6.12.1.1.4.6.3. Server create request stats¶
Control plane request overlook
Metric | Value |
Total (*) Keystone DB queries count | 22 |
Total (*) Keystone DB queries time spent, ms | 213 |
Infrastructure (SELECT 1) Keystone DB queries count | 8 |
Infrastructure (SELECT 1) Keystone DB queries time spent, ms | 77 |
Real Keystone DB queries count | 14 |
Real Keystone DB queries time spent, ms | 136 |
SELECT Keystone DB queries count | 14 |
SELECT Keystone DB queries time spent, ms | 136 |
Note
(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.
Keystone DB queries outliers
DB query | Time spent, ms |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra, endpoint_1.id AS endpoint_1_id, endpoint_1.legacy_endpoint_id AS endpoint_1_legacy_endpoint_id, endpoint_1.interface AS endpoint_1_interface, endpoint_1.region_id AS endpoint_1_region_id, endpoint_1.service_id AS endpoint_1_service_id, endpoint_1.url AS endpoint_1_url, endpoint_1.enabled AS endpoint_1_enabled, endpoint_1.extra AS endpoint_1_extra FROM service LEFT OUTER JOIN endpoint AS endpoint_1 ON service.id = endpoint_1.service_id WHERE service.enabled = true |
14 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %(param_1)s |
8 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true |
23 |
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id |
3 |
SELECT service_provider.id AS service_provider_id, service_provider.enabled AS service_provider_enabled, service_provider.description AS service_provider_description, service_provider.auth_url AS service_provider_auth_url, service_provider.sp_url AS service_provider_sp_url, service_provider.relay_state_prefix AS service_provider_relay_state_prefix FROM service_provider WHERE service_provider.enabled = true |
13 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint |
9 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
7 |
Keystone DB queries with multi JOINs inside
DB query | Time spent, ms |
Keystone cached methods stats
Cache | Cached operations | args | kwargs | Times used |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d08e10>, u’default’ | 4 | |
Memcache | _validate_token | <keystone.token.provider.Manager object at 0x7ff335c8be90>, ‘gAAAAABXBmrRWacx2eWnMbEUxvtXGHLKT3SQfT56J-61d7WyHqAAHH7KN5jv1EFuCusKWBtTZ2KmoXhRN6-u0NdLlgBHYvSwho- sOmmnD1IhHkHr0ZTml39hLZXhM0HmkAy3tSbq76aLvVYGDqE9BHjjVlU4W-P_gXwad6ZhdH9XkoOCkzmWJR4’ | 1 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d08e10>, ‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_role | <keystone.assignment.core.RoleManager object at 0x7ff335cbdf90>, u‘3481c11394a64189bafc60551e1ee25c’ | 4 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, u’b4a6b5f09b9c4b57a582b16537f4a976’, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_project_by_name | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’admin’, ‘default’ | 2 | |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’default’ | 4 | |
Memcache | get_user_by_name | <keystone.identity.core.Manager object at 0x7ff336019d90>, u’admin’, ‘default’ | 2 | |
Memcache | _get_revoke_tree | <keystone.revoke.core.Manager object at 0x7ff335cdf790>, | 3 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, ‘b4a6b5f09b9c4b57a582b16537f4a976’, ‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_user | <keystone.identity.core.Manager object at 0x7ff336019d90>, ‘b4a6b5f09b9c4b57a582b16537f4a976’ | 2 |
6.12.1.1.4.6.4. Service list request stats¶
Control plane request overlook
Metric | Value |
Total (*) Keystone DB queries count | 20 |
Total (*) Keystone DB queries time spent, ms | 126 |
Infrastructure (SELECT 1) Keystone DB queries count | 7 |
Infrastructure (SELECT 1) Keystone DB queries time spent, ms | 38 |
Real Keystone DB queries count | 13 |
Real Keystone DB queries time spent, ms | 88 |
SELECT Keystone DB queries count | 13 |
SELECT Keystone DB queries time spent, ms | 88 |
Note
(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.
Keystone DB queries outliers
DB query | Time spent, ms |
SELECT password.id AS password_id, password.local_user_id AS password_local_user_id, password.password AS password_password FROM password WHERE %(param_1)s = password.local_user_id |
4 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra, endpoint_1.id AS endpoint_1_id, endpoint_1.legacy_endpoint_id AS endpoint_1_legacy_endpoint_id, endpoint_1.interface AS endpoint_1_interface, endpoint_1.region_id AS endpoint_1_region_id, endpoint_1.service_id AS endpoint_1_service_id, endpoint_1.url AS endpoint_1_url, endpoint_1.enabled AS endpoint_1_enabled, endpoint_1.extra AS endpoint_1_extra FROM service LEFT OUTER JOIN endpoint AS endpoint_1 ON service.id = endpoint_1.service_id WHERE service.enabled = true |
14 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %(param_1)s |
8 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true |
23 |
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id |
4 |
SELECT service_provider.id AS service_provider_id, service_provider.enabled AS service_provider_enabled, service_provider.description AS service_provider_description, service_provider.auth_url AS service_provider_auth_url, service_provider.sp_url AS service_provider_sp_url, service_provider.relay_state_prefix AS service_provider_relay_state_prefix FROM service_provider WHERE service_provider.enabled = true |
13 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint |
9 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
4 |
Keystone DB queries with multi JOINs inside
DB query | Time spent, ms |
Keystone cached methods stats
Cache | Cached operations | args | kwargs | Times used |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d08e10>, u’default’ | 2 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d08e10>, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_role | <keystone.assignment.core.RoleManager object at 0x7ff335cbdf90>, u‘3481c11394a64189bafc60551e1ee25c’ | 3 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, u’b4a6b5f09b9c4b57a582b16537f4a976’, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_project_by_name | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’admin’, ‘default’ | 2 | |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’default’ | 4 | |
Memcache | get_user_by_name | <keystone.identity.core.Manager object at 0x7ff336019d90>, u’admin’, ‘default’ | 2 | |
Memcache | _get_revoke_tree | <keystone.revoke.core.Manager object at 0x7ff335cdf790>, | 1 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, ‘b4a6b5f09b9c4b57a582b16537f4a976’, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_user | <keystone.identity.core.Manager object at 0x7ff336019d90>, ‘b4a6b5f09b9c4b57a582b16537f4a976’ | 1 |
6.12.1.1.4.6.5. Token issue request stats¶
Control plane request overlook
Metric | Value |
Total (*) Keystone DB queries count | 7 |
Total (*) Keystone DB queries time spent, ms | 49 |
Infrastructure (SELECT 1) Keystone DB queries count | 2 |
Infrastructure (SELECT 1) Keystone DB queries time spent, ms | 14 |
Real Keystone DB queries count | 5 |
Real Keystone DB queries time spent, ms | 35 |
SELECT Keystone DB queries count | 5 |
SELECT Keystone DB queries time spent, ms | 35 |
Note
(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.
Keystone DB queries outliers
DB query | Time spent, ms |
SELECT password.id AS password_id, password.local_user_id AS password_local_user_id, password.password AS password_password FROM password WHERE %(param_1)s = password.local_user_id |
4 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra, endpoint_1.id AS endpoint_1_id, endpoint_1.legacy_endpoint_id AS endpoint_1_legacy_endpoint_id, endpoint_1.interface AS endpoint_1_interface, endpoint_1.region_id AS endpoint_1_region_id, endpoint_1.service_id AS endpoint_1_service_id, endpoint_1.url AS endpoint_1_url, endpoint_1.enabled AS endpoint_1_enabled, endpoint_1.extra AS endpoint_1_extra FROM service LEFT OUTER JOIN endpoint AS endpoint_1 ON service.id = endpoint_1.service_id WHERE service.enabled = true |
14 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %(param_1)s |
8 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true |
23 |
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id |
4 |
SELECT service_provider.id AS service_provider_id, service_provider.enabled AS service_provider_enabled, service_provider.description AS service_provider_description, service_provider.auth_url AS service_provider_auth_url, service_provider.sp_url AS service_provider_sp_url, service_provider.relay_state_prefix AS service_provider_relay_state_prefix FROM service_provider WHERE service_provider.enabled = true |
13 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint |
9 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
4 |
Keystone DB queries with multi JOINs inside
DB query | Time spent, ms |
Keystone cached methods stats
Cache | Cached operations | args | kwargs | Times used |
Memcache | get_role | <keystone.assignment.core.RoleManager object at 0x7ff335cbdf90>, u‘3481c11394a64189bafc60551e1ee25c’ | 1 | |
Memcache | get_project_by_name | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’admin’, ‘default’ | 1 | |
Memcache | get_user_by_name | <keystone.identity.core.Manager object at 0x7ff336019d90>, u’admin’, ‘default’ | 1 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, u’b4a6b5f09b9c4b57a582b16537f4a976’, u‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’default’ | 2 |
6.12.1.1.4.6.6. User list request stats¶
Control plane request overlook
Metric | Value |
Total (*) Keystone DB queries count | 30 |
Total (*) Keystone DB queries time spent, ms | 306 |
Infrastructure (SELECT 1) Keystone DB queries count | 7 |
Infrastructure (SELECT 1) Keystone DB queries time spent, ms | 70 |
Real Keystone DB queries count | 23 |
Real Keystone DB queries time spent, ms | 236 |
SELECT Keystone DB queries count | 23 |
SELECT Keystone DB queries time spent, ms | 236 |
Note
(*) OSprofiler uses specific SQLalchemy cursor events to track what’s going on with the DB layer. This number includes non-real DB requests “SELECT 1”, processed by SQLalchemy itself to make sure that connection to the database is still in place.
Keystone DB queries outliers
DB query | Time spent, ms |
SELECT password.id AS password_id, password.local_user_id AS password_local_user_id, password.password AS password_password FROM password WHERE %(param_1)s = password.local_user_id |
14 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user LEFT OUTER JOIN local_user ON user.id = local_user.user_id WHERE local_user.domain_id = %(domain_id_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
23 |
SELECT user.id AS user_id, user.enabled AS user_enabled, user.extra AS user_extra, user.default_project_id AS user_default_project_id FROM user WHERE user.id = %(param_1)s |
21 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra, endpoint_1.id AS endpoint_1_id, endpoint_1.legacy_endpoint_id AS endpoint_1_legacy_endpoint_id, endpoint_1.interface AS endpoint_1_interface, endpoint_1.region_id AS endpoint_1_region_id, endpoint_1.service_id AS endpoint_1_service_id, endpoint_1.url AS endpoint_1_url, endpoint_1.enabled AS endpoint_1_enabled, endpoint_1.extra AS endpoint_1_extra FROM service LEFT OUTER JOIN endpoint AS endpoint_1 ON service.id = endpoint_1.service_id WHERE service.enabled = true |
14 |
SELECT service.id AS service_id, service.type AS service_type, service.enabled AS service_enabled, service.extra AS service_extra FROM service WHERE service.id = %(param_1)s |
8 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra, service_1.id AS service_1_id, service_1.type AS service_1_type, service_1.enabled AS service_1_enabled, service_1.extra AS service_1_extra FROM endpoint LEFT OUTER JOIN service AS service_1 ON service_1.id = endpoint.service_id WHERE endpoint.enabled = true |
23 |
SELECT local_user.id AS local_user_id, local_user.user_id AS local_user_user_id, local_user.domain_id AS local_user_domain_id, local_user.name AS local_user_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN local_user ON anon_1.user_id = local_user.user_id ORDER BY anon_1.user_id |
4 |
SELECT service_provider.id AS service_provider_id, service_provider.enabled AS service_provider_enabled, service_provider.description AS service_provider_description, service_provider.auth_url AS service_provider_auth_url, service_provider.sp_url AS service_provider_sp_url, service_provider.relay_state_prefix AS service_provider_relay_state_prefix FROM service_provider WHERE service_provider.enabled = true |
13 |
SELECT endpoint.id AS endpoint_id, endpoint.legacy_endpoint_id AS endpoint_legacy_endpoint_id, endpoint.interface AS endpoint_interface, endpoint.region_id AS endpoint_region_id, endpoint.service_id AS endpoint_service_id, endpoint.url AS endpoint_url, endpoint.enabled AS endpoint_enabled, endpoint.extra AS endpoint_extra FROM endpoint |
9 |
SELECT federated_user.id AS federated_user_id, federated_user.user_id AS federated_user_user_id, federated_user.idp_id AS federated_user_idp_id, federated_user.protocol_id AS federated_user_protocol_id, federated_user.unique_id AS federated_user_unique_id, federated_user.display_name AS federated_user_display_name, anon_1.user_id AS anon_1_user_id FROM (SELECT user.id AS user_id FROM user WHERE user.id = %(param_1)s) AS anon_1 INNER JOIN federated_user ON anon_1.user_id = federated_user.user_id ORDER BY anon_1.user_id |
4 |
Keystone DB queries with multi JOINs inside
DB query | Time spent, ms |
Keystone cached methods stats
Cache | Cached operations | args | kwargs | Times used |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d08e10>, u’default’ | 2 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d08e10>, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_role | <keystone.assignment.core.RoleManager object at 0x7ff335cbdf90>, u‘3481c11394a64189bafc60551e1ee25c’ | 3 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, u’b4a6b5f09b9c4b57a582b16537f4a976’, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_project_by_name | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’admin’, ‘default’ | 2 | |
Memcache | get_domain | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u’default’ | 4 | |
Memcache | get_user_by_name | <keystone.identity.core.Manager object at 0x7ff336019d90>, u’admin’, ‘default’ | 2 | |
Memcache | _get_revoke_tree | <keystone.revoke.core.Manager object at 0x7ff335cdf790>, | 1 | |
Memcache | get_roles_for_user_and_project | <keystone.assignment.core.Manager object at 0x7ff335e09c10>, ‘b4a6b5f09b9c4b57a582b16537f4a976’, ‘1f093e18f4ab4318bdb2876a03d81811’ | 1 | |
Memcache | get_project | <keystone.resource.core.Manager object at 0x7ff335d07e10>, u‘1f093e18f4ab4318bdb2876a03d81811’ | 2 | |
Memcache | get_user | <keystone.identity.core.Manager object at 0x7ff336019d90>, ‘b4a6b5f09b9c4b57a582b16537f4a976’ | 1 |