)]}'
{"id":"openstack%2Fshade~339322","triplet_id":"openstack%2Fshade~master~I4fbde2f4528aeaee5c23f0e1d1e4590090acb6ba","project":"openstack/shade","branch":"master","topic":"per-resource-cache","hashtags":[],"change_id":"I4fbde2f4528aeaee5c23f0e1d1e4590090acb6ba","subject":"Lay the groundwork for per-resource cache","status":"MERGED","created":"2016-07-08 02:49:55.000000000","updated":"2016-08-17 14:19:34.000000000","submitted":"2016-08-17 14:19:34.000000000","submitter":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"78c3bea9d411373799337e74b98aa288e6815fdc","_number":339322,"virtual_id_number":339322,"owner":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"actions":{},"labels":{"Verified":{"approved":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"value":0,"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},{"value":2,"date":"2016-08-17 14:19:34.000000000","post_submit":true,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"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":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"all":[{"value":2,"date":"2016-08-16 00:17:13.000000000","_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"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":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"all":[{"value":1,"date":"2016-08-17 13:31:13.000000000","_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},{"value":0,"_account_id":3,"name":"Jenkins","username":"jenkins"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2016-08-17 13:31:13.000000000","updated_by":{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"reviewer":{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"state":"REVIEWER"},{"updated":"2016-08-17 14:19:34.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"}],"messages":[{"id":"9598e0d4a2f6fd4beb2d591cc88d1a6b9c917ffa","author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"date":"2016-07-08 02:49:55.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"88254610cc7dda469e7408e2bbbf350a81f6793a","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-07-08 03:26:12.000000000","message":"Patch Set 1: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see http://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n- gate-shade-docs http://docs-draft.openstack.org/22/339322/1/check/gate-shade-docs/dc24897//doc/build/html/ : SUCCESS in 3m 10s\n- gate-shade-pep8 http://logs.openstack.org/22/339322/1/check/gate-shade-pep8/1f3b698/ : FAILURE in 3m 14s\n- gate-shade-python27 http://logs.openstack.org/22/339322/1/check/gate-shade-python27/dffb8ba/ : SUCCESS in 3m 33s\n- gate-shade-python34 http://logs.openstack.org/22/339322/1/check/gate-shade-python34/e57efa6/ : SUCCESS in 2m 30s\n- gate-shade-python35-nv http://logs.openstack.org/22/339322/1/check/gate-shade-python35-nv/9d8a7f3/ : SUCCESS in 4m 33s (non-voting)\n- shade-coverage http://logs.openstack.org/22/339322/1/check/shade-coverage/074f0ac/ : SUCCESS in 2m 31s\n- gate-shade-dsvm-functional-keystone2 http://logs.openstack.org/22/339322/1/check/gate-shade-dsvm-functional-keystone2/c7136a0/ : SUCCESS in 30m 59s\n- gate-shade-dsvm-functional-neutron http://logs.openstack.org/22/339322/1/check/gate-shade-dsvm-functional-neutron/f087ecb/ : FAILURE in 29m 58s\n- gate-shade-dsvm-functional-nova http://logs.openstack.org/22/339322/1/check/gate-shade-dsvm-functional-nova/67a47b5/ : SUCCESS in 17m 59s\n- gate-shade-dsvm-ansible http://logs.openstack.org/22/339322/1/check/gate-shade-dsvm-ansible/39ee5cd/ : SUCCESS in 35m 32s\n- gate-shade-dsvm-ansible-dev-nv http://logs.openstack.org/22/339322/1/check/gate-shade-dsvm-ansible-dev-nv/9747d3f/ : SUCCESS in 21m 00s (non-voting)\n- gate-dsvm-nodepool-src-shade http://logs.openstack.org/22/339322/1/check/gate-dsvm-nodepool-src-shade/e680924/ : SUCCESS in 23m 26s (non-voting)","accounts_in_message":[],"_revision_number":1},{"id":"ab0edcd3acb32ef372b43719cf7f1a0411b43453","author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"date":"2016-07-17 20:37:34.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"9e94bbf24b6c62513989aa22301c8eb3fd8a37fa","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-07-17 21:14:30.000000000","message":"Patch Set 2: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-shade-docs http://docs-draft.openstack.org/22/339322/2/check/gate-shade-docs/7165b89//doc/build/html/ : SUCCESS in 2m 10s\n- gate-shade-pep8 http://logs.openstack.org/22/339322/2/check/gate-shade-pep8/d40bce2/ : SUCCESS in 1m 57s\n- gate-shade-python27 http://logs.openstack.org/22/339322/2/check/gate-shade-python27/673b5c5/ : SUCCESS in 3m 20s\n- gate-shade-python34 http://logs.openstack.org/22/339322/2/check/gate-shade-python34/f2e1cd4/ : SUCCESS in 4m 49s\n- gate-shade-python35-nv http://logs.openstack.org/22/339322/2/check/gate-shade-python35-nv/a52344c/ : SUCCESS in 5m 11s (non-voting)\n- shade-coverage http://logs.openstack.org/22/339322/2/check/shade-coverage/b27c96b/ : SUCCESS in 4m 18s\n- gate-shade-dsvm-functional-keystone2 http://logs.openstack.org/22/339322/2/check/gate-shade-dsvm-functional-keystone2/4e8768b/ : SUCCESS in 21m 58s\n- gate-shade-dsvm-functional-neutron http://logs.openstack.org/22/339322/2/check/gate-shade-dsvm-functional-neutron/cf6f118/ : SUCCESS in 27m 02s\n- gate-shade-dsvm-functional-nova http://logs.openstack.org/22/339322/2/check/gate-shade-dsvm-functional-nova/2da04d4/ : SUCCESS in 22m 53s\n- gate-shade-dsvm-ansible http://logs.openstack.org/22/339322/2/check/gate-shade-dsvm-ansible/f5f6eff/ : SUCCESS in 33m 48s\n- gate-shade-dsvm-ansible-dev-nv http://logs.openstack.org/22/339322/2/check/gate-shade-dsvm-ansible-dev-nv/4819619/ : SUCCESS in 34m 31s (non-voting)\n- gate-dsvm-nodepool-src-shade http://logs.openstack.org/22/339322/2/check/gate-dsvm-nodepool-src-shade/d0c24be/ : SUCCESS in 35m 40s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"c87bbac2b452ea613cab5e137c97724161386abf","author":{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"date":"2016-08-08 17:17:04.000000000","message":"Patch Set 2: Code-Review+2","accounts_in_message":[],"_revision_number":2},{"id":"a09a9fc35bab2b8a8cad2ee0ccf17dce39d79001","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-08-11 12:15:31.000000000","message":"Patch Set 2: Verified-1\n\nMerge Failed.\n\nThis change or one of its cross-repo dependencies was unable to be automatically merged with the current state of its repository. Please rebase the change and upload a new patchset.","accounts_in_message":[],"_revision_number":2},{"id":"defc89708e9f14d21095a7b09ab508c869c17ad3","author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"date":"2016-08-11 15:45:34.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"6357a26e8ae0d7872c3a582783a51ba158e95029","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-08-11 19:05:48.000000000","message":"Patch Set 3: Verified+1\n\nBuild succeeded (check pipeline).\n\n- gate-shade-docs-ubuntu-xenial http://docs-draft.openstack.org/22/339322/3/check/gate-shade-docs-ubuntu-xenial/939e0df//doc/build/html/ : SUCCESS in 4m 43s\n- gate-shade-pep8-ubuntu-xenial http://logs.openstack.org/22/339322/3/check/gate-shade-pep8-ubuntu-xenial/b4693d0/ : SUCCESS in 3m 21s\n- gate-shade-python27-ubuntu-xenial http://logs.openstack.org/22/339322/3/check/gate-shade-python27-ubuntu-xenial/cfbd45d/ : SUCCESS in 5m 31s\n- gate-shade-python34 http://logs.openstack.org/22/339322/3/check/gate-shade-python34/a078688/ : SUCCESS in 5m 22s\n- gate-shade-python35-nv http://logs.openstack.org/22/339322/3/check/gate-shade-python35-nv/303f406/ : SUCCESS in 7m 05s (non-voting)\n- shade-coverage-ubuntu-xenial http://logs.openstack.org/22/339322/3/check/shade-coverage-ubuntu-xenial/d1b58ad/ : SUCCESS in 5m 11s\n- gate-shade-dsvm-functional-keystone2 http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-functional-keystone2/0371410/ : SUCCESS in 41m 13s\n- gate-shade-dsvm-functional-libs-nv http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-functional-libs-nv/a4b1b90/ : FAILURE in 20m 46s (non-voting)\n- gate-shade-dsvm-functional-neutron http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-functional-neutron/dc353d9/ : SUCCESS in 43m 20s\n- gate-shade-dsvm-functional-nova http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-functional-nova/4bcacb3/ : SUCCESS in 38m 32s\n- gate-shade-dsvm-ansible http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-ansible/d34c168/ : SUCCESS in 43m 10s\n- gate-shade-dsvm-ansible-dev-nv http://logs.openstack.org/22/339322/3/check/gate-shade-dsvm-ansible-dev-nv/818d862/ : SUCCESS in 37m 27s (non-voting)\n- gate-dsvm-nodepool-src-shade http://logs.openstack.org/22/339322/3/check/gate-dsvm-nodepool-src-shade/ae08abc/ : SUCCESS in 38m 06s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"cefbfd0b9e575efe0716e4499a7aa3cc8a497ee8","author":{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"date":"2016-08-16 00:17:13.000000000","message":"Patch Set 3: Code-Review+2","accounts_in_message":[],"_revision_number":3},{"id":"7f3a9708b7076404c4b2737a1b9a813a4afe140a","author":{"_account_id":3099,"name":"David Shrewsbury","email":"dshrewsb@redhat.com","username":"dshrews"},"date":"2016-08-17 13:31:13.000000000","message":"Patch Set 3: Workflow+1","accounts_in_message":[],"_revision_number":3},{"id":"a7d225e8430b72369d465a483f4a4a47a9aa56bb","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-08-17 13:31:26.000000000","message":"Patch Set 3: -Verified\n\nStarting gate jobs.\nhttp://status.openstack.org/zuul/","accounts_in_message":[],"_revision_number":3},{"id":"9450bef442618316a0f45512e7e3c5fcdfadbd7b","date":"2016-08-17 14:19:34.000000000","message":"Change has been successfully merged into the git repository by Jenkins","accounts_in_message":[],"_revision_number":3},{"id":"d2915236adb5862e1dd73948ee35bbdf73f371a3","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2016-08-17 14:19:34.000000000","message":"Patch Set 3: Verified+2\n\nBuild succeeded (gate pipeline).\n\n- gate-shade-docs-ubuntu-xenial http://docs-draft.openstack.org/22/339322/3/gate/gate-shade-docs-ubuntu-xenial/ed57c6c//doc/build/html/ : SUCCESS in 2m 30s\n- gate-shade-pep8-ubuntu-xenial http://logs.openstack.org/22/339322/3/gate/gate-shade-pep8-ubuntu-xenial/3cf0cd8/ : SUCCESS in 2m 30s\n- gate-shade-python27-ubuntu-xenial http://logs.openstack.org/22/339322/3/gate/gate-shade-python27-ubuntu-xenial/f5eb2ac/ : SUCCESS in 3m 46s\n- gate-shade-python34 http://logs.openstack.org/22/339322/3/gate/gate-shade-python34/292d5b8/ : SUCCESS in 4m 23s\n- gate-shade-dsvm-functional-keystone2 http://logs.openstack.org/22/339322/3/gate/gate-shade-dsvm-functional-keystone2/c1e4eb5/ : SUCCESS in 30m 00s\n- gate-shade-dsvm-functional-neutron http://logs.openstack.org/22/339322/3/gate/gate-shade-dsvm-functional-neutron/9aae1d7/ : SUCCESS in 42m 09s\n- gate-shade-dsvm-functional-nova http://logs.openstack.org/22/339322/3/gate/gate-shade-dsvm-functional-nova/2c80396/ : SUCCESS in 37m 22s\n- gate-shade-dsvm-ansible http://logs.openstack.org/22/339322/3/gate/gate-shade-dsvm-ansible/def10c6/ : SUCCESS in 46m 55s","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"ae25137e36ee044f29ca6db778acc8c77172bc43","revisions":{"04030ecc4410450c0c2192dfc9a7a51ecb3491e3":{"kind":"REWORK","_number":1,"created":"2016-07-08 02:49:55.000000000","uploader":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"ref":"refs/changes/22/339322/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/shade","ref":"refs/changes/22/339322/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/shade refs/changes/22/339322/1"}}},"commit":{"parents":[{"commit":"8481c6baa2becaa709e2d11b1c739cd9792851df","subject":"Treat DELETE_COMPLETE stacks as NotFound","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/8481c6baa2becaa709e2d11b1c739cd9792851df"}]}],"author":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-07-08 01:41:41.000000000","tz":540},"committer":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-07-08 01:41:41.000000000","tz":540},"subject":"Lay the groundwork for per-resource cache","message":"Lay the groundwork for per-resource cache\n\nThere are currently two caches, the global cache, and the per-resource\nbatch operation caches. The global cache is managed by dogpile. The\nper-resource caches are managed by hand. However, dogpile has a mode of\noperation that is precisely what we do in our batched operation\nper-resource caches by hand. So set ourselves up to have and use\nper-resource caches.\n\nStep one is to make the decorator accept an argument that it\u0027ll use to\nlook up the cache.\n\nChange-Id: I4fbde2f4528aeaee5c23f0e1d1e4590090acb6ba\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/04030ecc4410450c0c2192dfc9a7a51ecb3491e3"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/04030ecc4410450c0c2192dfc9a7a51ecb3491e3"}]},"branch":"refs/heads/master"},"fdeb0a1a92713cc331bfaa5a8c96b15394aaebda":{"kind":"REWORK","_number":2,"created":"2016-07-17 20:37:34.000000000","uploader":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"ref":"refs/changes/22/339322/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/shade","ref":"refs/changes/22/339322/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/shade refs/changes/22/339322/2"}}},"commit":{"parents":[{"commit":"9f4805bedbcd6bf0df4b30a9c496bb2d54a93513","subject":"Change operating to interacting with in README","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/9f4805bedbcd6bf0df4b30a9c496bb2d54a93513"}]}],"author":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-07-08 01:41:41.000000000","tz":540},"committer":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-07-17 20:29:37.000000000","tz":-300},"subject":"Lay the groundwork for per-resource cache","message":"Lay the groundwork for per-resource cache\n\nThere are currently two caches, the global cache, and the per-resource\nbatch operation caches. The global cache is managed by dogpile. The\nper-resource caches are managed by hand. However, dogpile has a mode of\noperation that is precisely what we do in our batched operation\nper-resource caches by hand. So set ourselves up to have and use\nper-resource caches.\n\nStep one is to make the decorator accept an argument that it\u0027ll use to\nlook up the cache.\n\nChange-Id: I4fbde2f4528aeaee5c23f0e1d1e4590090acb6ba\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/fdeb0a1a92713cc331bfaa5a8c96b15394aaebda"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/fdeb0a1a92713cc331bfaa5a8c96b15394aaebda"}]},"branch":"refs/heads/master"},"ae25137e36ee044f29ca6db778acc8c77172bc43":{"kind":"REWORK","_number":3,"created":"2016-08-11 15:45:34.000000000","uploader":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"ref":"refs/changes/22/339322/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/shade","ref":"refs/changes/22/339322/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/shade refs/changes/22/339322/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/shade refs/changes/22/339322/3"}}},"commit":{"parents":[{"commit":"d8de9ba90e818294d6a0a5522f7268c5124a4294","subject":"Merge \"Rename baymodel to cluster_template\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/d8de9ba90e818294d6a0a5522f7268c5124a4294"}]}],"author":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-07-08 01:41:41.000000000","tz":540},"committer":{"name":"Monty Taylor","email":"mordred@inaugust.com","date":"2016-08-11 15:44:50.000000000","tz":-300},"subject":"Lay the groundwork for per-resource cache","message":"Lay the groundwork for per-resource cache\n\nThere are currently two caches, the global cache, and the per-resource\nbatch operation caches. The global cache is managed by dogpile. The\nper-resource caches are managed by hand. However, dogpile has a mode of\noperation that is precisely what we do in our batched operation\nper-resource caches by hand. So set ourselves up to have and use\nper-resource caches.\n\nStep one is to make the decorator accept an argument that it\u0027ll use to\nlook up the cache.\n\nChange-Id: I4fbde2f4528aeaee5c23f0e1d1e4590090acb6ba\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/ae25137e36ee044f29ca6db778acc8c77172bc43"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/shade/commit/ae25137e36ee044f29ca6db778acc8c77172bc43"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
