Fixed issue where some lambda and task memory sizes and timeouts were not configurable
Changed the naming conventions for memory size and timeouts configuration to simply the lambda name
However, that 2nd sub-bullet regarding a change of naming convention is perhaps worthy of listing as a Breaking Change. I didn't notice this until after we deployed the upgrade and noticed in our cloudwatch logs that the memory sizes of our lambdas no longer matched our configuration.
In app/stacks/cumulus/main.tf we must change the names of the keys within the local block (at the top of the file) for the variables lambda_timeouts and lambda_memory_sizes to be the actual names of the corresponding lambda functions. For example, discover_granules_task_timeout and discover_granules_task_memory_size should both be renamed to DiscoverGranules.
Note that we do not use all of the lambda functions listed in the variables lambda_timeouts and lambda_memory_sizes. To find the names of the lambda functions that we actually use, look at the names of the states within app/stacks/cumulus/templates/discover-granules-workflow.asl.json and app/stacks/cumulus/templates/ingest-and-publish-granule-workflow.asl.json and change the names within the variables lambda_timeouts and lambda_memory_sizes accordingly.
Any remaining keys within the variables lambda_timeouts and lambda_memory_sizes for which no corresponding state in the step function is found should be removed from the variables lambda_timeouts and lambda_memory_sizes because they are unused, and thus unnecessary. For example, we do not deal with pdrs, so the timeout and memory size settings related to pdrs can be removed.
In the Cumulus v18.1.0 release notes, the following is listed under "Fixed":
However, that 2nd sub-bullet regarding a change of naming convention is perhaps worthy of listing as a Breaking Change. I didn't notice this until after we deployed the upgrade and noticed in our cloudwatch logs that the memory sizes of our lambdas no longer matched our configuration.
In
app/stacks/cumulus/main.tf
we must change the names of the keys within thelocal
block (at the top of the file) for the variableslambda_timeouts
andlambda_memory_sizes
to be the actual names of the corresponding lambda functions. For example,discover_granules_task_timeout
anddiscover_granules_task_memory_size
should both be renamed toDiscoverGranules
.Note that we do not use all of the lambda functions listed in the variables
lambda_timeouts
andlambda_memory_sizes
. To find the names of the lambda functions that we actually use, look at the names of the states withinapp/stacks/cumulus/templates/discover-granules-workflow.asl.json
andapp/stacks/cumulus/templates/ingest-and-publish-granule-workflow.asl.json
and change the names within the variableslambda_timeouts
andlambda_memory_sizes
accordingly.Any remaining keys within the variables
lambda_timeouts
andlambda_memory_sizes
for which no corresponding state in the step function is found should be removed from the variableslambda_timeouts
andlambda_memory_sizes
because they are unused, and thus unnecessary. For example, we do not deal with pdrs, so the timeout and memory size settings related to pdrs can be removed.