diff --git a/lambda-invoker/src/main/java/com/networknt/aws/lambda/LambdaFunctionHandler.java b/lambda-invoker/src/main/java/com/networknt/aws/lambda/LambdaFunctionHandler.java index af5aff0..2f69372 100644 --- a/lambda-invoker/src/main/java/com/networknt/aws/lambda/LambdaFunctionHandler.java +++ b/lambda-invoker/src/main/java/com/networknt/aws/lambda/LambdaFunctionHandler.java @@ -62,8 +62,12 @@ public LambdaFunctionHandler() { if(config.getMaxRetries() > 0) { overrideConfig = overrideConfig.toBuilder() .retryStrategy(DefaultRetryStrategy.standardStrategyBuilder() - .maxAttempts(config.getMaxRetries()) - .build()) + .maxAttempts(config.getMaxRetries() + 1) // +1 because the first attempt is not counted as a retry + .build()) + .build(); + } else { + overrideConfig = overrideConfig.toBuilder() + .retryStrategy(DefaultRetryStrategy.doNotRetry()) .build(); } diff --git a/lambda-invoker/src/main/resources/config/lambda-invoker.yml b/lambda-invoker/src/main/resources/config/lambda-invoker.yml index afc1f33..935ba90 100644 --- a/lambda-invoker/src/main/resources/config/lambda-invoker.yml +++ b/lambda-invoker/src/main/resources/config/lambda-invoker.yml @@ -7,8 +7,9 @@ endpointOverride: ${lambda-invoker.endpointOverride:} apiCallTimeout: ${lambda-invoker.apiCallTimeout:60000} # Api call attempt timeout in milliseconds. This sets the amount of time for each individual attempt. apiCallAttemptTimeout: ${lambda-invoker.apiCallAttemptTimeout:20000} -# The maximum number of retries for the Lambda function invocation. Default is 3. Set to 0 to disable retries. -maxRetries: ${lambda-invoker.maxRetries:3} +# The maximum number of retries for the Lambda function invocation. Default is 2, which equals to 3 max attempts. +# Set to 0 to disable retries so that the Lambda function is invoked only once. +maxRetries: ${lambda-invoker.maxRetries:2} # The maximum number of concurrent requests that can be made to Lambda. Default is 50. maxConcurrency: ${lambda-invoker.maxConcurrency:50} # The maximum number of pending acquires allowed. Default is 10000.