resource creation shouldn't retry in all cases of ResourceInError

Bug #1410083 reported by huangtianhua
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Heat
Triaged
Medium
huangtianhua

Bug Description

1. create a stack with a nova server, but the flavor is too small for the specified image
2. nova will raise the exception such as:
   "Build of instance a1b57836-9e5d-4faa-9ab7-06d0c959cb67 aborted: Flavor's disk is too small for requested image., Code: 500"
3. now heat will retry 5 times(default) to re-create a server
4. but there is no need to retry in this situation, IMO the retry conditions should be more specific.

Changed in heat:
assignee: nobody → huangtianhua (huangtianhua)
Angus Salkeld (asalkeld)
Changed in heat:
status: New → Triaged
importance: Undecided → Medium
Revision history for this message
Steven Hardy (shardy) wrote :

This is tricky - when the retry logic was added, some folks were arguing that even 500 can't be treated as a persistent error and that we should always retry, as internal errors might somehow be transient.

IMHO 500 should always be treated as a hard failure, as it's always the wrong response.

What are our options to fix this? IMO we don't want to start string matching the error description as that will probably end up fragile and hard to maintain.

Revision history for this message
huangtianhua (huangtianhua) wrote :

hi shardy:
   Thanks your comment.
   I'm afraid there is no other way to except string matching, due we can only get the error_code, reason from clients, right?

Revision history for this message
Steve Baker (steve-stevebaker) wrote :

Nova servers sometimes go into an ERROR state which is recoverable by retrying, but I don't know if each of these errors has a different code.

If they are all 500 then I guess we have no choice but to string match - which won't even work for localised messages :/

At least these errors should be fail-fast, so 5 retries shouldn't take that long.

Rico Lin (rico-lin)
Changed in heat:
milestone: none → no-priority-tag-bugs
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.