Skip to content

aws_lb_listener_rule plugin crush on dynamically adding listener arn #42237

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
danielTorox opened this issue Apr 15, 2025 · 1 comment
Open
Labels
bug Addresses a defect in current functionality. crash Results from or addresses a Terraform crash or kernel panic. prioritized Part of the maintainer teams immediate focus. To be addressed within the current quarter. service/elbv2 Issues and PRs that pertain to the elbv2 service.

Comments

@danielTorox
Copy link

Terraform and AWS Provider Version

Terraform v1.11.4
on windows_amd64
+ provider registry.terraform.io/hashicorp/aws v5.89.0

Affected Resource(s) or Data Source(s)

aws_lb_listener_rule

Expected Behavior

loop over the rules variable and create all the rules on the listener

Actual Behavior

plugin crush if the listener is created on the same apply.
if the rule is applied on a deferent apply then the listener then is works

Relevant Error/Panic Output

panic: value is not known

goroutine 231 [running]:
github.com/hashicorp/go-cty/cty.Value.LengthInt({{{0x1d8334c8?, 0xc003995980?}}, {0x18d13640?, 0x29388de0?}})
        github.com/hashicorp/[email protected]/cty/value_ops.go:986 +0x26b
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionPlantimeValidate({0xc003a544a0, 0x2, 0x2}, {{{0x1d833570?, 0xc002bbc3b8?}}, {0x191d73e0?, 0xc00399f590?}}, 0xc0039aabd8)
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1825 +0x5b0
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionsPlantimeValidate({0xc003a479f0, 0x1, 0x184f9e00?}, {{{0x1d8334c8?, 0xc003995b20?}}, {0x184f9e00?, 0xc00355d0e0?}}, 0xc0039aabd8)
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1775 +0xa5
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.validateListenerActionsCustomDiff.func22({0xc0039dabd0?, 0xc0039aac50?}, 0xa00f05?, {0x30?, 0x1a94a700?})
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1762 +0x165
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.All.func23({0x1d8331e8, 0xc0039dabd0}, 0xc0039b75c0, {0x1b15dec0, 0xc0030efd00})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:52 +0xce
github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.Sequence.func2({0x1d8331e8, 0xc0039dabd0}, 0xc0039b75c0, {0x1b15dec0, 0xc0030efd00})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:69 +0x84
github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.(*wrappedResource).customizeDiffWithBootstrappedContext.func3({0x1d8331e8?, 0xc0039910e0?}, 0xc0039b75c0, {0x1b15dec0, 0xc0030efd00})
        github.com/hashicorp/terraform-provider-aws/internal/provider/wrap.go:139 +0x63
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.schemaMap.Diff(0xc0014b6450, {0x1d8331e8, 0xc0039910e0}, 0xc001c9fc70, 0xc00399c410, 0xc001c34d08, {0x1b15dec0, 0xc0030efd00}, 0x0)
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/schema.go:710 +0x4b4
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).SimpleDiff(0x1d833570?, {0x1d8331e8?, 0xc0039910e0?}, 0xc001c9fc70, 0xc003991110?, {0x1b15dec0?, 0xc0030efd00?})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/resource.go:1022 +0xdb
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).PlanResourceChange(0xc0030a28b8, {0x1d8331e8?, 0xc003990ff0?}, 0xc003545e50)
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/grpc_provider.go:890 +0xbc8
github.com/hashicorp/terraform-plugin-mux/tf5muxserver.(*muxServer).PlanResourceChange(0xc000c98c00, {0x1d8331e8?, 0xc003990d20?}, 0xc003545e50)
        github.com/hashicorp/[email protected]/tf5muxserver/mux_server_PlanResourceChange.go:73 +0x2ad
github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).PlanResourceChange(0xc0015bc8c0, {0x1d8331e8?, 0xc0039904e0?}, 0xc001a1e780)
        github.com/hashicorp/[email protected]/tfprotov5/tf5server/server.go:826 +0x3dc
github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_PlanResourceChange_Handler({0x1afcd260, 0xc0015bc8c0}, {0x1d8331e8, 0xc0039904e0}, 0xc001a1e700, 0x0)
        github.com/hashicorp/[email protected]/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:593 +0x1a6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc003052800, {0x1d8331e8, 0xc003990450}, 0xc004b1ec60, 0xc003103e60, 0x2932bd60, 0x0)
        google.golang.org/[email protected]/server.go:1400 +0x103b
google.golang.org/grpc.(*Server).handleStream(0xc003052800, {0x1d867718, 0xc0030e69c0}, 0xc004b1ec60)
        google.golang.org/[email protected]/server.go:1810 +0xbaa
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        google.golang.org/[email protected]/server.go:1030 +0x7f
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 32
        google.golang.org/[email protected]/server.go:1041 +0x125

Sample Terraform Configuration

this is the module

Click to expand configuration
resource "aws_lb_listener_rule" "load_balancer_listener_rule" {
  listener_arn = var.listener_arn
  priority     = try(var.rule["body"]["priority"], null)

  action {
    type = var.rule["action"]["body"]["type"]
    dynamic "forward" {
      for_each = (var.rule["action"]["body"]["type"] == "forward" && can(var.rule["action"]["forward"])) ? ["enter"] : []

      content {
        dynamic "target_group" {
          for_each = var.rule["action"]["forward"]["target_group"]
          content {
            arn    = target_group.value["body"]["target_group_arn"]
            weight = try(target_group.value["body"]["weight"], null)
          }
        }
        stickiness {
          enabled  = try(var.rule["action"]["forward"]["stickiness"]["body"]["enabled"], false)
          duration = try(var.rule["action"]["forward"]["stickiness"]["body"]["duration"], 1)
        }
      }
    }
    dynamic "fixed_response" {
      for_each = (var.rule["action"]["body"]["type"] == "fixed-response" && can(var.rule["action"]["fixed_response"])) ? ["enter"] : []
      content {
        content_type = var.rule["action"]["fixed_response"]["body"]["content_type"]
        message_body = try(var.rule["action"]["fixed_response"]["body"]["message_body"], null)
        status_code  = try(var.rule["action"]["fixed_response"]["body"]["status_code"], 503)
      }
    }
  }

  condition {
    dynamic "host_header" {
      for_each = var.rule["condition"]["host_header"]
      content {
        values = var.rule["condition"]["host_header"]
      }
    }
    dynamic "http_header" {
      for_each = can(var.rule["condition"]["http_header"]) ? ["enter"] : []
      content {
        http_header_name = var.rule["condition"]["http_header"]["http_header_name"]
        values           = var.rule["condition"]["http_header"]["values"]
      }
    }
    dynamic "http_request_method" {
      for_each = var.rule["condition"]["http_request_method"]
      content {
        values = var.rule["condition"]["http_request_method"]
      }
    }
    dynamic "path_pattern" {
      for_each = var.rule["condition"]["path_pattern"]
      content {
        values = var.rule["condition"]["path_pattern"]
      }
    }
    dynamic "query_string" {
      for_each = var.rule["condition"]["query_string"]
      content {
        key   = query_string.value["key"]
        value = query_string.value["value"]
      }
    }
    dynamic "source_ip" {
      for_each = var.rule["condition"]["source_ip"]
      content {
        values = var.rule["condition"]["source_ip"]
      }
    }
  }

  lifecycle {
    ignore_changes = [condition, action]
  }
}

this is the variable:

Click to expand configuration
variable "rule" {
  type = object({
    body = map(string)
    action = object({
      body = map(string)
      forward = optional(object({
        target_group = list(object({
          body = map(string)
        }))
        stickiness = optional(object({
          body = map(string)
        }))
      }), null)
      fixed_response = optional(object({
        body = map(string)
      }), null)
    })
    condition = object({
      host_header = optional(list(string), [])
      http_header = optional(object({
        http_header_name = string
        values           = list(string)
      }))
      http_request_method = optional(list(string), [])
      path_pattern        = optional(list(string), [])
      query_string = optional(list(object({
        key   = string
        value = string
      })), [])
      source_ip = optional(list(string), [])
    })
  })
}

variable "listener_arn" {
  type    = string
  default = null
}

this is the init of the module:

Click to expand configuration
module "listener_rules" {
  count        = length(local.load_balancer_listener_rules)
  source       = "./modules/compute/load_balancer_listener_rule"
  rule         = local.load_balancer_listener_rules[count.index]
  listener_arn = module.listener.listener_arn
  depends_on = [
    module.listener,
    module.lb_target_groups
  ]
}

and this is the local

Click to expand configuration
load_balancer_listener_rules = [
    for rule in var.listener_rules : merge(
      rule, {
        "action" = merge(
          rule["action"], {
            "forward" = merge(
              rule["action"]["forward"], {
                "target_group" = [
                  for tg in try(rule["action"]["forward"]["target_group"], []) : merge(
                    tg, {
                      "body" = merge(
                        tg["body"], {
                          "target_group_arn" = try(local.tg_names_to_arns[tg["body"]["target_group_arn"]], "")
                        }
                      )
                    }
                  )
                ]
              }
            )
          }
        )
      }
    )
  ]

Steps to Reproduce

create a listener,
create an array of rules as a variable.
try to create the rules for the listener right after the listener is created

Debug Logging

Click to expand log output
2025-04-15T17:52:49.924+0300 [WARN]  Provider "registry.terraform.io/hashicorp/aws" produced an invalid plan for module.listener.aws_lb_listener.load_balancer_listener, but we are tolerating it because it is using the legacy plugin SDK.
    The following problems may be the cause of any confusing errors from downstream operations:
      - .tcp_idle_timeout_seconds: planned value cty.UnknownVal(cty.Number) does not match config value cty.NumberIntVal(350)
      - .default_action[0].authenticate_cognito: block count in plan (0) disagrees with count in config (1)
      - .default_action[0].authenticate_oidc: block count in plan (0) disagrees with count in config (1)
      - .mutual_authentication: attribute representing nested block must not be unknown itself; set nested attribute values to unknown instead
2025-04-15T17:52:49.924+0300 [DEBUG] Resource instance state not found for node "module.listener_rules[0].aws_lb_listener_rule.load_balancer_listener_rule", instance module.listener_rules[0].aws_lb_listener_rule.load_balancer_listener_rule
2025-04-15T17:52:49.924+0300 [DEBUG] ReferenceTransformer: "module.listener_rules[0].aws_lb_listener_rule.load_balancer_listener_rule" references: []
2025-04-15T17:52:49.924+0300 [DEBUG] refresh: module.listener_rules[0].aws_lb_listener_rule.load_balancer_listener_rule: no state, so not refreshing
2025-04-15T17:52:49.928+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: [DEBUG] setting computed for "action.0.forward" from ComputedKeys
2025-04-15T17:52:49.928+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: [DEBUG] setting computed for "action.0.forward" from ComputedKeys
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: panic: value is not known
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: goroutine 306 [running]:
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/go-cty/cty.Value.LengthInt({{{0x1d8334c8?, 0xc004a89db0?}}, {0x18d13640?, 0x29388de0?}})
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/[email protected]/cty/value_ops.go:986 +0x26b
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionPlantimeValidate({0xc004e90680, 0x2, 0x2}, {{{0x1d833570?, 0xc004c1a2e8?}}, {0x191d73e0?, 0xc004a83d10?}}, 0xc004a2abd8)
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1825 +0x5b0
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionsPlantimeValidate({0xc003031f70, 0x1, 0x184f9e00?}, {{{0x1d8334c8?, 0xc004a89f70?}}, {0x184f9e00?, 0xc004c14c30?}}, 0xc004a2abd8)
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1775 +0xa5
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.validateListenerActionsCustomDiff.func22({0xc00427f800?, 0xc004a2ac50?}, 0xa00f05?, {0x30?, 0x1a94a700?})
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1762 +0x165
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.All.func23({0x1d8331e8, 0xc00427f800}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
2025-04-15T17:52:49.934+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:52 +0xce
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.Sequence.func2({0x1d8331e8, 0xc00427f800}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:69 +0x84
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.(*wrappedResource).customizeDiffWithBootstrappedContext.func3({0x1d8331e8?, 0xc004d855c0?}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-provider-aws/internal/provider/wrap.go:139 +0x63
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.schemaMap.Diff(0xc0014d2d50, {0x1d8331e8, 0xc004d855c0}, 0xc002c744e0, 0xc003f674f0, 0xc0018e4d68, {0x1b15dec0, 0xc0022b5700}, 0x0)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/schema.go:710 +0x4b4
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).SimpleDiff(0x1d833570?, {0x1d8331e8?, 0xc004d855c0?}, 0xc002c744e0, 0xc004d855f0?, {0x1b15dec0?, 0xc0022b5700?})
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/resource.go:1022 +0xdb
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).PlanResourceChange(0xc002dfdef0, {0x1d8331e8?, 0xc004d854d0?}, 0xc003f66ff0)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/grpc_provider.go:890 +0xbc8
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-mux/tf5muxserver.(*muxServer).PlanResourceChange(0xc000d51a00, {0x1d8331e8?, 0xc004d85200?}, 0xc003f66ff0)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/[email protected]/tf5muxserver/mux_server_PlanResourceChange.go:73 +0x2ad
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).PlanResourceChange(0xc0015cea00, {0x1d8331e8?, 0xc004d849c0?}, 0xc001f4c580)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/[email protected]/tfprotov5/tf5server/server.go:826 +0x3dc
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_PlanResourceChange_Handler({0x1afcd260, 0xc0015cea00}, {0x1d8331e8, 0xc004d849c0}, 0xc001f4c500, 0x0)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    github.com/hashicorp/[email protected]/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:593 +0x1a6
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: google.golang.org/grpc.(*Server).processUnaryRPC(0xc000d77400, {0x1d8331e8, 0xc004d84930}, 0xc00480c000, 0xc0012854a0, 0x2932bd60, 0x0)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    google.golang.org/[email protected]/server.go:1400 +0x103b
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: google.golang.org/grpc.(*Server).handleStream(0xc000d77400, {0x1d867718, 0xc0012ca000}, 0xc00480c000)
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    google.golang.org/[email protected]/server.go:1810 +0xbaa
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: google.golang.org/grpc.(*Server).serveStreams.func2.1()
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    google.golang.org/[email protected]/server.go:1030 +0x7f
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe: created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 54
2025-04-15T17:52:49.935+0300 [DEBUG] provider.terraform-provider-aws_v5.89.0_x5.exe:    google.golang.org/[email protected]/server.go:1041 +0x125
2025-04-15T17:52:49.936+0300 [ERROR] plugin.(*GRPCProvider).PlanResourceChange: error="rpc error: code = Unavailable desc = error reading from server: read tcp 127.0.0.1:64705->127.0.0.1:10000: wsarecv: An existing connection was forcibly closed by the remote host."
2025-04-15T17:52:49.936+0300 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = error reading from server: read tcp 127.0.0.1:64705->127.0.0.1:10000: wsarecv: An existing connection was forcibly closed by the remote host."
2025-04-15T17:52:49.936+0300 [ERROR] vertex "module.listener_rules[0].aws_lb_listener_rule.load_balancer_listener_rule" error: Plugin did not respond
2025-04-15T17:52:49.936+0300 [ERROR] vertex "module.listener_rules.aws_lb_listener_rule.load_balancer_listener_rule (expand)" error: Plugin did not respond
2025-04-15T17:52:49.938+0300 [WARN]  Planning encountered errors, so plan is not applyable
2025-04-15T17:52:49.964+0300 [ERROR] provider: plugin process exited: plugin=.terraform/providers/registry.terraform.io/hashicorp/aws/5.89.0/windows_amd64/terraform-provider-aws_v5.89.0_x5.exe id=27908 error="exit status 2"

Stack trace from the terraform-provider-aws_v5.89.0_x5.exe plugin:

panic: value is not known

goroutine 306 [running]:
github.com/hashicorp/go-cty/cty.Value.LengthInt({{{0x1d8334c8?, 0xc004a89db0?}}, {0x18d13640?, 0x29388de0?}})
        github.com/hashicorp/[email protected]/cty/value_ops.go:986 +0x26b
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionPlantimeValidate({0xc004e90680, 0x2, 0x2}, {{{0x1d833570?, 0xc004c1a2e8?}}, {0x191d73e0?, 0xc004a83d10?}}, 0xc004a2abd8)
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1825 +0x5b0
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.listenerActionsPlantimeValidate({0xc003031f70, 0x1, 0x184f9e00?}, {{{0x1d8334c8?, 0xc004a89f70?}}, {0x184f9e00?, 0xc004c14c30?}}, 0xc004a2abd8)
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1775 +0xa5
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.validateListenerActionsCustomDiff.func22({0xc00427f800?, 0xc004a2ac50?}, 0xa00f05?, {0x30?, 0x1a94a700?})
        github.com/hashicorp/terraform-provider-aws/internal/service/elbv2/listener.go:1762 +0x165
github.com/hashicorp/terraform-provider-aws/internal/service/elbv2.resourceListenerRule.All.func23({0x1d8331e8, 0xc00427f800}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:52 +0xce
github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.Sequence.func2({0x1d8331e8, 0xc00427f800}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/customdiff/compose.go:69 +0x84
github.com/hashicorp/terraform-provider-aws/internal/provider.(*wrappedResource).customizeDiff.(*wrappedResource).customizeDiffWithBootstrappedContext.func3({0x1d8331e8?, 0xc004d855c0?}, 0xc0032e2e00, {0x1b15dec0, 0xc0022b5700})
        github.com/hashicorp/terraform-provider-aws/internal/provider/wrap.go:139 +0x63
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.schemaMap.Diff(0xc0014d2d50, {0x1d8331e8, 0xc004d855c0}, 0xc002c744e0, 0xc003f674f0, 0xc0018e4d68, {0x1b15dec0, 0xc0022b5700}, 0x0)
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/schema.go:710 +0x4b4
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*Resource).SimpleDiff(0x1d833570?, {0x1d8331e8?, 0xc004d855c0?}, 0xc002c744e0, 0xc004d855f0?, {0x1b15dec0?, 0xc0022b5700?})
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/resource.go:1022 +0xdb
github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema.(*GRPCProviderServer).PlanResourceChange(0xc002dfdef0, {0x1d8331e8?, 0xc004d854d0?}, 0xc003f66ff0)
        github.com/hashicorp/terraform-plugin-sdk/[email protected]/helper/schema/grpc_provider.go:890 +0xbc8
github.com/hashicorp/terraform-plugin-mux/tf5muxserver.(*muxServer).PlanResourceChange(0xc000d51a00, {0x1d8331e8?, 0xc004d85200?}, 0xc003f66ff0)
        github.com/hashicorp/[email protected]/tf5muxserver/mux_server_PlanResourceChange.go:73 +0x2ad
github.com/hashicorp/terraform-plugin-go/tfprotov5/tf5server.(*server).PlanResourceChange(0xc0015cea00, {0x1d8331e8?, 0xc004d849c0?}, 0xc001f4c580)
        github.com/hashicorp/[email protected]/tfprotov5/tf5server/server.go:826 +0x3dc
github.com/hashicorp/terraform-plugin-go/tfprotov5/internal/tfplugin5._Provider_PlanResourceChange_Handler({0x1afcd260, 0xc0015cea00}, {0x1d8331e8, 0xc004d849c0}, 0xc001f4c500, 0x0)
        github.com/hashicorp/[email protected]/tfprotov5/internal/tfplugin5/tfplugin5_grpc.pb.go:593 +0x1a6
google.golang.org/grpc.(*Server).processUnaryRPC(0xc000d77400, {0x1d8331e8, 0xc004d84930}, 0xc00480c000, 0xc0012854a0, 0x2932bd60, 0x0)
        google.golang.org/[email protected]/server.go:1400 +0x103b
google.golang.org/grpc.(*Server).handleStream(0xc000d77400, {0x1d867718, 0xc0012ca000}, 0xc00480c000)
        google.golang.org/[email protected]/server.go:1810 +0xbaa
google.golang.org/grpc.(*Server).serveStreams.func2.1()
        google.golang.org/[email protected]/server.go:1030 +0x7f
created by google.golang.org/grpc.(*Server).serveStreams.func2 in goroutine 54
        google.golang.org/[email protected]/server.go:1041 +0x125

Error: The terraform-provider-aws_v5.89.0_x5.exe 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.

2025-04-15T17:52:50.052+0300 [DEBUG] provider: plugin exited

GenAI / LLM Assisted Development

n/a

Important Facts and References

No response

Would you like to implement a fix?

No

@danielTorox danielTorox added the bug Addresses a defect in current functionality. label Apr 15, 2025
Copy link

Community Guidelines

This comment is added to every new Issue to provide quick reference to how the Terraform AWS Provider is maintained. Please review the information below, and thank you for contributing to the community that keeps the provider thriving! 🚀

Voting for Prioritization

  • Please vote on this Issue by adding a 👍 reaction to the original post to help the community and maintainers prioritize it.
  • Please see our prioritization guide for additional information on how the maintainers handle prioritization.
  • Please do not leave +1 or other comments that do not add relevant new information or questions; they generate extra noise for others following the Issue and do not help prioritize the request.

Volunteering to Work on This Issue

  • If you are interested in working on this issue, please leave a comment.
  • If this would be your first contribution, please review the contribution guide.
  • For new resources and data sources, use skaff to generate scaffolding with comments detailing common expectations.

@github-actions github-actions bot added needs-triage Waiting for first response or review from a maintainer. service/elbv2 Issues and PRs that pertain to the elbv2 service. labels Apr 15, 2025
@terraform-aws-provider terraform-aws-provider bot added the crash Results from or addresses a Terraform crash or kernel panic. label Apr 15, 2025
@github-actions github-actions bot added the prioritized Part of the maintainer teams immediate focus. To be addressed within the current quarter. label Apr 15, 2025
@justinretzolk justinretzolk removed the needs-triage Waiting for first response or review from a maintainer. label Apr 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Addresses a defect in current functionality. crash Results from or addresses a Terraform crash or kernel panic. prioritized Part of the maintainer teams immediate focus. To be addressed within the current quarter. service/elbv2 Issues and PRs that pertain to the elbv2 service.
Projects
None yet
Development

No branches or pull requests

2 participants