Skip to content

provider.terraform-provider-split_v0.10.1: panic: runtime error: invalid memory address or nil pointer dereference #140

@6ripley

Description

@6ripley

Hi there,

Terraform Version

Terraform v1.4.2
on darwin_arm64
+ provider registry.terraform.io/davidji99/split v0.10.1

Debug Output

https://gist.github.com/6ripley/4fab5da4044e370e9a118748b798c3ac

Panic Output

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x2 addr=0x18 pc=0x1044fa33c]

goroutine 182 [running]:
github.com/davidji99/terraform-provider-split/split.resourceSplitSegmentEnvironmentAssociationRead({0x104996980?, 0x14000570630?}, 0x14000194280, {0x1048be7a0?, 0x14000266e80?})
        /home/runner/work/terraform-provider-split/terraform-provider-split/split/resource_split_segment_environment_association.go:136 +0x42c
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).read(0x1400019eee0, {0x104996980, 0x14000570630}, 0xd?, {0x1048be7a0, 0x14000266e80})
        /home/runner/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.24.1/helper/schema/resource.go:724 +0xec
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).RefreshWithoutUpgrade(0x1400019eee0, {0x104996980, 0x14000570630}, 0x140006032b0, {0x1048be7a0, 0x14000266e80})
        /home/runner/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.24.1/helper/schema/resource.go:1015 +0x46c
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).ReadResource(0x14000250480, {0x104996980?, 0x14000570510?}, 0x14000598e40)
        /home/runner/go/pkg/mod/github.com/hashicorp/terraform-plugin-sdk/v2@v2.24.1/helper/schema/grpc_provider.go:613 +0x40c
github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).ReadResource(0x1400026cdc0, {0x104996980?, 0x1400056fef0?}, 0x14000380fc0)
        /home/runner/go/pkg/mod/github.com/hashicorp/terraform-plugin-go@v0.14.1/tfprotov5/tf5server/server.go:748 +0x3ec
github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_ReadResource_Handler({0x104960540?, 0x1400026cdc0}, {0x104996980, 0x1400056fef0}, 0x140001c6a80, 0x0)
        /home/runner/go/pkg/mod/github.com/hashicorp/terraform-plugin-go@v0.14.1/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:349 +0x174
google.golang.org/grpc.(*Server).processUnaryRPC(0x1400026a1e0, {0x1049994a0, 0x140004029c0}, 0x1400039f9e0, 0x140003c4f30, 0x104e32550, 0x0)
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.50.1/server.go:1340 +0xb90
google.golang.org/grpc.(*Server).handleStream(0x1400026a1e0, {0x1049994a0, 0x140004029c0}, 0x1400039f9e0, 0x0)
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.50.1/server.go:1713 +0x840
google.golang.org/grpc.(*Server).serveStreams.func1.2()
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.50.1/server.go:965 +0x88
created by google.golang.org/grpc.(*Server).serveStreams.func1
        /home/runner/go/pkg/mod/google.golang.org/grpc@v1.50.1/server.go:963 +0x298

Error: The terraform-provider-split_v0.10.1 plugin crashed!

Expected Behavior

Terraform should successfully refresh configuration or throw a useful error.

Actual Behavior

Plugin crashes when refreshing state. After re-creating tfstate file and importing existing resources terraform works for the first time when one of the below commands are issued. When apply with refresh=false is issued, it works for printing planned changes but crashes when applied.
Tried applying less resources per command but once it reaches certain number of resources it fails on refresh every time.

Steps to Reproduce

terraform apply
terraform apply -refresh-only

Important Factoids

Tested with Mac with M1 and with Ubuntu 22.04
Already tried setting up export GODEBUG=asyncpreemptoff=1 on mac, recreating tfstate file from import multiple times, re-initializing terraform.

Any help will be appreciated, thanks!

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions