Обновление: создание функции шага из шаблона шага Map State и выполнение, которое также вызывает ошибку. Это убедительное свидетельство того, что атрибут MaxConcurrency
вместе со значением Parameters
не работает.
Я не могу успешно использовать атрибут MaxConcurrency
в определении ступенчатой функции.
Это можно продемонстрировать на примере, приведенном в документация для задачи карты (новая с 18 сентября 2019 г.):
{
"StartAt": "ExampleMapState",
"States": {
"ExampleMapState": {
"Type": "Map",
"MaxConcurrency": 2,
"Parameters": {
"ContextIndex.$": "$$.Map.Item.Index",
"ContextValue.$": "$$.Map.Item.Value"
},
"Iterator": {
"StartAt": "TestPass",
"States": {
"TestPass": {
"Type": "Pass",
"End": true
}
}
},
"End": true
}
}
}
Выполняя пошаговую функцию со следующим вводом:
[
{
"who": "bob"
},
{
"who": "meg"
},
{
"who": "joe"
}
]
Мы можем наблюдать в истории событий выполнения, что получаем:
ExecutionStarted
MapStateEntered
MapStateStarted
MapIterationStarted
(индекс 0)MapIterationStarted
(индекс 1)PassStateEntered
(индекс 0)PassStateExited
(индекс 0)MapIterationSucceeded
(индекс 0)ExecutionFailed
Пошаговая функция не работает. Шаг ExecutionFailed
имеет следующий результат (идентификатор выполнения опущен):
{
"error": "States.Runtime",
"cause": "Internal Error (omitted)"
}
Попытка отловить ошибку с помощью шага Catch не дает никакого эффекта.
Что я здесь делаю не так? Это ошибка?