commit b277ec154f2a175c4cab609b89fd8d3c7de4d0e9
Author: Matt Riedemann <email address hidden>
Date: Tue Oct 22 17:59:32 2019 -0400
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 df03499843aa7fd6089bd4d07b9d0eb5a8c14b47)
(cherry picked from commit 03a2508362ecf50463d0659142312a30d0fb91f3)
(cherry picked from commit 6038455e1dafeaf8ccfdd4be9e993beea3c9fb45)
(cherry picked from commit c84846dbf93588e5420b3565d163c0393443e6d6)
(cherry picked from commit 8c18293f93a0ef957010198ae3ef2f336364b97f)
Reviewed: https:/ /review. opendev. org/690735 /git.openstack. org/cgit/ openstack/ nova/commit/ ?id=b277ec154f2 a175c4cab609b89 fd8d3c7de4d0e9
Committed: https:/
Submitter: Zuul
Branch: stable/pike
commit b277ec154f2a175 c4cab609b89fd8d 3c7de4d0e9
Author: Matt Riedemann <email address hidden>
Date: Tue Oct 22 17:59:32 2019 -0400
Fix listing deleted servers with a marker
Change I1aa3ca6cc70cef 65d24dec1e7db94 91c9b73f7ab in Queens, t.get_by_ filters does not raise cleaned/ limit=0. The API code
which was backported through to Newton, introduced a regression
when listing deleted servers with a marker because it assumes
that if BuildRequestLis
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/
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 tList.get_ by_filters if we have a marker but are circuiting and returning early from the method based on
BuildReques
short-
limit or filters.
Change-Id: Ic2b19c2aa06b30 59ab0344b6ac56f fd62b3f755d 6089bd4d07b9d0e b5a8c14b47) 463d0659142312a 30d0fb91f3) 8ccfdd4be9e993b eea3c9fb45) 5420b3565d163c0 393443e6d6) 57010198ae3ef2f 336364b97f)
Closes-Bug: #1849409
(cherry picked from commit df03499843aa7fd
(cherry picked from commit 03a2508362ecf50
(cherry picked from commit 6038455e1dafeaf
(cherry picked from commit c84846dbf93588e
(cherry picked from commit 8c18293f93a0ef9