)]}'
{"id":"openstack%2Fpython-novaclient~171524","triplet_id":"openstack%2Fpython-novaclient~master~I4a8db6ffc8ecfdd0e69a7ea3e6eb28632a761664","project":"openstack/python-novaclient","branch":"master","topic":"bug/1436849","hashtags":[],"change_id":"I4a8db6ffc8ecfdd0e69a7ea3e6eb28632a761664","subject":"Inconsistent delete api for soft_deleted instances","status":"ABANDONED","created":"2015-04-08 08:50:33.000000000","updated":"2015-07-27 05:45:47.000000000","total_comment_count":0,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"b79326fbe7f30298209cef8ef8b738108e8329be","_number":171524,"virtual_id_number":171524,"owner":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"all":[{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":-1,"date":"2015-04-08 09:41:52.000000000","_account_id":3,"name":"Jenkins","username":"jenkins"},{"date":"2015-04-09 07:33:24.000000000","_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},{"date":"2015-04-08 16:52:42.000000000","_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},{"date":"2015-04-21 07:28:05.000000000","_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"disliked":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"all":[{"value":-1,"date":"2015-04-21 00:45:45.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"}],"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":"","value":-1,"default_value":0,"optional":true},"Workflow":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":-1,"max":0},"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Review-Priority":{"all":[{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":3,"name":"Jenkins","username":"jenkins"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},{"value":0,"permitted_voting_range":{"min":0,"max":2},"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},{"value":0,"permitted_voting_range":{"min":0,"max":1},"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"}],"values":{" 0":"Default Priority","+1":"Contributor Review Promise","+2":"Core Review Promise"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":3,"name":"Jenkins","username":"jenkins"},{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2015-04-08 09:41:52.000000000","updated_by":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"reviewer":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"state":"REVIEWER"},{"updated":"2015-04-08 16:52:42.000000000","updated_by":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"reviewer":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"state":"REVIEWER"},{"updated":"2015-04-21 00:45:45.000000000","updated_by":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"reviewer":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"state":"REVIEWER"},{"updated":"2015-04-21 07:28:05.000000000","updated_by":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"reviewer":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"state":"REVIEWER"}],"messages":[{"id":"a67479eb83031b061b82f71ba528da257bdb19be","author":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"date":"2015-04-08 08:50:33.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"88c09b25c0e1de9ac632a65d88631118ae2d321b","author":{"_account_id":3,"name":"Jenkins","username":"jenkins"},"date":"2015-04-08 09:41:52.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-python-novaclient-python26 http://logs.openstack.org/24/171524/1/check/gate-python-novaclient-python26/7091eac/ : SUCCESS in 1m 25s\n- gate-python-novaclient-pep8 http://logs.openstack.org/24/171524/1/check/gate-python-novaclient-pep8/fd5d442/ : SUCCESS in 53s\n- gate-python-novaclient-docs http://docs-draft.openstack.org/24/171524/1/check/gate-python-novaclient-docs/ee71411//doc/build/html/ : SUCCESS in 45s\n- gate-python-novaclient-python27 http://logs.openstack.org/24/171524/1/check/gate-python-novaclient-python27/cef6d62/ : SUCCESS in 1m 35s\n- gate-python-novaclient-python34 http://logs.openstack.org/24/171524/1/check/gate-python-novaclient-python34/9740ef9/ : SUCCESS in 3m 25s\n- gate-tempest-dsvm-neutron-src-python-novaclient-icehouse http://logs.openstack.org/24/171524/1/check/gate-tempest-dsvm-neutron-src-python-novaclient-icehouse/9ffc1eb/ : FAILURE in 13m 25s\n- gate-tempest-dsvm-neutron-src-python-novaclient-juno http://logs.openstack.org/24/171524/1/check/gate-tempest-dsvm-neutron-src-python-novaclient-juno/708488a/ : FAILURE in 16m 41s\n- gate-python-novaclient-pypy http://logs.openstack.org/24/171524/1/check/gate-python-novaclient-pypy/0ad1be5/ : SUCCESS in 2m 38s\n- gate-tempest-dsvm-neutron-src-python-novaclient http://logs.openstack.org/24/171524/1/check/gate-tempest-dsvm-neutron-src-python-novaclient/1d15e2d/ : SUCCESS in 51m 12s\n- check-novaclient-dsvm-functional http://logs.openstack.org/24/171524/1/check/check-novaclient-dsvm-functional/0fc9ee2/ : SUCCESS in 18m 03s","accounts_in_message":[],"_revision_number":1},{"id":"f91eacb17c7d70835c1e45245c9f02d321883479","author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"date":"2015-04-08 16:52:42.000000000","message":"Patch Set 1:\n\nI don\u0027t know that I agree that this is a problem with the code.  I\u0027m tempted to say that it should be documented in some fashion that force-delete after soft-delete will require using the ID.  My reasoning is that excluding soft_delete in the list is done because the list may include a lot of soft-deleted instances, particularly given the all-tenants logic.\n\nI\u0027d be interested in hearing counterarguments…","accounts_in_message":[],"_revision_number":1},{"id":"c2fedbac1270b02a1380b715fcb1c9f1cb3dc891","author":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"date":"2015-04-09 07:33:24.000000000","message":"Patch Set 1:\n\nHi Kevin,\n\nThis issue is present for force-delete as well as soft-delete, when instance is in ‘soft_deleted’ state. This patch will only allow to include soft-deleted instances in list when delete or force-delete command is used, and won\u0027t include soft-deleted instances if nova list command is used.\n\nEven after documenting this point it is confusing that deleting an instance with instance name gives not found error while allows to delete the same instance with instance id.\n\nIMHO, it should either allow to delete soft-deleted instances by instance name and id, or to reject by both with not found error (but then force-delete can not be called on soft-deleted instances) to the user.\n\nPlease let me know your opinion.","accounts_in_message":[],"_revision_number":1},{"id":"ec9fd8d0798cf03f681991dfb3a84cd75dda5e44","author":{"_account_id":4690,"name":"melanie witt","display_name":"melwitt","email":"melwittt@gmail.com","username":"melwitt"},"date":"2015-04-21 00:45:45.000000000","message":"Patch Set 1: Code-Review-1\n\nThis can\u0027t go the way it is because a common config with policy.json is for all_tenants to be admin-only. Similarly I think listing deleted instances might be commonly configured as admin-only. At best these would have to be command line options.\n\nGiven that, I\u0027m not sure how helpful it would be to have the option for an admin to do something like:\n\n \u0027nova delete myserver --all-tenants --deleted\u0027\n\nbut I\u0027m open to the possibility if it would be helpful to users.","accounts_in_message":[],"_revision_number":1},{"id":"5bbb965d8b6bfb7357ebf964f340b8d98206db5e","author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"date":"2015-04-21 07:28:05.000000000","message":"Patch Set 1:\n\nFor soft_deleted instance, how about like this:\n\nnova delete --soft-deleted vm1","accounts_in_message":[],"_revision_number":1},{"id":"0cd6470357a24d32d9bfc3856d2bad5f33512368","author":{"_account_id":5754,"name":"Alex Xu","email":"hejie.xu@intel.com","username":"xuhj"},"date":"2015-04-21 07:31:00.000000000","message":"Patch Set 1:\n\nMore explain for the above comment. If user type wrong instance name and that name is soft-deleted instance, the soft-deleted instance will be removed, that sounds confuse for the user. Also there may have soft-delete instance have same name with live instance, So I think maybe we can add option --soft-delete if user want to delete soft-deleted instance.","accounts_in_message":[],"_revision_number":1},{"id":"1a6f2b354cbff38e4a0e8d0e6a6fa10b7d0cd245","author":{"_account_id":679,"name":"Kevin L. Mitchell","email":"klmitch@mit.edu","username":"klmitch"},"date":"2015-07-24 21:27:52.000000000","message":"Patch Set 1:\n\nAre you still working on this change?  If not, you should consider abandoning it…","accounts_in_message":[],"_revision_number":1},{"id":"020285342fd67eb48c81ecf38b47145671e639e1","author":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"date":"2015-07-27 05:45:47.000000000","message":"Abandoned","accounts_in_message":[],"_revision_number":1}],"current_revision_number":1,"current_revision":"8191e5728e3aa4350bcbee72829cf9da1ea3b36d","revisions":{"8191e5728e3aa4350bcbee72829cf9da1ea3b36d":{"kind":"REWORK","_number":1,"created":"2015-04-08 08:50:33.000000000","uploader":{"_account_id":10485,"name":"Ankit Agrawal","email":"ankitagrawal8188@gmail.com","username":"ankitagrawal"},"ref":"refs/changes/24/171524/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/python-novaclient","ref":"refs/changes/24/171524/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/24/171524/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/24/171524/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/python-novaclient refs/changes/24/171524/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/python-novaclient refs/changes/24/171524/1"}}},"commit":{"parents":[{"commit":"3681c186f784b0b64f871050a0dfdb3b1bed37b8","subject":"Merge \"Combine test cases for checking nova limits response\"","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/3681c186f784b0b64f871050a0dfdb3b1bed37b8"}]}],"author":{"name":"ankitagrawal","email":"ankit11.agrawal@nttdata.com","date":"2015-03-31 10:07:45.000000000","tz":-420},"committer":{"name":"ankitagrawal","email":"ankit11.agrawal@nttdata.com","date":"2015-04-08 08:34:43.000000000","tz":-420},"subject":"Inconsistent delete api for soft_deleted instances","message":"Inconsistent delete api for soft_deleted instances\n\nIf instance is in soft_deleted state then subsequent calls to delete\napi with instance name fails whereas the same succeeds if called\nusing instance id. This same issue also exists if user attempts to\ndelete server with instance name using force-delete command.\n\nThe main reason why delete and force-delete commands fails with instance\nname is because internally it calls list method which doesn\u0027t fetch\ninstances that are in soft_deleted state and it returns error message\n\"No server with a name or ID of \u0027\u003cinstance name\u003e\u0027 exists.\n\nAdded an extra filter argument \u0027soft_deleted\u0027 to fetch soft_deleted\ninstances to fix this issue.\n\nCloses-Bug: 1436849\nChange-Id: I4a8db6ffc8ecfdd0e69a7ea3e6eb28632a761664\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/8191e5728e3aa4350bcbee72829cf9da1ea3b36d"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/python-novaclient/commit/8191e5728e3aa4350bcbee72829cf9da1ea3b36d"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
