nova/nova
Matt Riedemann 6038455e1d Fix listing deleted servers with a marker
Change I1aa3ca6cc70cef65d24dec1e7db9491c9b73f7ab in Queens,
which was backported through to Newton, introduced a regression
when listing deleted servers with a marker because it assumes
that if BuildRequestList.get_by_filters does not raise
MarkerNotFound that the marker was found among the build requests
and does not account for that get_by_filters method short-circuiting
if filtering servers with deleted/cleaned/limit=0. The API code
then nulls out the marker which means you'll continue to get the
marker instance back in the results even though you shouldn't,
and that can cause an infinite loop in some client-side tooling like
nova's CLI:

  nova list --deleted --limit -1

This fixes the bug by raising MarkerNotFound from
BuildRequestList.get_by_filters if we have a marker but are
short-circuiting and returning early from the method based on
limit or filters.

Change-Id: Ic2b19c2aa06b3059ab0344b6ac56ffd62b3f755d
Closes-Bug: #1849409
(cherry picked from commit df03499843)
(cherry picked from commit 03a2508362)
2019-10-23 15:03:13 -04:00
..
api Retrun 400 if invalid query parameters are specified 2019-08-13 08:35:15 +09:00
cells Per aggregate scheduling weight 2019-01-21 11:48:44 +08:00
cmd Cache host to cell mapping in HostManager 2019-08-13 13:38:14 -04:00
common
compute Merge "Error out interrupted builds" into stable/stein 2019-10-23 12:52:37 +00:00
conductor Handle get_host_availability_zone error during reschedule 2019-10-02 15:43:40 -04:00
conf Add useful error log when _determine_version_cap raises DBNotAllowed 2019-08-12 15:11:30 -04:00
console Move create of ComputeAPI object in websocketproxy 2019-04-02 15:43:18 +00:00
consoleauth Fix stacktraces with redis caching backend 2018-09-27 13:15:11 -04:00
db Restore soft-deleted compute node with same uuid 2019-08-15 12:03:31 -04:00
hacking Add a hacking rule for deprecated assertion methods 2018-10-25 11:49:10 +09:00
image Share snapshot image membership with instance owner 2019-02-08 18:06:27 -05:00
ipv6
keymgr
locale Imported Translations from Zanata 2018-09-23 06:53:32 +00:00
network Find instance in another cell during floating IP re-association 2019-09-13 18:20:00 -04:00
notifications Remove CellMappingPayload database_connection and transport_url fields 2019-04-04 21:25:52 +00:00
objects Fix listing deleted servers with a marker 2019-10-23 15:03:13 -04:00
pci Add get_instance_pci_request_from_vif 2019-03-07 11:37:53 +02:00
policies Merge "Remove deprecated 'flavors' policy" 2019-02-23 06:13:00 +00:00
privsep Merge "Move slight bonkers IP management to privsep." 2019-03-20 13:21:29 +00:00
scheduler Cache host to cell mapping in HostManager 2019-08-13 13:38:14 -04:00
servicegroup Fix deprecation warning for threadgroup.add_timer 2019-02-07 09:37:00 -05:00
tests Fix listing deleted servers with a marker 2019-10-23 15:03:13 -04:00
virt Stop sending bad values from libosinfo to libvirt 2019-10-11 08:32:12 +00:00
vnc Deprecate the nova-xvpvncproxy service 2018-10-15 10:03:13 +01:00
volume Fix exception translation when creating volume 2019-10-11 17:17:57 +08:00
__init__.py Eventlet monkey patching should be as early as possible 2019-03-25 09:22:01 +01:00
availability_zones.py AZ list performance optimization: avoid double service list DB fetch 2019-04-29 19:05:05 +00:00
baserpc.py
block_device.py Add method to generate device names universally 2019-01-15 18:55:11 +00:00
cache_utils.py
config.py Configure placement DB context manager for nova-manage/status 2018-09-05 10:29:48 -04:00
context.py Fix target used in nova.policy.check_is_admin 2019-05-21 10:55:14 +01:00
crypto.py Convert certificate generation to processutils. 2018-05-02 19:18:41 +10:00
debugger.py
exception.py Handle Invalid exceptions as expected in attach_interface 2019-07-23 22:49:49 +00:00
exception_wrapper.py Add full traceback to ExceptionPayload in versioned notifications 2018-06-19 16:46:46 +08:00
filters.py
hooks.py
i18n.py
loadables.py
manager.py
monkey_patch.py Eventlet monkey patching should be as early as possible 2019-03-25 09:22:01 +01:00
policy.py Fix target used in nova.policy.check_is_admin 2019-05-21 10:55:14 +01:00
profiler.py
quota.py Merge "quota: remove defaults kwarg in get_project_quotas" 2019-02-26 13:26:24 +00:00
rc_fields.py Switch to using os-resource-classes 2019-02-07 11:11:09 +00:00
rpc.py Fix jsonutils.to_primitive UserWarning 2018-12-17 22:56:50 -05:00
safe_utils.py
service.py Move conductor wait_until_ready() delay before manager init 2018-08-31 12:50:10 -07:00
service_auth.py
test.py Make nova.compute.rpcapi.ComputeAPI.router a singleton 2019-09-24 13:18:17 -04:00
utils.py Eventlet monkey patching should be as early as possible 2019-03-25 09:22:01 +01:00
version.py
weights.py Per aggregate scheduling weight 2019-01-21 11:48:44 +08:00
wsgi.py