Bug 2312533

Summary: Noobaa Account not getting reconciled due to absence of forceMd5Etag in CR
Product: [Red Hat Storage] Red Hat OpenShift Data Foundation Reporter: Kaustav Majumder <kmajumde>
Component: Multi-Cloud Object GatewayAssignee: Aayush Chouhan <achouhan>
Status: ON_QA --- QA Contact: krishnaram Karthick <kramdoss>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 4.17CC: lmauda, nbecker, odf-bz-bot
Target Milestone: ---   
Target Release: ODF 4.18.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: 4.18.0-36 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Kaustav Majumder 2024-09-16 10:15:18 UTC
Description of problem (please be detailed as possible and provide log
snippests):

Currently the forceMd5Etag is an optional field in the noobaa account CR. But even in it's absence noobaa operator is not reconciling the noobaa account and failing with panic.

Logs:
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
	panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x2012d84]

goroutine 2520 [running]:
sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile.func1()
	noobaa-operator/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:111 +0x1e5
panic({0x23f79a0?, 0x4481c30?})
	/home/kmajumde/go/pkg/mod/golang.org/toolchain.1-go1.22.6.linux-amd64/src/runtime/panic.go:770 +0x132
github.com/noobaa/noobaa-operator/v5/pkg/noobaaaccount.(*Reconciler).CreateNooBaaAccount(0xc0008db680)
	noobaa-operator/pkg/noobaaaccount/reconciler.go:341 +0xe4
github.com/noobaa/noobaa-operator/v5/pkg/noobaaaccount.(*Reconciler).ReconcilePhaseConfiguring(0xc0008db680)
	noobaa-operator/pkg/noobaaaccount/reconciler.go:271 +0x9b
github.com/noobaa/noobaa-operator/v5/pkg/noobaaaccount.(*Reconciler).ReconcilePhases(0xc0008db680)
	noobaa-operator/pkg/noobaaaccount/reconciler.go:159 +0x36
Version of all relevant components (if applicable):


Does this issue impact your ability to continue to work with the product
(please explain in detail what is the user impact)?
This bug affects ocs operator to be able to create noobaa remote join secret which is  required to be able to  support for creating obc on hosted clusters.

Is there any workaround available to the best of your knowledge?
Manually edit the Noobaa account forceMd5Etag field values with true/false

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?
Yes

Can this issue reproduce from the UI?
No

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


Steps to Reproduce:
1.Create a noobaa account CR with no forceMd5Etag field
2.Noobaa operator goes into error state


Actual results:
Noobaa account not getting reconciled and noobaa operator going into error state

Expected results:
Noobaa account should get reconciled

Additional info:

Comment 2 Sunil Kumar Acharya 2024-09-17 10:05:02 UTC
Moving the non-blocker BZs out of ODF-4.17.0 as part of Development Freeze.