# HG changeset patch # User Alain Mazy # Date 1784712016 -7200 # Node ID 3c64e6768a587cb11d13e459693d3d5109d0f51d # Parent 6f6e2f9816066d13ea3884f45c2f34ece75a8bcd MaxRetries diff -r 6f6e2f981606 -r 3c64e6768a58 Aws/AwsS3StoragePlugin.cpp --- a/Aws/AwsS3StoragePlugin.cpp Thu Jul 16 16:22:07 2026 +0200 +++ b/Aws/AwsS3StoragePlugin.cpp Wed Jul 22 11:20:16 2026 +0200 @@ -30,6 +30,7 @@ #include #include #include +#include #include #include #include @@ -547,6 +548,7 @@ const unsigned int requestTimeout = pluginSection.GetUnsignedIntegerValue("RequestTimeout", 1200); const unsigned int maxConnections = pluginSection.GetUnsignedIntegerValue("MaxConnections", 25); + const unsigned int maxRetries = pluginSection.GetUnsignedIntegerValue("MaxRetries", 10); const bool virtualAddressing = pluginSection.GetBooleanValue("VirtualAddressing", true); const bool enableAwsSdkLogs = pluginSection.GetBooleanValue("EnableAwsSdkLogs", false); const std::string caFile = orthancConfig.GetStringValue("HttpsCACertificates", ""); @@ -578,6 +580,8 @@ configuration.requestTimeoutMs = requestTimeout * 1000; configuration.httpRequestTimeoutMs = requestTimeout * 1000; configuration.maxConnections = maxConnections; + configuration.retryStrategy = Aws::MakeShared(ALLOCATION_TAG, maxRetries); + if (!endpoint.empty()) { diff -r 6f6e2f981606 -r 3c64e6768a58 NEWS --- a/NEWS Thu Jul 16 16:22:07 2026 +0200 +++ b/NEWS Wed Jul 22 11:20:16 2026 +0200 @@ -4,6 +4,8 @@ * AWS plugin: * New configuration "MaxConnections" to define the size of the HTTP connection pool used by the AWS HTTP Client (default is 25). + * New configuration "MaxRetries" to define the number of retries for the AWS HTTP Client + (default is 10). 2026-06-22 - v 2.5.3 diff -r 6f6e2f981606 -r 3c64e6768a58 README.md --- a/README.md Thu Jul 16 16:22:07 2026 +0200 +++ b/README.md Wed Jul 22 11:20:16 2026 +0200 @@ -132,6 +132,7 @@ "ConnectionTimeout": 30, // optional: connection timeout in seconds "RequestTimeout": 1200, // optional: request timeout in seconds (max time to upload/download a file) "MaxConnections": 25, // optional: number of HTTP connections in the pool used by the AWS HTTP client. + "MaxRetries": 10, // optional: max number of retries for the AWS HTTP client. "RootPath": "", // optional: folder in which files are stored (ex: my/path/to/myfolder) "StorageEncryption" : {...}, // optional "StorageStructure" : "flat", // optional