Comments (2)
@attila thank you for taking the time to compile this thorough report. I was able to replicate the behaviour. We recently merged some changes that aim to address this issue. These changes are scheduled to be included in the next nightly release too. I would be grateful if you could test the new build at your earliest convenience and provide feedback on whether it resolves the problem you encountered. Thank you once again for bringing this issue forward.
from localstack.
@MEPalma thank you very much for looking into this.
I have tested the feature in the nightly build (2023-04-23) where I looked into the capability of creating state machines with the definition and also to verify that they work as intended. I achieved partial success in this, see details below.
I could create a state machine with the following definition:
{
"StartAt": "MapState",
"States": {
"MapState": {
"Type": "Map",
"ItemsPath": "$.Items",
"Iterator": {
"StartAt": "Wait",
"States": {
"Wait": {
"Type": "Wait",
"Seconds": 5,
"Next": "Proceed"
},
"Proceed": {
"Type": "Pass",
"End": true
}
}
},
"MaxConcurrencyPath": "$.MaxConcurrency",
"End": true
}
}
}
Invoking the state machine with the following inputs verified that maximum concurrency was observed (by checking the "startDate" and "stopDate" of the executions)
{
"MaxConcurrency": 5,
"Items": [1,2,3,4,5,6,7,8,9,10]
}
However, when I specified the value of max concurrency as a string, the service did not cast it to a number like it does in the real AWS service, but failed with the following:
Exception=FailureEventException, Error=States.Runtime, Details={"executionFailedEventDetails": {"error": "States.Runtime", "cause": "The MaxConcurrencyPath field refers to value \"5\" which is not a valid integer: $.MaxConcurrency"}} at '(MaxConcurrencyPath| {'max_concurrency_value': 0, 'max_concurrency_path': '$.MaxConcurrency'}'
I think it's important to retain this capability because of a lack of string to number casting intrinsic functions available.
We do have a use case where the maximum concurrency would be set from a DynamoDB record attribute.
Example: given that DynamoDB returns these records as DynamoDB JSON, (i.e. { "max_concurrency": 5 }
becomes { "max_concurrency": { "N": "5" }
) and if I want to pick up the value as "MaxConcurrencyPath": "$.MyDynamoDBResult.Attributes.max_concurrency.N"
it is impossible.
from localstack.
Related Issues (20)
- bug: ElastiCache: Unable to get ConfigurationEndpoint created by create-replication-group with REDIS_CONTAINER_MODE
- bug: Nested Stack not deleted when parent stack in ROLLBACK_COMPLETE status is deleted
- bug: Typo in main website HOT 1
- bug: hanging during `docker run` with docker v4.30.0 HOT 4
- How to debug an infinite loop? HOT 2
- bug: Presigned URL failed on GET for downloading HOT 3
- bug: TimeStream Characters Limits HOT 1
- bug: TimeStream - ColumnInfo is always null (C#)
- Internal Refactoring: Towards a Multi-Distribution Setup
- bug: Kinesis SubscribeToShard Timeouts with Java KCL Enhanced Fan-Out Consumers HOT 2
- bug: LocalStack Glue Not Working(--exta-jars not found in classpath) HOT 1
- bug: Using IPv6 addresses in GATEWAY_LISTEN causes error HOT 1
- Trying to remtote debug
- bug: S3 – CopyObject to self hangs on bucket with VersioningConfiguration explicitly set to `Status: Suspended` HOT 4
- feature request: Support ItemBatcher in StepFunctions
- bug: Cannot list dynamodb streams on stream-enabled table HOT 1
- bug: API Gateway integration Issues GET Request to S3 Instead of PUT HOT 1
- bug: S3 Select on gzipped csv is erroring
- Multiple exceptions when deploying localstack (S3) to Kubernetes cluster via Kubeapps
- bug: localstack/localstack:lastest fails to startup HOT 10
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from localstack.