Inconsistent behavior for the marker option for instances and build requests

Bug #1808286 reported by Andrey Volkov on 2018-12-13
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Low
Andrey Volkov
Ocata
Low
Matt Riedemann
Pike
Low
Matt Riedemann
Queens
Low
Andrey Volkov
Rocky
Low
Andrey Volkov

Bug Description

When --marker is used for instances it skips instance with marker http://ix.io/1vU9.

For build request instances --marker option includes instance with
marker http://ix.io/1vUa.

It's hard to catch moment with build request available and I used the
following sql to emulate build request presence http://ix.io/1vUb

Tags: api Edit Tag help
Andrey Volkov (avolkov) on 2018-12-13
Changed in nova:
importance: Undecided → Low

Fix proposed to branch: master
Review: https://review.openstack.org/624870

Changed in nova:
assignee: nobody → Andrey Volkov (avolkov)
status: New → In Progress
tags: added: api
Changed in nova:
assignee: Andrey Volkov (avolkov) → Matt Riedemann (mriedem)
Matt Riedemann (mriedem) on 2018-12-19
Changed in nova:
assignee: Matt Riedemann (mriedem) → Andrey Volkov (avolkov)

Reviewed: https://review.openstack.org/624870
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=2ef704cba619a149336692311c2614742aa32909
Submitter: Zuul
Branch: master

commit 2ef704cba619a149336692311c2614742aa32909
Author: Andrey Volkov <email address hidden>
Date: Wed Dec 12 09:11:17 2018 +0300

    Exclude build request marker from server listing

    When listing "real" (already in cell) instances e.g. from
    nova_cell1.instances table, a marker option means "start after the
    instance with marker".

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns vm2 only.

    But for VMs from nova_api.build_requests table it's different.

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns both vm1 and vm2.

    This patch excludes instance with marker from listing for
    instances from build_requests table.

    Closes-Bug: #1808286
    Change-Id: I5165b69f956fbf1904112a742698b2739f747e72

Changed in nova:
status: In Progress → Fix Released

Reviewed: https://review.openstack.org/626584
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=3eb0ba988f4cfca4399c92cd6bb7b4ae8665720c
Submitter: Zuul
Branch: stable/rocky

commit 3eb0ba988f4cfca4399c92cd6bb7b4ae8665720c
Author: Andrey Volkov <email address hidden>
Date: Wed Dec 12 09:11:17 2018 +0300

    Exclude build request marker from server listing

    When listing "real" (already in cell) instances e.g. from
    nova_cell1.instances table, a marker option means "start after the
    instance with marker".

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns vm2 only.

    But for VMs from nova_api.build_requests table it's different.

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns both vm1 and vm2.

    This patch excludes instance with marker from listing for
    instances from build_requests table.

    Closes-Bug: #1808286
    Change-Id: I5165b69f956fbf1904112a742698b2739f747e72
    (cherry picked from commit 2ef704cba619a149336692311c2614742aa32909)

Reviewed: https://review.openstack.org/626585
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=8aadd4ebdfea3f1b46b2e2e62b355e8b40b6261b
Submitter: Zuul
Branch: stable/queens

commit 8aadd4ebdfea3f1b46b2e2e62b355e8b40b6261b
Author: Andrey Volkov <email address hidden>
Date: Wed Dec 12 09:11:17 2018 +0300

    Exclude build request marker from server listing

    When listing "real" (already in cell) instances e.g. from
    nova_cell1.instances table, a marker option means "start after the
    instance with marker".

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns vm2 only.

    But for VMs from nova_api.build_requests table it's different.

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns both vm1 and vm2.

    This patch excludes instance with marker from listing for
    instances from build_requests table.

    Closes-Bug: #1808286
    Change-Id: I5165b69f956fbf1904112a742698b2739f747e72
    (cherry picked from commit 2ef704cba619a149336692311c2614742aa32909)
    (cherry picked from commit 3eb0ba988f4cfca4399c92cd6bb7b4ae8665720c)

This issue was fixed in the openstack/nova 19.0.0.0rc1 release candidate.

This issue was fixed in the openstack/nova 17.0.10 release.

This issue was fixed in the openstack/nova 18.2.0 release.

Reviewed: https://review.openstack.org/628954
Committed: https://git.openstack.org/cgit/openstack/nova/commit/?id=3d3a263789c5cc49899d63d18f9233c981f5b894
Submitter: Zuul
Branch: stable/pike

commit 3d3a263789c5cc49899d63d18f9233c981f5b894
Author: Andrey Volkov <email address hidden>
Date: Wed Dec 12 09:11:17 2018 +0300

    Exclude build request marker from server listing

    When listing "real" (already in cell) instances e.g. from
    nova_cell1.instances table, a marker option means "start after the
    instance with marker".

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns vm2 only.

    But for VMs from nova_api.build_requests table it's different.

    For VMs:

    | uuid | name |
    | 1 | vm1 |
    | 2 | vm2 |

    "openstack server list --marker 1" returns both vm1 and vm2.

    This patch excludes instance with marker from listing for
    instances from build_requests table.

    Closes-Bug: #1808286
    Change-Id: I5165b69f956fbf1904112a742698b2739f747e72
    (cherry picked from commit 2ef704cba619a149336692311c2614742aa32909)
    (cherry picked from commit 3eb0ba988f4cfca4399c92cd6bb7b4ae8665720c)
    (cherry picked from commit 8aadd4ebdfea3f1b46b2e2e62b355e8b40b6261b)

This issue was fixed in the openstack/nova 16.1.8 release.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers