← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1689692] Re: marker not found

 

Here is the problem:

All of your instances are in ERROR state so they are in cell0 and we'll
pull them from cell0 here:

https://github.com/openstack/nova/blob/15.0.3/nova/compute/api.py#L2466

We got 2 back from cell0 but limit was 3, so we make limit=1 here:

https://github.com/openstack/nova/blob/15.0.3/nova/compute/api.py#L2474

Since we still have more in the limit, we check the cells:

https://github.com/openstack/nova/blob/15.0.3/nova/compute/api.py#L2481

The marker was in cell0 so we're not going to find the marker in the
main cell (cell1) so we're not going to find any instances in other
cells and eventually raise the 404 here:

https://github.com/openstack/nova/blob/15.0.3/nova/compute/api.py#L2596

We should set the marker to None when we pulled instances out of the
cell0 database so we don't attempt to use a marker in the other cells.

** Changed in: nova
       Status: New => Triaged

** Summary changed:

- marker not found
+ MarkerNotFound when limit>num(instances) and marker starts in cell0

** Changed in: nova
   Importance: Undecided => High

** Also affects: nova/ocata
   Importance: Undecided
       Status: New

** Changed in: nova
     Assignee: (unassigned) => Matt Riedemann (mriedem)

** Changed in: nova/ocata
       Status: New => Confirmed

** Changed in: nova/ocata
   Importance: Undecided => High

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1689692

Title:
  MarkerNotFound when limit>num(instances) and marker starts in cell0

Status in OpenStack Compute (nova):
  Triaged
Status in OpenStack Compute (nova) ocata series:
  Confirmed

Bug description:
  In my Ocata/RDO enviroment, nova version is 15.0.3, if I list
  instances with a marker&limit, sometimes it says "maker not found".

  More details of my operation steps:

  First, all instances are listed here without limit&marker:

  [root@host015 astute(keystone_admin)]# nova list --sort created_at:desc
  +--------------------------------------+------+--------+------------+-------------+----------+
  | ID                                   | Name | Status | Task State | Power State | Networks |
  +--------------------------------------+------+--------+------------+-------------+----------+
  | 0e02233c-6c73-4bbe-bede-299ba41f44c3 | 11   | ERROR  | -          | NOSTATE     |          |
  | f6347ddb-e870-447f-8f14-3e3b57a610f2 | 11   | ERROR  | -          | NOSTATE     |          |
  | 5de9524f-1167-4ccb-b13c-13acf5435ead | 11   | ERROR  | -          | NOSTATE     |          |
  | 0548ebed-f0e4-4233-acf3-0339c4802f0d | 11   | ERROR  | -          | NOSTATE     |          |
  | 2c9ee616-eab9-4a4a-af3c-79f858c571d5 | 11   | ERROR  | -          | NOSTATE     |          |
  | 9aab5d6a-f5bd-459b-bb25-c04bc56efcf0 | 11   | ERROR  | -          | NOSTATE     |          |
  | f9ca1f1c-01f3-41a5-a68b-63f01fd87081 | 11   | ERROR  | -          | NOSTATE     |          |
  | dbb3955a-c768-4883-aae4-f3143f7b3a51 | 11   | ERROR  | -          | NOSTATE     |          |
  | a587dc5c-54c8-432b-9e38-174aae5e848c | 11   | ERROR  | -          | NOSTATE     |          |
  | 609ba5ca-bc49-4de5-be7a-16aab8fcb6d2 | 11   | ERROR  | -          | NOSTATE     |          |
  | b42e32e5-2aaa-46ee-b0bf-b08f29867af1 | 11   | ERROR  | -          | NOSTATE     |          |
  +--------------------------------------+------+--------+------------+-------------+----------+

  
  Then, I try to list with the first instance id as marker, limited to 3, it's OK: 

  [root@host015 astute(keystone_admin)]# nova list --sort created_at:desc --limit 3 --marker 0e02233c-6c73-4bbe-bede-299ba41f44c3
  +--------------------------------------+------+--------+------------+-------------+----------+
  | ID                                   | Name | Status | Task State | Power State | Networks |
  +--------------------------------------+------+--------+------------+-------------+----------+
  | f6347ddb-e870-447f-8f14-3e3b57a610f2 | 11   | ERROR  | -          | NOSTATE     |          |
  | 5de9524f-1167-4ccb-b13c-13acf5435ead | 11   | ERROR  | -          | NOSTATE     |          |
  | 0548ebed-f0e4-4233-acf3-0339c4802f0d | 11   | ERROR  | -          | NOSTATE     |          |
  +--------------------------------------+------+--------+------------+-------------+----------+

  
  Then, I try to list with another instance, limited to 3, it's error: 

  [root@host015 astute(keystone_admin)]# nova list --sort created_at:desc --limit 3 --marker a587dc5c-54c8-432b-9e38-174aae5e848c
  ERROR (BadRequest): marker [a587dc5c-54c8-432b-9e38-174aae5e848c] not found (HTTP 400) (Request-ID: req-308371f4-2962-4f3f-8d4c-69bf8c19664f)

  
  That's because no enough instance of limitation after the marker?
  When I set limitation to 2, it's OK:

  [root@host015 astute(keystone_admin)]# nova list --sort created_at:desc --limit 2 --marker a587dc5c-54c8-432b-9e38-174aae5e848c
  +--------------------------------------+------+--------+------------+-------------+----------+
  | ID                                   | Name | Status | Task State | Power State | Networks |
  +--------------------------------------+------+--------+------------+-------------+----------+
  | 609ba5ca-bc49-4de5-be7a-16aab8fcb6d2 | 11   | ERROR  | -          | NOSTATE     |          |
  | b42e32e5-2aaa-46ee-b0bf-b08f29867af1 | 11   | ERROR  | -          | NOSTATE     |          |
  +--------------------------------------+------+--------+------------+-------------+----------+

  My question: Why does not limitation work when no enough instance ?

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1689692/+subscriptions


References