Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-55685

Downgrade of an operator by reinstalling to an older version doesn't work

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Not a Bug
    • Icon: Normal Normal
    • None
    • 4.16
    • OLM
    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • Critical
    • None
    • None
    • None
    • None
    • Jigglypuff OLM Sprint 270
    • 1
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      Downgrade of an operator by reinstalling to an older version doesn't work, even after completely removing the previously installed higher version of the same operator.

      • ElasticSearch ECK (Certified) operator was stuck in pending and replacing state for new version 3.0.0.
      • It triggered update as both OpenShift Pipelines and ElasticSearch ECK is installed in openshift-operators project so when we approved InstallPlan for OpenShift Pipelines it first triggered ElasticSearch ECK upgrade and it was stuck it didn't proceed upgrade of OpenShift Pipelines.
      • The customer want to keep only the 2.16.1 version of the ElasticSearch ECK (Certified) operator i.e. they do not want to update it. Therefore we tried removing CSV of 3.0.0 and updated StartingCSV as 2.16.1 but it didn't help.
      • The operator is as of now stuck with below errors.

      ~~~
      group: ""
      kind: ServiceAccount
      message: Service account does not exist
      name: elastic-operator
      status: NotPresent
      version: v1

      -----------

      conditions:

      • lastTransitionTime: "2025-05-02T13:52:21Z"
        lastUpdateTime: "2025-05-02T13:52:21Z"
        message: 'error validating existing CRs against new CRD''s schema for "elasticsearches.elasticsearch.k8s.elastic.co":
        error validating elasticsearch.k8s.elastic.co/v1beta1, Kind=Elasticsearch "b2b-eck-nft/b2b-eck-nft":
        updated validation is too restrictive: [].spec.nodeSets[3].count: Invalid value:
        0: spec.nodeSets[3].count in body should be greater than or equal to 1'
        reason: InstallComponentFailed
        status: "False"
        type: Installed
        message: 'error validating existing CRs against new CRD''s schema for "elasticsearches.elasticsearch.k8s.elastic.co":
        error validating elasticsearch.k8s.elastic.co/v1beta1, Kind=Elasticsearch "b2b-eck-nft/b2b-eck-nft":
        updated validation is too restrictive: [].spec.nodeSets[3].count: Invalid value:
        0: spec.nodeSets[3].count in body should be greater than or equal to 1'
        ~~~
      • Not sure if installing the said operator in a different namespace can help [1]

      [1] https://access.redhat.com/solutions/6389681

      Version-Release number of selected component (if applicable):

      OLM

      Actual results:

      Trying to move back to the old/existing version of the operators runs into errors.

      Expected results:

      The operator should be installed successfully as all the Subs, CSVs are deleted.

      Additional info:

              rh-ee-cmacedo Camila Macedo
              rhn-support-akesarka Amit Kesarkar
              None
              None
              Xia Zhao Xia Zhao
              None
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: