{"record":{"id":"9ec69d2314e715eb","repo":"kubernetes/kops","slug":"error-querying-for-route53-records-for-zone-q-v","errorCode":null,"errorMessage":"error querying for route53 records for zone %q: %v","messagePattern":"error querying for route53 records for zone %q: (.+?)","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/resources/aws/aws.go","lineNumber":1846,"sourceCode":"\t\t\t}\n\t\t}\n\t}\n\n\tfor i := range zones {\n\t\t// Be super careful because we close over this later (in groupDeleter)\n\t\tzone := zones[i]\n\n\t\thostedZoneID := strings.TrimPrefix(aws.ToString(zone.Id), \"/hostedzone/\")\n\n\t\tklog.V(2).Infof(\"Querying for records in zone: %q\", aws.ToString(zone.Name))\n\t\trequest := &route53.ListResourceRecordSetsInput{\n\t\t\tHostedZoneId: zone.Id,\n\t\t}\n\t\tpaginator := route53.NewListResourceRecordSetsPaginator(c.Route53(), request)\n\t\tfor paginator.HasMorePages() {\n\t\t\tpage, err := paginator.NextPage(ctx)\n\t\t\tif err != nil {\n\t\t\t\treturn nil, fmt.Errorf(\"error querying for route53 records for zone %q: %v\", aws.ToString(zone.Name), err)\n\t\t\t}\n\t\t\tfor _, rrs := range page.ResourceRecordSets {\n\t\t\t\tif rrs.Type != route53types.RRTypeA &&\n\t\t\t\t\trrs.Type != route53types.RRTypeAaaa &&\n\t\t\t\t\trrs.Type != route53types.RRTypeTxt {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\n\t\t\t\tname := aws.ToString(rrs.Name)\n\t\t\t\tname = \".\" + strings.TrimSuffix(name, \".\")\n\n\t\t\t\tif !strings.HasSuffix(name, clusterName) {\n\t\t\t\t\tcontinue\n\t\t\t\t}\n\t\t\t\tprefix := strings.TrimSuffix(name, clusterName)\n\n\t\t\t\t// Also trim ownership records for AAAA records\n\t\t\t\tif rrs.Type == route53types.RRTypeTxt && strings.HasPrefix(prefix, \".aaaa-\") {","sourceCodeStart":1828,"sourceCodeEnd":1864,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/pkg/resources/aws/aws.go#L1828-L1864","documentation":"Fires in ListRoute53Records when a page of ListResourceRecordSets fails for a hosted zone during AWS resource discovery for cluster teardown — an AWS API/network failure while enumerating DNS records, not an indication the records are missing.","triggerScenarios":"Thrown at pkg/resources/aws/aws.go:1846 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Check AWS credentials and route53:ListResourceRecordSets permission for the zone","Retry; paginate again after transient throttling or network errors","Verify the hosted zone still exists and is accessible in the target account"],"exampleFix":null,"handlingStrategy":"retry","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4c8573c808a73d578c5eadc86d410646ea0b0d73","analyzedAt":"2026-09-05T04:13:19.212Z","contentChangedAt":"2026-09-05T04:13:19.212Z","schemaVersion":2},"datasetVersion":"2026-09-12T07:17:12.445Z"}