Skip to content

CrossRegionExportWriter: Response object is too long. #23958

@joshbalfour

Description

@joshbalfour

Describe the bug

When using cross-region references between stacks I get this error:
(The following resource(s) failed to update: [ExportsWritereuwest25F52B32F9AB3BFFD]. ): Response object is too long.

This might be because I'm exporting resources from a nested stack so the generated keys are really long.

I'm aware cross-region references are very alpha, and I have a workaround I'm going to try that basically replicates the functionality but does one resource reference at a time, not ideal as it will be much slower.

Expected Behavior

The reference to work as expected.

Current Behavior

The stack fails to deploy.

Reproduction Steps

The resource when synthed looks like this:

"ExportsWritereuwest25F52B32F9AB3BFFD": {
   "Type": "Custom::CrossRegionExportWriter",
   "Properties": {
    "ServiceToken": {
     "Fn::GetAtt": [
      "CustomCrossRegionExportWriterCustomResourceProviderHandlerD8786E8A",
      "Arn"
     ]
    },
    "WriterProps": {
     "region": "eu-west-2",
     "exports": {
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2oryhydrahydrapublicB75FC865RefEA95D68D": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2oryhydrahydrapublicB75FC865Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2oryhydraadhydraadpublic8B011CFARef0C11F132": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2oryhydraadhydraadpublic8B011CFARef"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2orykratoskratospublicBF598F48Ref61F05EEB": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2orykratoskratospublicBF598F48Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2oryhydrahydraadmin44A1DC5ARef25110A0F": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2oryhydrahydraadmin44A1DC5ARef"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2oryhydraadhydraadadmin13715108Ref123ADE30": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2oryhydraadhydraadadmin13715108Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2orykratoskratosadmin66E5C2F5RefABC2E741": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2orykratoskratosadmin66E5C2F5Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttadmingqlNestedStackadmingqlNestedStackResource7F92880AOutputscompanyproductjosh22apsoutheast2admingqlalbEF458438RefF1172A0D": {
       "Fn::GetAtt": [
        "admingqlNestedStackadmingqlNestedStackResource7F92880A",
        "Outputs.companyproductjosh22apsoutheast2admingqlalbEF458438Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttoryNestedStackoryNestedStackResource908720F1Outputscompanyproductjosh22apsoutheast2oryproxyNestedStackproxyNestedStackResource12C3FA79Outputscompanyproductjosh22apsoutheast2oryproxyal9F2CB0FD": {
       "Fn::GetAtt": [
        "oryNestedStackoryNestedStackResource908720F1",
        "Outputs.companyproductjosh22apsoutheast2oryproxyNestedStackproxyNestedStackResource12C3FA79Outputscompanyproductjosh22apsoutheast2oryproxyalbD89592B8Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttsamlNestedStacksamlNestedStackResource2B1E690EOutputscompanyproductjosh22apsoutheast2samlalb776F7A60Ref2A2E0028": {
       "Fn::GetAtt": [
        "samlNestedStacksamlNestedStackResource2B1E690E",
        "Outputs.companyproductjosh22apsoutheast2samlalb776F7A60Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttloginNestedStackloginNestedStackResource5E1A21F5Outputscompanyproductjosh22apsoutheast2loginalb6D8F1A33Ref5E92FD74": {
       "Fn::GetAtt": [
        "loginNestedStackloginNestedStackResource5E1A21F5",
        "Outputs.companyproductjosh22apsoutheast2loginalb6D8F1A33Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttmigrationNestedStackmigrationNestedStackResourceC0800D01Outputscompanyproductjosh22apsoutheast2migrationalb2B1D1A53Ref0B868277": {
       "Fn::GetAtt": [
        "migrationNestedStackmigrationNestedStackResourceC0800D01",
        "Outputs.companyproductjosh22apsoutheast2migrationalb2B1D1A53Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttactivedirectoryfederationNestedStackactivedirectoryfederationNestedStackResourceF6043CF6Outputscompanyproductjosh22apsoutheast2activedirectoryfederationalb6E7DB668Ref1F7C174D": {
       "Fn::GetAtt": [
        "activedirectoryfederationNestedStackactivedirectoryfederationNestedStackResourceF6043CF6",
        "Outputs.companyproductjosh22apsoutheast2activedirectoryfederationalb6E7DB668Ref"
       ]
      },
      "/cdk/exports/companyproductjosh22acc66077BB2/companyproductjosh22apsoutheast2A61AF646apsoutheast2FnGetAttsamlfederationNestedStacksamlfederationNestedStackResourceF9BAFFEBOutputscompanyproductjosh22apsoutheast2samlfederationalb8BC22212Ref5884B1DC": {
       "Fn::GetAtt": [
        "samlfederationNestedStacksamlfederationNestedStackResourceF9BAFFEB",
        "Outputs.companyproductjosh22apsoutheast2samlfederationalb8BC22212Ref"
       ]
      }
     }
    }
   },
   "UpdateReplacePolicy": "Delete",
   "DeletionPolicy": "Delete",
   "Metadata": {
    "aws:cdk:path": "company-product-josh22/ap-southeast-2/ExportsWritereuwest25F52B32F/Resource/Default"
   }
  },

Possible Solution

Maybe using outputPaths might help, but if the key length is what's causing the issue I can see how this wouldn't necessarily help.

Additional Information/Context

No response

CDK CLI Version

2.63.0

Framework Version

No response

Node.js Version

18

OS

alpine

Language

Typescript

Language Version

No response

Other information

No response

Metadata

Metadata

Assignees

Labels

bugThis issue is a bug.effort/smallSmall work item – less than a day of effortp2package/toolsRelated to AWS CDK Tools or CLI

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions