/* * Copyright 2018-2023 Amazon.com, Inc. or its affiliates. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance with * the License. A copy of the License is located at * * http://aws.amazon.com/apache2.0 * * or in the "license" file accompanying this file. This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR * CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions * and limitations under the License. */ package com.amazonaws.services.dynamodbv2.model; import javax.annotation.Generated; /** *
* The transaction with the given request token is already in progress. *
** Recommended Settings *
*
* This is a general recommendation for handling the TransactionInProgressException
. These settings help
* ensure that the client retries will trigger completion of the ongoing TransactWriteItems
request.
*
* Set clientExecutionTimeout
to a value that allows at least one retry to be processed after 5 seconds
* have elapsed since the first attempt for the TransactWriteItems
operation.
*
* Set socketTimeout
to a value a little lower than the requestTimeout
setting.
*
* requestTimeout
should be set based on the time taken for the individual retries of a single HTTP request
* for your use case, but setting it to 1 second or higher should work well to reduce chances of retries and
* TransactionInProgressException
errors.
*
* Use exponential backoff when retrying and tune backoff if needed. *
** Assuming default retry policy, example timeout settings based on the guidelines above are as follows: *
** Example timeline: *
** 0-1000 first attempt *
** 1000-1500 first sleep/delay (default retry policy uses 500 ms as base delay for 4xx errors) *
** 1500-2500 second attempt *
** 2500-3500 second sleep/delay (500 * 2, exponential backoff) *
** 3500-4500 third attempt *
** 4500-6500 third sleep/delay (500 * 2^2) *
** 6500-7500 fourth attempt (this can trigger inline recovery since 5 seconds have elapsed since the first attempt * reached TC) *
*