Bug 2109326 - GCP panic: runtime error: slice bounds out of range when destroying a cluster
Summary: GCP panic: runtime error: slice bounds out of range when destroying a cluster
Keywords:
Status: CLOSED DUPLICATE of bug 2104906
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Installer
Version: 4.11
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
: ---
Assignee: OCP Installer
QA Contact: Gaoyun Pei
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2022-07-21 00:56 UTC by Peter Larsen
Modified: 2022-07-21 07:13 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2022-07-21 07:13:59 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Peter Larsen 2022-07-21 00:56:35 UTC
After a successful default IPI install of 4.11, destroying the cluster using "openshift-install destroy cluster" fails leaving some objects like networking behind.

DEBUG Deleting compute instance ocp1-2v62k-master-1 in zone us-east4-b 
DEBUG Deleting compute instance ocp1-2v62k-worker-b-t682r in zone us-east4-b 
DEBUG Deleting compute instance ocp1-2v62k-master-2 in zone us-east4-c 
DEBUG Deleting compute instance ocp1-2v62k-worker-c-tlc6x in zone us-east4-c 
DEBUG Deleting compute instance ocp1-2v62k-master-0 in zone us-east4-a 
DEBUG Deleting compute instance ocp1-2v62k-worker-a-v6m9h in zone us-east4-a 
DEBUG Instances: 6 items pending                   
E0720 20:20:27.379537  330968 runtime.go:78] Observed a panic: runtime.boundsError{x:22, y:18, signed:true, code:0x1} (runtime error: slice bounds out of range [:22] with length 18)
goroutine 1 [running]:
k8s.io/apimachinery/pkg/util/runtime.logPanic({0x41d43c0?, 0xc000ea3638})
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:74 +0x86
k8s.io/apimachinery/pkg/util/runtime.HandleCrash({0x0, 0x0, 0x18?})
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/runtime/runtime.go:48 +0x75
panic({0x41d43c0, 0xc000ea3638})
	/usr/lib/golang/src/runtime/panic.go:838 +0x207
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).formatClusterIDForStorage(...)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/disk.go:25
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).storageIDFilter(...)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/disk.go:29
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).storageLabelOrClusterIDFilter(0xc00013d5c0)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/disk.go:39 +0x1fe
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).listDisks(0x3?)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/disk.go:43 +0x1e
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).destroyDisks(0xc00013d5c0)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/disk.go:116 +0x36
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).destroyCluster(0xc00013d5c0)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/gcp.go:174 +0x78e
k8s.io/apimachinery/pkg/util/wait.ConditionFunc.WithContext.func1({0x4ffbf1, 0x0})
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:220 +0x1b
k8s.io/apimachinery/pkg/util/wait.runConditionWithCrashProtectionWithContext({0x19f06718?, 0xc000072090?}, 0x8?)
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:233 +0x57
k8s.io/apimachinery/pkg/util/wait.WaitForWithContext({0x19f06718, 0xc000072090}, 0xc000d9abe8, 0x11096ca?)
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:660 +0x116
k8s.io/apimachinery/pkg/util/wait.poll({0x19f06718, 0xc000072090}, 0xc8?, 0x1108485?, 0x10?)
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:594 +0x9a
k8s.io/apimachinery/pkg/util/wait.PollImmediateInfiniteWithContext({0x19f06718, 0xc000072090}, 0x40d687?, 0x10?)
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:566 +0x49
k8s.io/apimachinery/pkg/util/wait.PollImmediateInfinite(0x19f06750?, 0xc000380ea0?)
	/go/src/github.com/openshift/installer/vendor/k8s.io/apimachinery/pkg/util/wait/wait.go:555 +0x46
github.com/openshift/installer/pkg/destroy/gcp.(*ClusterUninstaller).Run(0xc00013d5c0)
	/go/src/github.com/openshift/installer/pkg/destroy/gcp/gcp.go:130 +0x519
main.runDestroyCmd({0x7ffda07a252a, 0x4}, 0x0)
	/go/src/github.com/openshift/installer/cmd/openshift-install/destroy.go:67 +0x92
main.newDestroyClusterCmd.func1(0xc0006d7b80?, {0xc000399bc0?, 0x2?, 0x2?})
	/go/src/github.com/openshift/installer/cmd/openshift-install/destroy.go:53 +0x7f
github.com/spf13/cobra.(*Command).execute(0xc0006d7b80, {0xc000399b80, 0x2, 0x2})
	/go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:860 +0x663
github.com/spf13/cobra.(*Command).ExecuteC(0xc0006d6a00)
	/go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:974 +0x3b4
github.com/spf13/cobra.(*Command).Execute(...)
	/go/src/github.com/openshift/installer/vendor/github.com/spf13/cobra/command.go:902
main.installerMain()
	/go/src/github.com/openshift/installer/cmd/openshift-install/main.go:60 +0x29e
main.main()
	/go/src/github.com/openshift/installer/cmd/openshift-install/main.go:38 +0xff
panic: runtime error: slice bounds out of range [:22] with length 18 [recovered]
	panic: runtime error: slice bounds out of range [:22] with length 18

Version:

$ openshift-install version
install411 4.11.0-rc.2
built from commit bd27fd83be3b444b692c354c573e8eba17403aa1
release image quay.io/openshift-release-dev/ocp-release@sha256:f7791d5c57aa6f0b531a5e934a77ddb02ad7242c76dbbe2b2fa2c079d84c7743
release architecture amd64

Platform: 

GCP
(rhpds open environment) 

Please specify:
* IPI (automated install with `openshift-install`. If you don't know, then it's IPI)

What happened?
"destroy cluster" fails. Does not fully clean up the install. 

#Enter text here.

#See the troubleshooting documentation (https://github.com/openshift/installer/blob/master/docs/user/troubleshooting.md) for ideas about what information to collect.

#For example, 

# If the installer fails to create resources (https://github.com/openshift/installer/blob/master/docs/user/troubleshooting.md#installer-fails-to-create-resources), attach the relevant portions of your `.openshift_install.log.`
# If the installer fails to bootstrap the cluster (https://github.com/openshift/installer/blob/master/docs/user/troubleshootingbootstrap.md), attach the bootstrap log bundle.
# If the installer fails to complete installation after bootstrapping completes (https://github.com/openshift/installer/blob/master/docs/user/troubleshooting.md#installer-fails-to-initialize-the-cluster), attach the must-gather log bundle using `oc adm must-gather`

# Always at least include the `.openshift_install.log`
It does not contain the error - the DEBUG messages from above is listed but not the error. 

How to reproduce it (as minimally and precisely as possible)?

Create GCP project, setup service account, DNS and enable the required service APIs as per docs. Then run a standard IPI install. Platform parameters used:

platform:
  gcp:
    projectID: openenv-tds55
    region: us-east4
    defaultMachinePlatform:
      type: c2-standard-8

Anything else we need to know?
Cluster was operational, no issues.
This error is particular a problem when the install fails due to failing pre-reqs. Cleaning up DNS, VPCs and subnets with dependencies is tricky.

Comment 1 Rafael Fonseca 2022-07-21 07:13:59 UTC

*** This bug has been marked as a duplicate of bug 2104906 ***


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