-
Notifications
You must be signed in to change notification settings - Fork 4.5k
(stepfunctions): the service does not support JSON paths for MaxConcurrency on a Map state but CDK can generate one #20835
Copy link
Copy link
Open
Labels
@aws-cdk/aws-stepfunctionsRelated to AWS StepFunctionsRelated to AWS StepFunctionsbugThis issue is a bug.This issue is a bug.effort/smallSmall work item – less than a day of effortSmall work item – less than a day of effortp2
Description
Describe the bug
Allowing JSON paths for MaxConcurrency was added in response to #20152, but JSON paths are not actually supported for the MaxConcurrency key in a Map state by Step Functions.
Expected Behavior
I would expect synth to fail in the reproduction example.
Current Behavior
Synth succeeds, but deploying fails with the following error:
11:31:04 AM | CREATE_FAILED | AWS::StepFunctions::StateMachine | StateMachine2E01A3A5
Resource handler returned message: "Invalid State Machine Definition: 'SCHEMA_VALIDATION_FAILED: Expected value of type Integer at /States/Map State/MaxConcurrency'"
Reproduction Steps
import { Duration, Stack, StackProps } from 'aws-cdk-lib';
import * as stepfunctions from 'aws-cdk-lib/aws-stepfunctions';
import { Construct } from 'constructs';
export class SfReproStack extends Stack {
constructor(scope: Construct, id: string, props?: StackProps) {
super(scope, id, props);
const map = new stepfunctions.Map(this, 'Map State', {
maxConcurrency: stepfunctions.JsonPath.numberAt('$.maxConcurrency'),
itemsPath: stepfunctions.JsonPath.stringAt('$.inputForMap'),
});
map.iterator(new stepfunctions.Pass(this, 'Pass State'));
const machine = new stepfunctions.StateMachine(this, "StateMachine", {
definition: map,
stateMachineName: 'ReproStateMachine',
timeout: Duration.minutes(5),
});
}
}Possible Solution
I think #20279 should be reverted until Step Functions supports this.
Additional Information/Context
No response
CDK CLI Version
2.28.1 (build d035432)
Framework Version
No response
Node.js Version
v18.4.0
OS
macOS 12.3.1
Language
Typescript
Language Version
No response
Other information
No response
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
@aws-cdk/aws-stepfunctionsRelated to AWS StepFunctionsRelated to AWS StepFunctionsbugThis issue is a bug.This issue is a bug.effort/smallSmall work item – less than a day of effortSmall work item – less than a day of effortp2