keystonemiddleware doesn't work with memcachepool

Bug #1782404 reported by Morgan Fainberg
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
keystonemiddleware
Fix Released
High
Morgan Fainberg

Bug Description

This bug was reported by iain MacDonnell (Oracle)

Keystonemiddleware was converted over to use the Queue object. In doing so, the memcachepool no longer placed connections back into the pool when they were done.

This is largely because all of the logic to do so was moved from .get to .acquire and KSM was blindly yielding connection objects without replacing them when they were done.

The fix is to utilize acquire in the reserve() context manager.

Revision history for this message
Morgan Fainberg (mdrnstm) wrote :

This will need to be backported to the Pike and Queens versions of KSM.

description: updated
Changed in keystonemiddleware:
importance: Undecided → High
status: New → Triaged
assignee: nobody → Morgan Fainberg (mdrnstm)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to keystonemiddleware (master)

Fix proposed to branch: master
Review: https://review.openstack.org/583695

Changed in keystonemiddleware:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to keystonemiddleware (stable/queens)

Fix proposed to branch: stable/queens
Review: https://review.openstack.org/583698

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to keystonemiddleware (stable/pike)

Fix proposed to branch: stable/pike
Review: https://review.openstack.org/583699

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to keystonemiddleware (master)

Reviewed: https://review.openstack.org/583695
Committed: https://git.openstack.org/cgit/openstack/keystonemiddleware/commit/?id=c46f29278d6a916416948d4120489b429f8bf460
Submitter: Zuul
Branch: master

commit c46f29278d6a916416948d4120489b429f8bf460
Author: Morgan Fainberg <email address hidden>
Date: Wed Jul 18 11:26:18 2018 -0700

    Fix KeystoneMiddleware memcachepool abstraction

    Keystonemiddleware's abstraction for the memcache pool was broken
    when converting to use a queue.Queue. The logic that placed the
    connection back into the pool was moved to .acquire and the reserve
    method was not using acquire.

    Change-Id: I0eda5981cbb661f63790258cf8e70c7340615159
    Closes-Bug: #1782404

Changed in keystonemiddleware:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/keystonemiddleware 5.2.0

This issue was fixed in the openstack/keystonemiddleware 5.2.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to keystonemiddleware (stable/queens)

Reviewed: https://review.openstack.org/583698
Committed: https://git.openstack.org/cgit/openstack/keystonemiddleware/commit/?id=3fc10b237affb9614a6591f494ab7e8490b81cce
Submitter: Zuul
Branch: stable/queens

commit 3fc10b237affb9614a6591f494ab7e8490b81cce
Author: Morgan Fainberg <email address hidden>
Date: Wed Jul 18 11:26:18 2018 -0700

    Fix KeystoneMiddleware memcachepool abstraction

    Keystonemiddleware's abstraction for the memcache pool was broken
    when converting to use a queue.Queue. The logic that placed the
    connection back into the pool was moved to .acquire and the reserve
    method was not using acquire.

    Conflicts:
        keystonemiddleware/auth_token/_cache.py
        keystonemiddleware/tests/unit/auth_token/test_cache.py

    Change-Id: I0eda5981cbb661f63790258cf8e70c7340615159
    Closes-Bug: #1782404
    (cherry picked from commit dea1e94d6c89b5df630f30cf61464ed67d5d1ab0)

tags: added: in-stable-queens
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on keystonemiddleware (stable/pike)

Change abandoned by Morgan Fainberg (<email address hidden>) on branch: stable/pike
Review: https://review.openstack.org/583699
Reason: Ultimately not easily backportable to Pike. abandoning.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/keystonemiddleware 5.3.0

This issue was fixed in the openstack/keystonemiddleware 5.3.0 release.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/keystonemiddleware 4.22.0

This issue was fixed in the openstack/keystonemiddleware 4.22.0 release.

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.