diff --git a/src/main/java/org/springframework/integration/aws/lock/DynamoDbLockRegistry.java b/src/main/java/org/springframework/integration/aws/lock/DynamoDbLockRegistry.java index 667e8f7..5fd6db3 100644 --- a/src/main/java/org/springframework/integration/aws/lock/DynamoDbLockRegistry.java +++ b/src/main/java/org/springframework/integration/aws/lock/DynamoDbLockRegistry.java @@ -466,10 +466,12 @@ public class DynamoDbLockRegistry implements ExpirableLockRegistry, Initializing return false; } - long timeToWaitForLock = System.currentTimeMillis() - start + TimeUnit.MILLISECONDS.convert(time, unit); + long refreshPeriod = System.currentTimeMillis() - start + TimeUnit.MILLISECONDS.convert(time, unit); + long timeToWaitForLock = refreshPeriod - DynamoDbLockRegistry.this.leaseDuration; + this.acquireLockOptionsBuilder .withAdditionalTimeToWaitForLock(timeToWaitForLock) - .withRefreshPeriod(timeToWaitForLock); + .withRefreshPeriod(refreshPeriod); boolean acquired = false; try {