Error: The client could not finish the operation within specified maximum execution timeout
The Azure IoT Hub Connector depends on an Internet connection to the Azure IoT Hub and Azure Blob Storage. If Internet connection is lost for 30 seconds or less, the Connector can reconnect to Azure and continue. However, several WARN messages appear in the log, saying that the client could not complete the job within the specified timeout. For example:
09:56:41.312 [[djc-hub|$Default|AzureIot-da3f7429-537a-4447-982d-4d01522961b8]-1-9]
WARN c.t.p.a.iot.AzureIotProtocolAdapter - EventProcessorHost raised exception;
hostname=AzureIot-da3f7429-537a-4447-982d-4d01522961b8, partition-id=3,
action=Renewing Lease com.microsoft.azure.storage.StorageException:
The client could not finish the operation within specified
maximum execution timeout.
at com.microsoft.azure.storage.core.ExecutionEngine.
executeWithRetry(ExecutionEngine.java:243)
at com.microsoft.azure.storage.blob.CloudBlob.
renewLease(CloudBlob.java:2761)
at com.microsoft.azure.eventprocessorhost.AzureStorageCheckpointLeaseManager.
renewLeaseInternal(AzureStorageCheckpointLeaseManager.java:521)
at com.microsoft.azure.eventprocessorhost.AzureStorageCheckpointLeaseManager.
renewLease(AzureStorageCheckpointLeaseManager.java:504)
at com.microsoft.azure.eventprocessorhost.PartitionPump.
leaseRenewer(PartitionPump.java:418)
at com.microsoft.azure.eventprocessorhost.PartitionPump.
lambda$scheduleLeaseRenewer$11(PartitionPump.java:167)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
access$201(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.
run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.util.concurrent.TimeoutException:
The client could not finish the operation within specified maximum execution timeout.
at com.microsoft.azure.storage.core.ExecutionEngine.
executeWithRetry(ExecutionEngine.java:242)
... 12 common frames omitted
If you refer to these messages in the logs, check the configuration of the execution timeout and consider increasing the number of milliseconds and retry the operation. If you change the configuration of the Connector or the AzureIotHub Thing, you MUST restart the Connector.