Bug 2014034 - storagesystem is in progressing state due to conflicting Subscription found for package 'ocs-operator'
Summary: storagesystem is in progressing state due to conflicting Subscription found f...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat OpenShift Data Foundation
Classification: Red Hat Storage
Component: odf-operator
Version: 4.9
Hardware: Unspecified
OS: Unspecified
unspecified
urgent
Target Milestone: ---
: ODF 4.9.0
Assignee: Nitin Goyal
QA Contact: Shay Rozen
URL:
Whiteboard:
: 2015815 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-10-14 10:40 UTC by Vijay Avuthu
Modified: 2023-08-09 17:00 UTC (History)
12 users (show)

Fixed In Version: v4.9.0-210.ci
Doc Type: No Doc Update
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-01-07 17:46:31 UTC
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Github red-hat-storage odf-operator pull 130 0 None open Re-resolve Subscription dependency issues (again) 2021-10-28 05:52:45 UTC
Github red-hat-storage odf-operator pull 134 0 None open Bug 2014034:[release-4.9] Re-resolve Subscription dependency issues (again) 2021-10-28 08:35:24 UTC

Description Vijay Avuthu 2021-10-14 10:40:57 UTC
Description of problem (please be detailed as possible and provide log
snippests):

storagesystem is not in expected state due to conflicting Subscription found for package 'ocs-operator'

Version of all relevant components (if applicable):

openshift installer (4.9.0-0.nightly-2021-10-13-170616)
ocs-registry:4.9.0-189.ci

Does this issue impact your ability to continue to work with the product
(please explain in detail what is the user impact)?


Is there any workaround available to the best of your knowledge?
No

Rate from 1 - 5 the complexity of the scenario you performed that caused this
bug (1 - very simple, 5 - very complex)?
1

Can this issue reproducible?
2/2

Can this issue reproduce from the UI?
Not tried

If this is a regression, please provide more details to justify this:


Steps to Reproduce:
1. Install OD using ocs-ci with PR https://github.com/red-hat-storage/ocs-ci/pull/4952 ( only change is name of storagesystem )
2. check the storagesystem status



Actual results:

storagesystem is in progressing condition true


Expected results:

storagesystem should be in progressing condition False


Additional info:

> Storagesystem state:

$ oc describe storagesystem ocs-storagecluster-storagesystem
Name:         ocs-storagecluster-storagesystem
Namespace:    openshift-storage
Labels:       <none>
Annotations:  <none>
API Version:  odf.openshift.io/v1alpha1
Kind:         StorageSystem
Metadata:
  Creation Timestamp:  2021-10-14T06:50:02Z
  Finalizers:
    storagesystem.odf.openshift.io
  Generation:  1
  Managed Fields:
    API Version:  odf.openshift.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:kubectl.kubernetes.io/last-applied-configuration:
      f:spec:
        .:
        f:kind:
        f:name:
        f:namespace:
    Manager:      kubectl-client-side-apply
    Operation:    Update
    Time:         2021-10-14T06:50:02Z
    API Version:  odf.openshift.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:finalizers:
          .:
          v:"storagesystem.odf.openshift.io":
    Manager:      manager
    Operation:    Update
    Time:         2021-10-14T06:50:02Z
    API Version:  odf.openshift.io/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:status:
        .:
        f:conditions:
        f:relatedObjects:
    Manager:         manager
    Operation:       Update
    Subresource:     status
    Time:            2021-10-14T06:50:02Z
  Resource Version:  50439
  UID:               42b479e2-09d1-4c18-ad34-bfa84162ab4e
Spec:
  Kind:       storagecluster.ocs.openshift.io/v1
  Name:       ocs-storagecluster
  Namespace:  openshift-storage
Status:
  Conditions:
    Last Heartbeat Time:   2021-10-14T07:00:59Z
    Last Transition Time:  2021-10-14T06:50:02Z
    Message:               Reconcile is in progress
    Reason:                Reconciling
    Status:                False
    Type:                  Available
    Last Heartbeat Time:   2021-10-14T07:00:59Z
    Last Transition Time:  2021-10-14T06:50:02Z
    Message:               Reconcile is in progress
    Reason:                Reconciling
    Status:                True
    Type:                  Progressing
    Last Heartbeat Time:   2021-10-14T07:00:59Z
    Last Transition Time:  2021-10-14T06:50:02Z
    Message:               StorageSystem CR is valid
    Reason:                Valid
    Status:                False
    Type:                  StorageSystemInvalid
    Last Heartbeat Time:   2021-10-14T06:50:02Z
    Last Transition Time:  2021-10-14T06:50:02Z
    Message:               Initializing StorageSystem
    Reason:                Init
    Status:                Unknown
    Type:                  VendorCsvReady
    Last Heartbeat Time:   2021-10-14T06:50:02Z
    Last Transition Time:  2021-10-14T06:50:02Z
    Message:               Initializing StorageSystem
    Reason:                Init
    Status:                Unknown
    Type:                  VendorSystemPresent
  Related Objects:
    API Version:  operators.coreos.com/v1alpha1
    Kind:         Subscription
    Name:         noobaa-operator
    Namespace:    openshift-storage
Events:
  Type     Reason           Age                  From                      Message
  ----     ------           ----                 ----                      -------
  Warning  ReconcileFailed  143m (x7 over 149m)  StorageSystem controller  found conflicting Subscription found for package 'ocs-operator': ocs-operator-stable-4.9-redhat-operators-openshift-marketplace
  Warning  ReconcileFailed  138m (x7 over 149m)  StorageSystem controller  multiple Subscriptions found for package 'ocs-operator': [ocs-operator ocs-operator-stable-4.9-redhat-operators-openshift-marketplace]
$ 

> subscriptions

$ oc get subscriptions
NAME                                                             PACKAGE           SOURCE             CHANNEL
noobaa-operator                                                  noobaa-operator   redhat-operators   stable-4.9
ocs-operator                                                     ocs-operator      redhat-operators   stable-4.9
ocs-operator-stable-4.9-redhat-operators-openshift-marketplace   ocs-operator      redhat-operators   stable-4.9
odf-operator                                                     odf-operator      redhat-operators   stable-4.9

> not sure how it ocs-operator-stable-4.9-redhat-operators-openshift-marketplace  was added

> Job: https://ocs4-jenkins-csb-ocsqe.apps.ocp4.prod.psi.redhat.com/job/qe-deploy-ocs-cluster/6706/

must gather: http://magna002.ceph.redhat.com/ocsci-jenkins/openshift-clusters/jnk-pr4952-b1654/jnk-pr4952-b1654_20211014T061314/logs/failed_testcase_ocs_logs_1634192779/test_deployment_ocs_logs/

Comment 3 Nitin Goyal 2021-10-14 12:27:56 UTC
Hi Vijay, 

It is working as expected somehow I see you have 2 ocs-operator subscriptions, So the first thing which requires inspection is how does this extra subscription gets created.

