Skip to content

Never retry on conflicts - Quota exceeded #667

@ezeriver94

Description

@ezeriver94

Problem description

When creating an Openstack resource, one of the potential errors we can get is "Quota exceeded", which is returned alongisde 409 HTTP code. Based on the behavior of all controllers, when 409 is returned we treat it as terminal, thus never reconciling again until the generation changes

	// We should require the spec to be updated before retrying a create which returned a conflict
	if orcerrors.IsConflict(err) {
		err = orcerrors.Terminal(orcv1alpha1.ConditionReasonInvalidConfiguration, "invalid configuration creating resource: "+err.Error(), err)
	}

Quota errors are not solved by changing something in the resource spec, so I believe ORC should retry on this specific error type; perhaps only checking for IsConflict is not enough and ORC should be more thorough when deciding what to do based on OS errors.

ORC version

v2.3.0

Additional information

No response

Relevant log output

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions