)]}'
{"id":"openstack%2Foslo.cache~640500","triplet_id":"openstack%2Foslo.cache~stable%2Frocky~I039dffadeebd0ff4479b9c870c257772c43aba53","project":"openstack/oslo.cache","branch":"stable/rocky","topic":"all-the-fixes-stable/rocky","hashtags":[],"change_id":"I039dffadeebd0ff4479b9c870c257772c43aba53","subject":"Fix memcache pool client in monkey-patched environments","status":"MERGED","created":"2019-03-01 19:51:37.000000000","updated":"2019-04-24 15:03:01.000000000","submitted":"2019-04-24 14:14:51.000000000","submitter":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"total_comment_count":1,"unresolved_comment_count":0,"has_review_started":true,"submission_id":"640500-1556115292330-81340386","meta_rev_id":"fdc07953881881907870791edd5118d814a633c6","_number":640500,"virtual_id_number":640500,"owner":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"value":0,"date":"2019-04-01 16:48:43.000000000","_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},{"value":0,"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},{"value":0,"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},{"value":0,"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},{"value":0,"date":"2019-03-15 13:17:00.000000000","_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},{"value":2,"date":"2019-04-24 14:14:51.000000000","permitted_voting_range":{"min":2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","default_value":0,"optional":true},"Code-Review":{"approved":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"all":[{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":2,"date":"2019-04-15 12:34:15.000000000","_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},{"value":2,"date":"2019-04-24 12:51:52.000000000","_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},{"value":1,"date":"2019-03-15 13:16:33.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},{"value":1,"date":"2019-03-25 10:18:49.000000000","permitted_voting_range":{"min":1,"max":2},"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},{"value":0,"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":1,"date":"2019-04-01 11:12:03.000000000","permitted_voting_range":{"min":1,"max":1},"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"approved":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"all":[{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},{"value":1,"date":"2019-04-24 12:51:52.000000000","_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},{"value":0,"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},{"value":0,"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},{"value":0,"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"value":0,"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},{"value":0,"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},{"value":0,"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},{"value":0,"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},{"value":0,"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},{"value":0,"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},{"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"},{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2019-03-15 13:16:33.000000000","updated_by":{"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},"reviewer":{"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},"state":"REVIEWER"},{"updated":"2019-03-15 13:17:00.000000000","updated_by":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"reviewer":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"state":"REVIEWER"},{"updated":"2019-03-25 10:18:49.000000000","updated_by":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"reviewer":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"state":"REVIEWER"},{"updated":"2019-04-01 11:12:03.000000000","updated_by":{"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"},"reviewer":{"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"},"state":"REVIEWER"},{"updated":"2019-04-15 12:34:15.000000000","updated_by":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"reviewer":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"state":"REVIEWER"},{"updated":"2019-04-24 12:51:52.000000000","updated_by":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"reviewer":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"state":"REVIEWER"},{"updated":"2019-04-24 14:14:51.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"}],"messages":[{"id":"550fef126317897feea172e2c721f03fde2bd851","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2019-03-01 19:51:37.000000000","message":"Patch Set 1: Cherry Picked from branch master.","accounts_in_message":[],"_revision_number":1},{"id":"4a605be0ee87300af27c2a2374b22c1c7555e493","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-03-01 21:25:10.000000000","message":"Patch Set 1: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/00/640500/1/check/openstack-tox-pep8/5d2c891/ : SUCCESS in 6m 30s\n- openstack-tox-py27 http://logs.openstack.org/00/640500/1/check/openstack-tox-py27/44a21ef/ : SUCCESS in 6m 16s\n- openstack-tox-docs http://logs.openstack.org/00/640500/1/check/openstack-tox-docs/c2b0316/html/ : SUCCESS in 5m 56s\n- openstack-tox-py35 http://logs.openstack.org/00/640500/1/check/openstack-tox-py35/6fdc1cf/ : SUCCESS in 6m 49s\n- tempest-full http://logs.openstack.org/00/640500/1/check/tempest-full/e951c6d/ : SUCCESS in 1h 30m 01s\n- openstack-tox-lower-constraints http://logs.openstack.org/00/640500/1/check/openstack-tox-lower-constraints/b12023d/ : SUCCESS in 5m 02s","accounts_in_message":[],"_revision_number":1},{"id":"1a59462447f5901d150ece8a304553dd93e66e9f","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2019-03-04 16:30:05.000000000","message":"Patch Set 1: Code-Review+1","accounts_in_message":[],"_revision_number":1},{"id":"2934273b14c696c89c3081cdb5dc5e6f4a9c63cf","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2019-03-04 16:32:04.000000000","message":"Patch Set 1: Code-Review-1\n\n(1 comment)","accounts_in_message":[],"_revision_number":1},{"id":"1800fab865337ba3e09e6bea3656010c8077e502","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2019-03-07 19:30:37.000000000","message":"Patch Set 2: Commit message was updated.","accounts_in_message":[],"_revision_number":2},{"id":"7435801969bd1a16bb75032b18a2e75ada7b8202","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-03-07 21:05:19.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/00/640500/2/check/openstack-tox-pep8/1ab09ad/ : SUCCESS in 5m 14s\n- openstack-tox-py27 http://logs.openstack.org/00/640500/2/check/openstack-tox-py27/ccf85cb/ : SUCCESS in 4m 48s\n- openstack-tox-docs http://logs.openstack.org/00/640500/2/check/openstack-tox-docs/661ef5e/html/ : SUCCESS in 4m 43s\n- openstack-tox-py35 http://logs.openstack.org/00/640500/2/check/openstack-tox-py35/fd13cde/ : SUCCESS in 5m 05s\n- tempest-full http://logs.openstack.org/00/640500/2/check/tempest-full/89a23a0/ : SUCCESS in 1h 28m 25s\n- openstack-tox-lower-constraints http://logs.openstack.org/00/640500/2/check/openstack-tox-lower-constraints/b477ae3/ : SUCCESS in 4m 41s","accounts_in_message":[],"_revision_number":2},{"id":"e107aee7a100a0f7bd90d1641763a888c7ca33b3","author":{"_account_id":12281,"name":"Itxaka","email":"igarcia@suse.com","username":"itxaka"},"date":"2019-03-15 13:16:33.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"3c27d1e8441cb3188a8852405e33f594c9321036","author":{"_account_id":17068,"name":"Jean-Philippe Evrard","email":"openstack@a.spamming.party","username":"evrardjp"},"date":"2019-03-15 13:17:00.000000000","message":"Patch Set 2:\n\noh god.","accounts_in_message":[],"_revision_number":2},{"id":"f9aef97d88e3f1364a4c087cb23b1021f88a98f9","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2019-03-20 17:36:54.000000000","message":"Patch Set 2:\n\n\u003e oh god.\n\n+1 :-)","accounts_in_message":[],"_revision_number":2},{"id":"0bfd62d4a6ecb88943f55063eddb5eef9777c172","author":{"_account_id":28522,"name":"Hervé Beraud","email":"herveberaud.pro@gmail.com","username":"hberaud"},"date":"2019-03-25 10:18:49.000000000","message":"Patch Set 2: Code-Review+1","accounts_in_message":[],"_revision_number":2},{"id":"5b0647a9d6f708569f1d7018a1d6690ce987b5a3","author":{"_account_id":22799,"name":"Andrew McLeod","email":"andrew.mcleod@canonical.com","username":"admcleod"},"date":"2019-04-01 11:12:03.000000000","message":"Patch Set 2: Code-Review+1\n\nI\u0027ve manually tested this patch and validated functionality","accounts_in_message":[],"_revision_number":2},{"id":"f060b5e983b40289feddb6a38e2d126f7c6774ed","author":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"date":"2019-04-01 15:00:21.000000000","message":"Patch Set 2:\n\nBen, \n\nI\u0027m hitting this:\n\noslo_cache.tests.test_connection_pool.TestMemcacheClientOverrides.test_can_create_with_kwargs\n---------------------------------------------------------------------------------------------\n\nCaptured traceback:\n~~~~~~~~~~~~~~~~~~~\n    Traceback (most recent call last):\n      File \"oslo_cache/tests/test_connection_pool.py\", line 160, in test_can_create_with_kwargs\n        client \u003d _memcache_pool._MemcacheClient(\u0027foo\u0027, check_keys\u003dFalse)\n    TypeError: object.__new__(_MemcacheClient) is not safe, use _MemcacheClient.__new__()\n\nwhen I run the tox pypy test on Fedora28.  Is that expected?\n\npy27 + py35 work fine.","accounts_in_message":[],"_revision_number":2},{"id":"29f5fbe361ba000c9bf8d4495c5ae6cdc5364b7c","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2019-04-01 16:48:43.000000000","message":"Patch Set 2:\n\nWe don\u0027t support pypy, so while it\u0027s not expected per se, it also doesn\u0027t need to block this IMHO. This isn\u0027t a proper long-term fix, just something to unblock folks trying to move to Python 3.","accounts_in_message":[],"_revision_number":2},{"id":"5b2994d78c622892c7a338e6ed4ec802e8525549","author":{"_account_id":8770,"name":"Ken Giusti","email":"kgiusti@gmail.com","username":"kgiusti"},"date":"2019-04-15 12:34:15.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"677d29d5c97974e58a0d721593cc1098ebccbdbd","author":{"_account_id":9796,"name":"ChangBo Guo","email":"glongwave@gmail.com","username":"gcb"},"date":"2019-04-24 12:51:52.000000000","message":"Patch Set 2: Code-Review+2 Workflow+1","accounts_in_message":[],"_revision_number":2},{"id":"e686a2d721d9d1603df320f3122579422e0002d7","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-04-24 12:52:04.000000000","message":"Patch Set 2: -Verified\n\nStarting gate jobs.","accounts_in_message":[],"_revision_number":2},{"id":"d784f5f9a750a79bbd3601693ddc0b3f4ee1a739","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-04-24 14:14:51.000000000","message":"Patch Set 2: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- openstack-tox-pep8 http://logs.openstack.org/00/640500/2/gate/openstack-tox-pep8/f6addb4/ : SUCCESS in 4m 39s\n- openstack-tox-py27 http://logs.openstack.org/00/640500/2/gate/openstack-tox-py27/b0c03cb/ : SUCCESS in 4m 38s\n- openstack-tox-docs http://logs.openstack.org/00/640500/2/gate/openstack-tox-docs/fa97266/html/ : SUCCESS in 4m 54s\n- openstack-tox-py35 http://logs.openstack.org/00/640500/2/gate/openstack-tox-py35/bc71f37/ : SUCCESS in 5m 04s\n- tempest-full http://logs.openstack.org/00/640500/2/gate/tempest-full/2cc2ff5/ : SUCCESS in 1h 21m 21s\n- openstack-tox-lower-constraints http://logs.openstack.org/00/640500/2/gate/openstack-tox-lower-constraints/bc47b7d/ : SUCCESS in 4m 55s","accounts_in_message":[],"_revision_number":2},{"id":"9723e274ef192219faf988936693e29e31f00686","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2019-04-24 14:14:52.000000000","message":"Change has been successfully merged by Zuul","accounts_in_message":[],"_revision_number":2},{"id":"a100ef28a52fcc6a0c856695c29ae1de7fcca9f8","author":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"date":"2019-04-24 15:03:01.000000000","message":"Patch Set 2: Cherry Picked\n\nThis patchset was cherry picked to branch stable/queens as commit 38dcffa904c7d4b5bd61896b972c1e16477fcc56","accounts_in_message":[],"_revision_number":2}],"current_revision_number":2,"current_revision":"caf5443de8ff4ff353d741a125f782c67f579f52","revisions":{"90e34ff8a9283780e9953c497c4a650858af136b":{"kind":"REWORK","_number":1,"created":"2019-03-01 19:51:37.000000000","uploader":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"ref":"refs/changes/00/640500/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.cache","ref":"refs/changes/00/640500/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/1"}}},"commit":{"parents":[{"commit":"5f42092e2cba1d9e9711d819a2792dd264a887fd","subject":"Only split url arg with memcache backend","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/5f42092e2cba1d9e9711d819a2792dd264a887fd"}]}],"author":{"name":"Ben Nemec","email":"bnemec@redhat.com","date":"2019-02-26 22:12:23.000000000","tz":0},"committer":{"name":"Ben Nemec","email":"openstack@nemebean.com","date":"2019-03-01 19:51:37.000000000","tz":0},"subject":"Fix memcache pool client in monkey-patched environments","message":"Fix memcache pool client in monkey-patched environments\n\nFirst off, this is an ugly hack, but we\u0027re dealing with code that\nessentially monkey-patches a monkey-patch. You reap what you sow.\n\nPer the linked bug, our connection pool client explodes on python 3\nwith eventlet monkey-patching in force:\n\nTypeError: object() takes no parameters\n\nThis is due to the way __new__ is overridden in the class. We need\nto strip arguments from the call before they get to object(), which\ndoesn\u0027t accept args.\n\nUnfortunately, when we\u0027re _not_ monkey-patched, adding the new\noverride implementation fails with:\n\nTypeError: object.__new__(_MemcacheClient) is not safe,\nuse Client.__new__()\n\nAs such, we need different implementations depending on whether we\nare monkey-patched or not. This change passes both with and without\nmonkey-patching and adds a unit test that exposes the bug.\n\nNote that this is a temporary, backportable fix that will ultimately\nbe replaced by a switch to the pymemcache library which does not\nhave the threading.local problem being worked around here.\n\nChange-Id: I039dffadeebd0ff4479b9c870c257772c43aba53\nPartial-Bug: 1812935\n(cherry picked from commit f4a25f642991a7114b86f6eb7d0bac3d599953a6)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/90e34ff8a9283780e9953c497c4a650858af136b"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/90e34ff8a9283780e9953c497c4a650858af136b"}]},"branch":"refs/heads/stable/rocky"},"caf5443de8ff4ff353d741a125f782c67f579f52":{"kind":"NO_CODE_CHANGE","_number":2,"created":"2019-03-07 19:30:37.000000000","uploader":{"_account_id":6928,"name":"Ben Nemec","email":"openstack@nemebean.com","username":"bnemec"},"ref":"refs/changes/00/640500/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.cache","ref":"refs/changes/00/640500/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.cache refs/changes/00/640500/2"}}},"commit":{"parents":[{"commit":"5f42092e2cba1d9e9711d819a2792dd264a887fd","subject":"Only split url arg with memcache backend","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/5f42092e2cba1d9e9711d819a2792dd264a887fd"}]}],"author":{"name":"Ben Nemec","email":"bnemec@redhat.com","date":"2019-02-26 22:12:23.000000000","tz":0},"committer":{"name":"Ben Nemec","email":"openstack@nemebean.com","date":"2019-03-07 19:30:32.000000000","tz":0},"subject":"Fix memcache pool client in monkey-patched environments","message":"Fix memcache pool client in monkey-patched environments\n\nFirst off, this is an ugly hack, but we\u0027re dealing with code that\nessentially monkey-patches a monkey-patch. You reap what you sow.\n\nPer the linked bug, our connection pool client explodes on python 3\nwith eventlet monkey-patching in force:\n\nTypeError: object() takes no parameters\n\nThis is due to the way __new__ is overridden in the class. We need\nto strip arguments from the call before they get to object(), which\ndoesn\u0027t accept args.\n\nUnfortunately, when we\u0027re _not_ monkey-patched, adding the new\noverride implementation fails with:\n\nTypeError: object.__new__(_MemcacheClient) is not safe,\nuse Client.__new__()\n\nAs such, we need different implementations depending on whether we\nare monkey-patched or not. This change passes both with and without\nmonkey-patching and adds a unit test that exposes the bug.\n\nNote that this is a temporary, backportable fix that will ultimately\nbe replaced by a switch to the pymemcache library which does not\nhave the threading.local problem being worked around here.\n\nChange-Id: I039dffadeebd0ff4479b9c870c257772c43aba53\nPartial-Bug: 1812935\nCloses-Bug: 1812672\n(cherry picked from commit f4a25f642991a7114b86f6eb7d0bac3d599953a6)\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/caf5443de8ff4ff353d741a125f782c67f579f52"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.cache/commit/caf5443de8ff4ff353d741a125f782c67f579f52"}]},"branch":"refs/heads/stable/rocky"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