Comment 4 Vijay Avuthu 2021-10-14 13:16:56 UTC
(In reply to Nitin Goyal from comment #3)
> Hi Vijay, 
> 
> It is working as expected somehow I see you have 2 ocs-operator
> subscriptions, So the first thing which requires inspection is how does this
> extra subscription gets created.

ocs-ci is not created any subscriptions. Only subscription ocs-ci created is for odf-operator and below is the yaml content

2021-10-14 12:18:10  06:48:09 - MainThread - ocs_ci.utility.templating - INFO - apiVersion: operators.coreos.com/v1alpha1
2021-10-14 12:18:10  kind: Subscription
2021-10-14 12:18:10  metadata:
2021-10-14 12:18:10    name: odf-operator
2021-10-14 12:18:10    namespace: openshift-storage
2021-10-14 12:18:10  spec:
2021-10-14 12:18:10    channel: stable-4.9
2021-10-14 12:18:10    name: odf-operator
2021-10-14 12:18:10    source: redhat-operators
2021-10-14 12:18:10    sourceNamespace: openshift-marketplace
2021-10-14 12:18:10  
2021-10-14 12:18:10  06:48:09 - MainThread - ocs_ci.utility.utils - INFO - Executing command: oc create -f /tmp/subscription_manifestanci5gu2

Comment 5 Nitin Goyal 2021-10-15 07:04:09 UTC
I am not an OLM expert, But I can try to check logs that why this extra subscription gets created or maybe ask for help from OLM dev. Can we have OLM-operator logs from the same setup.

Comment 6 Mudit Agarwal 2021-10-17 14:45:30 UTC
NI for the required logs.

Comment 8 Jose A. Rivera 2021-10-18 14:30:04 UTC
Where did ocs-operator-stable-4.9-redhat-operators-openshift-marketplace even come from? Who's creating this?

Comment 9 Jose A. Rivera 2021-10-18 15:01:35 UTC
Well... I think I found it: http://magna002.ceph.redhat.com/ocsci-jenkins/openshift-clusters/jnk-pr4952-b1654/jnk-pr4952-b1654_20211014T061314/logs/failed_testcase_ocs_logs_1634192779/test_deployment_ocs_logs/ocs_must_gather/quay-io-rhceph-dev-ocs-must-gather-sha256-95bdf1bd9828434fa1414a98d8a2364579281648cec6507a428c5c823628faa8/namespaces/openshift-storage/operators.coreos.com/installplans/install-wkmsb.yaml

This InstallPlan was created for dependency resolution of the noobaa-operator Subscription... which means that even though odf-operator is trying to create the NooBaa and OCS Subscriptions simultaneously, somehow OLM did not pick up the OCS Subscription when it was doing dependency resolution for the NooBaa Subscription... cool cool cool.

I think for now the easiest resolution is to just remove ocs-operator's requirement of the NooBaa CRD. PR will be up shortly.

Comment 10 Jose A. Rivera 2021-10-18 15:17:25 UTC
Upstream PR is up: https://github.com/red-hat-storage/ocs-operator/pull/1377

Comment 13 Nitin Goyal 2021-10-20 08:47:39 UTC
*** Bug 2015815 has been marked as a duplicate of this bug. ***

Comment 14 Nitin Goyal 2021-10-28 05:52:09 UTC
Moving it back to odf as we are introducing deps back in the odf itself.

Comment 15 Sridhar Venkat (IBM) 2021-10-28 19:54:26 UTC
We were able to deploy the latest ODF 4.9 build on ppc64le successfully.

[root@nx124-49-e3a8-syd04-bastion-0 ~]# oc get csv -A
NAMESPACE                              NAME                                        DISPLAY                       VERSION              REPLACES   PHASE
openshift-local-storage                local-storage-operator.4.9.0-202110182323   Local Storage                 4.9.0-202110182323              Succeeded
openshift-operator-lifecycle-manager   packageserver                               Package Server                0.18.3                          Succeeded
openshift-storage                      noobaa-operator.v4.9.0                      NooBaa Operator               4.9.0                           Succeeded
openshift-storage                      ocs-operator.v4.9.0                         OpenShift Container Storage   4.9.0                           Succeeded
openshift-storage                      odf-operator.v4.9.0                         OpenShift Data Foundation     4.9.0                           Succeeded
[root@nx124-49-e3a8-syd04-bastion-0 ~]#

Comment 16 Shay Rozen 2021-11-01 10:20:54 UTC
Check on 4.9.0-214ci
StorageSystem progressing status is false and there is only one subscription for OCS. Moving to verified.
$ oc get storagesystems.odf.openshift.io ocs-storagecluster-storagesystem -o yaml
apiVersion: odf.openshift.io/v1alpha1
kind: StorageSystem
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"odf.openshift.io/v1alpha1","kind":"StorageSystem","metadata":{"annotations":{},"name":"ocs-storagecluster-storagesystem","namespace":"openshift-storage"},"spec":{"kind":"storagecluster.ocs.openshift.io/v1","name":"ocs-storagecluster","namespace":"openshift-storage"}}
  creationTimestamp: "2021-11-01T10:00:58Z"
  finalizers:
  - storagesystem.odf.openshift.io
  generation: 1
  managedFields:
  - apiVersion: odf.openshift.io/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .: {}
          f:kubectl.kubernetes.io/last-applied-configuration: {}
      f:spec:
        .: {}
        f:kind: {}
        f:name: {}
        f:namespace: {}
    manager: kubectl-client-side-apply
    operation: Update
    time: "2021-11-01T10:00:58Z"
  - apiVersion: odf.openshift.io/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:metadata:
        f:finalizers:
          .: {}
          v:"storagesystem.odf.openshift.io": {}
    manager: manager
    operation: Update
    time: "2021-11-01T10:00:58Z"
  - apiVersion: odf.openshift.io/v1alpha1
    fieldsType: FieldsV1
    fieldsV1:
      f:status:
        .: {}
        f:conditions: {}
    manager: manager
    operation: Update
    subresource: status
    time: "2021-11-01T10:00:59Z"
  name: ocs-storagecluster-storagesystem
  namespace: openshift-storage
  resourceVersion: "28386"
  uid: 40e7091e-5e35-4c96-bedf-16f066de765a
