Uploaded image for project: 'OpenStack as Infra'
  1. OpenStack as Infra
  2. OSASINFRA-4116

GH-orc-667: Never retry on conflicts - Quota exceeded

XMLWordPrintable

    • Icon: Task Task
    • Resolution: Unresolved
    • Icon: Undefined Undefined
    • None
    • None
    • ORC
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • Not Selected

      Originally posted on Github: https://github.com/k-orc/openstack-resource-controller/issues/667

      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

              Unassigned Unassigned
              shiftstack OpenShift On OpenStack
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated: