UPDATE and DELETE operations for keystone entities sometimes don't work

Bug #1494435 reported by Yaroslav Lobankov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Mirantis OpenStack
Fix Released
Critical
Denis Egorenko
7.0.x
Fix Released
Critical
Denis Egorenko
8.0.x
Fix Released
Critical
Denis Egorenko

Bug Description

Keystone tempest tests for updating various properties of keystone entities (projects, domains, tenants, etc.) sometimes fail on HA OpenStack environments. It is very strange because these tests always worked perfectly. One of the failed tests you can find here http://paste.openstack.org/show/455369/ . Other tests fail with similar error.
Such strange behavior of keystone tests was noticed on MOS-Infra-CI tempest jobs.

VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "7.0"
  openstack_version: "2015.1.0-7.0"
  api: "1.0"
  build_number: "288"
  build_id: "288"
  nailgun_sha: "93477f9b42c5a5e0506248659f40bebc9ac23943"
  python-fuelclient_sha: "1ce8ecd8beb640f2f62f73435f4e18d1469979ac"
  fuel-agent_sha: "082a47bf014002e515001be05f99040437281a2d"
  fuel-nailgun-agent_sha: "d7027952870a35db8dc52f185bb1158cdd3d1ebd"
  astute_sha: "a717657232721a7fafc67ff5e1c696c9dbeb0b95"
  fuel-library_sha: "121016a09b0e889994118aa3ea42fa67eabb8f25"
  fuel-ostf_sha: "1f08e6e71021179b9881a824d9c999957fcc7045"
  fuelmain_sha: "6b83d6a6a75bf7bca3177fcf63b2eebbf1ad0a85"

ENVIRONMENT:
Ubuntu, Neutron with VLAN segmentation, Ceph for volumes, Ceph for images, Ceph for ephemeral volumes, Sahara, Murano and Ceilo installed, 3 (controller + mongo), 1 (compute + ceph-osd)

Revision history for this message
Boris Bobrov (bbobrov) wrote :

the bug disappears when cache is disabled

Changed in mos:
assignee: MOS Keystone (mos-keystone) → Boris Bobrov (bbobrov)
status: New → Confirmed
Changed in mos:
importance: Undecided → Critical
summary: - Keystone tempest tests for updating different things (roles, projects,
- domains, tenants, etc) constantly fail on weak environments
+ Keystone cache configured incorrectly - some operations failed. Tempest
+ tests for updating different things (roles, projects, domains, tenants,
+ etc) constantly fail on weak environments
Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote : Re: Keystone cache configured incorrectly - some operations failed. Tempest tests for updating different things (roles, projects, domains, tenants, etc) constantly fail on weak environments

Priority changed to Critical because some basic Keystone operations failed with enabled cache. The is a workaround - we can disable cache and it will work, but in this case the performance of keystone significantly deteriorates.

Let's check the root of the issue and fix the incorrect cache configuration - it will help to kill to birds with the one stone - we will fix issue with failed keystone operations, fix issue with bad performance and probably it will help to fix issues with wsgi :)

Revision history for this message
Alexander Makarov (amakarov) wrote :

Timur, have you tried Boris proposal?

Revision history for this message
Yaroslav Lobankov (ylobankov) wrote :

Alexander, I have tried. With cache disabled each test works within 15-20 seconds. With cache enabled each test takes less than 1 second.

Revision history for this message
Alexander Makarov (amakarov) wrote :

Now does it affect customer environments?

Revision history for this message
Yaroslav Lobankov (ylobankov) wrote :

What do you mean by "Now does it affect customer environments?" ? You are talking about this bug or disabled cache?

Revision history for this message
Alexander Makarov (amakarov) wrote :

Sorry, typo: how does it affect?
And I'm about the bug, of course

Revision history for this message
Boris Bobrov (bbobrov) wrote :
Changed in mos:
assignee: Boris Bobrov (bbobrov) → Fuel Library Team (fuel-library)
Revision history for this message
Boris Bobrov (bbobrov) wrote :

due to https://review.openstack.org/#/c/210305/ cache was not invalidated on nodes other than the one that processed the request. When an update operation happened on node-1, node-2 and node-3 still had old values.

Revision history for this message
Timur Nurlygayanov (tnurlygayanov) wrote :

This issue reproduced on any environment (on hardware nodes too), these tests failed on our MOS QA labs for Tempest and these tests will fail on hardware environments too. In fact we will see the regression issue in Keystone functionality if we will not fix the issue.

description: updated
Revision history for this message
Vladimir Kuklin (vkuklin) wrote :

The fix under discussion was created by mos-puppet team and fixed the bug initially created by MOS keystone folks. So far, sending it to mos-puppet team.

Changed in mos:
assignee: Fuel Library Team (fuel-library) → MOS Puppet Team (mos-puppet)
summary: Keystone cache configured incorrectly - some operations failed. Tempest
tests for updating different things (roles, projects, domains, tenants,
- etc) constantly fail on weak environments
+ etc) constantly fail
Revision history for this message
Denis Egorenko (degorenko) wrote : Re: Keystone cache configured incorrectly - some operations failed. Tempest tests for updating different things (roles, projects, domains, tenants, etc) constantly fail
Changed in mos:
assignee: MOS Puppet Team (mos-puppet) → Denis Egorenko (degorenko)
status: Confirmed → In Progress
Revision history for this message
Boris Bobrov (bbobrov) wrote :

Steps to reproduce

1. Set up an env with 3 controllers;
2. Create a project;
3. Fetch it 10 times;
4. Update the project's description;
5. Fetch it 10 times. Some of the times the project description will be old.

summary: - Keystone cache configured incorrectly - some operations failed. Tempest
- tests for updating different things (roles, projects, domains, tenants,
- etc) constantly fail
+ UPDATE and DELETE operations for keystone entities sometimes don't work
description: updated
Revision history for this message
Igor Marnat (imarnat) wrote :
Revision history for this message
Yaroslav Lobankov (ylobankov) wrote :

Verified on ISO #292.

tags: added: on-verification
Revision history for this message
Dmitriy Kruglov (dkruglov) wrote :

Verified on MOS 8.0. Not reproduced.

ISO info:
VERSION:
  feature_groups:
    - mirantis
  production: "docker"
  release: "8.0"
  openstack_version: "2015.1.0-8.0"
  api: "1.0"
  build_number: "138"
  build_id: "138"
  fuel-nailgun_sha: "3a745ee87e659b3ba239bbede21e491292646acb"
  python-fuelclient_sha: "769df968e19d95a4ab4f12b1d2c76d385cf3168c"
  fuel-agent_sha: "84335446172cc6a699252c184076a519ac791ca1"
  fuel-nailgun-agent_sha: "d66f188a1832a9c23b04884a14ef00fc5605ec6d"
  astute_sha: "e99368bd77496870592781f4ba4fb0caacb9f3a7"
  fuel-library_sha: "80c2dcf3e298e576dd50111825041466b0e38d3f"
  fuel-ostf_sha: "983d0e6fe64397d6ff3bd72311c26c44b02de3e8"
  fuel-createmirror_sha: "df6a93f7e2819d3dfa600052b0f901d9594eb0db"
  fuelmain_sha: "4c58b6503fc780be117777182165fd7b037b1a96"

tags: removed: on-verification
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.