spec:
  kind: storagecluster.ocs.openshift.io/v1
  name: ocs-storagecluster
  namespace: openshift-storage
status:
  conditions:
  - lastHeartbeatTime: "2021-11-01T10:01:19Z"
    lastTransitionTime: "2021-11-01T10:01:19Z"
    message: Reconcile is completed successfully
    reason: ReconcileCompleted
    status: "True"
    type: Available
  - lastHeartbeatTime: "2021-11-01T10:01:19Z"
    lastTransitionTime: "2021-11-01T10:01:19Z"
    message: Reconcile is completed successfully
    reason: ReconcileCompleted
    status: "False"
    type: Progressing
  - lastHeartbeatTime: "2021-11-01T10:01:19Z"
    lastTransitionTime: "2021-11-01T10:00:58Z"
    message: StorageSystem CR is valid
    reason: Valid
    status: "False"
    type: StorageSystemInvalid
  - lastHeartbeatTime: "2021-11-01T10:01:19Z"
    lastTransitionTime: "2021-11-01T10:00:59Z"
    reason: Ready
    status: "True"
    type: VendorCsvReady
  - lastHeartbeatTime: "2021-11-01T10:01:19Z"
    lastTransitionTime: "2021-11-01T10:01:19Z"
    reason: Found
    status: "True"
    type: VendorSystemPresent
$ oc get subscriptions
NAME                                                                PACKAGE           SOURCE             CHANNEL
noobaa-operator-stable-4.9-redhat-operators-openshift-marketplace   noobaa-operator   redhat-operators   stable-4.9
ocs-operator-stable-4.9-redhat-operators-openshift-marketplace      ocs-operator      redhat-operators   stable-4.9
odf-operator                                                        odf-operator      redhat-operators   stable-4.9

Comment 17 Petr Balogh 2021-12-20 14:20:50 UTC
In first job it failed on the same issue even without any I/O in the background and without any pre/post upgrade tests:
http://magna002.ceph.redhat.com/ocsci-jenkins/openshift-clusters/j-001vu1cs33-uaa/j-001vu1cs33-uaa_20211220T124851/logs/failed_testcase_ocs_logs_1640007290/test_upgrade_ocs_logs/

The second job were waiting in queue for resource which will be scheduled soon.
So I will update if we see the same in 4.9.0 upgrade or not.


Note You need to log in before you can comment on or make changes to this bug.