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

periodic gathering can panic when updating the DataGather conditions

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • None
    • 4.19
    • Insights Operator
    • None
    • CCXDEV Sprint 130
    • 1
    • False
    • Hide

      None

      Show
      None
    • N/A
    • Release Note Not Required
    • In Progress

      It manifests as:

          panic: runtime error: index out of range [0] with length 0
      
      goroutine 1 [running]:
      github.com/openshift/insights-operator/pkg/controller/status.UpdateDataGatherConditions({0x32d7a70, 0xc0004d2770}, {0x32b1c18, 0xc000a8d230}, 0xc00140f448, 0xc01a45f068)
      	/go/src/github.com/openshift/insights-operator/pkg/controller/status/datagather_status.go:133 +0x2e7
      github.com/openshift/insights-operator/pkg/controller.(*GatherJob).GatherAndUpload(0xc00077b180, 0xc00088c488, 0xc00088c6c8)
      	/go/src/github.com/openshift/insights-operator/pkg/controller/gather_commands.go:212 +0xb31
      github.com/openshift/insights-operator/pkg/cmd/start.NewGatherAndUpload.runGatherAndUpload.func1(0xc000838f08, {0x2dc3ca4?, 0x4?, 0x2dc3ca8?})
      	/go/src/github.com/openshift/insights-operator/pkg/cmd/start/start.go:291 +0x5c6
      github.com/spf13/cobra.(*Command).execute(0xc000838f08, {0xc000785620, 0x2, 0x2})
      	/go/src/github.com/openshift/insights-operator/vendor/github.com/spf13/cobra/command.go:944 +0x867
      github.com/spf13/cobra.(*Command).ExecuteC(0xc000671b08)
      	/go/src/github.com/openshift/insights-operator/vendor/github.com/spf13/cobra/command.go:1068 +0x3a5
      github.com/spf13/cobra.(*Command).Execute(...)
      	/go/src/github.com/openshift/insights-operator/vendor/github.com/spf13/cobra/command.go:992
      main.main()
      	/go/src/github.com/openshift/insights-operator/cmd/insights-operator/main.go:31 +0x10f
          

      I think it might be difficult to manually reproduce it in a cluster, but in general it can happen when DataGather resource is being updated with a non-existing condition (i.e condition which doesn't exist in its status). I guess this can happen when some of the previous updates of the resource failed (e.g updating a gather duration with non-valid duration value)

              tremes1@redhat.com Tomas Remes
              tremes1@redhat.com Tomas Remes
              baiyang zhou baiyang zhou
              Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

                Created:
                Updated: