Closed praneetloke closed 2 weeks ago
Hi @praneetloke - thank you for sending this issue.
We'll be taking a look as soon as we can. It is certainly odd that the panic is happening in the terraform plugin; thank you very much for verifying the TF-only version of this.
@guineveresaenger just wondering if there is any other info I can gather to help diagnose this? Not sure if you've been able to reproduce the issue?
Hi @praneetloke. It's possible you could unblock us by giving us a state file that we can import and then run pulumi destroy
on, so we could reproduce the panic. Depending on where the panic is, that might work. If we need real credentials, then that won't help.
I think that we need https://github.com/pulumi/pulumi-terraform-provider/issues/37 to gather enough information to act here in the general case. We have that issue scheduled for this iteration.
I've sent the state file privately to @iwahbe. Let me know if you need anything else to help diagnose this.
Had the same issue now while trying to use generated provider from https://registry.terraform.io/providers/signalsciences/sigsci/latest
Diagnostics:
sigsci:index:SiteRule (rule-test4):
error: rpc error: code = Unavailable desc = error reading from server: EOF:
Stack trace from the terraform-provider-sigsci_v3.3.0 plugin:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xbc9fd1]
goroutine 91 [running]:
github.com/hashicorp/terraform-plugin-sdk/internal/helper/plugin.(*GRPCProviderServer).ApplyResourceChange(0xc000012128, {0xc0000f7110?, 0x4c05e6?}, 0xc0000f7110)
github.com/hashicorp/terraform-plugin-sdk@v1.14.0/internal/helper/plugin/grpc_provider.go:802 +0x1b1
github.com/hashicorp/terraform-plugin-sdk/internal/tfplugin5._Provider_ApplyResourceChange_Handler({0xd9c460?, 0xc000012128}, {0xf578f0, 0xc00071a570}, 0xc0005f5020, 0x0)
github.com/hashicorp/terraform-plugin-sdk@v1.14.0/internal/tfplugin5/tfplugin5.pb.go:3305 +0x170
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000428480, {0xf5b420, 0xc000328000}, 0xc0006b8d00, 0xc00051d470, 0x14921e0, 0x0)
google.golang.org/grpc@v1.27.1/server.go:1024 +0xd4f
google.golang.org/grpc.(*Server).handleStream(0xc000428480, {0xf5b420, 0xc000328000}, 0xc0006b8d00, 0x0)
google.golang.org/grpc@v1.27.1/server.go:1313 +0xa25
google.golang.org/grpc.(*Server).serveStreams.func1.1()
google.golang.org/grpc@v1.27.1/server.go:722 +0x98
created by google.golang.org/grpc.(*Server).serveStreams.func1
google.golang.org/grpc@v1.27.1/server.go:720 +0xea
Error: The terraform-provider-sigsci_v3.3.0 plugin crashed!
This is always indicative of a bug within the plugin. It would be immensely
helpful if you could report the crash with the plugin's maintainers so that it
can be fixed. The output above should help diagnose the issue.
Let me know if you need more details
Hi @klis. Thanks for letting us know. I've noticed that the crashing providers are all on SDKv1, which was last released 3 years ago. We only tested providers that are built on SDKv2 and Plugin Framework.
We are investigating how to enable pulumi-terraform-provider to work with SDKv1 built providers.
What happened?
I dynamically generated a provider from https://github.com/Constellix/terraform-provider-constellix. I can create a resource just fine. When I try to delete the resource, the plugin crashes. I've tried to reproduce this issue with a TF program but it worked without issues, which leads me to believe there is something wrong in the bridge perhaps? Note that the resource is not actually deleted so the plugin seems to crash early. I have to go in to the Constellix console and manually remove the CNAME and refresh the state as a workaround.
Example
Output of
pulumi about
Additional context
Here's the equivalent TF program I used to check if the same issue occurs in TF.
Contributing
Vote on this issue by adding a 👍 reaction. To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).