docs: private KeyAwareLockPromise checkPendingAndLockKey(InvocationContext ctx, Object key, long lockTimeout) throws InterruptedException {
        final long remaining = pendingLockManager.awaitPendingTransactionsForKey((TxInvocationContext<?>) ctx, key,
                                                                                 lockTimeout, TimeUnit.MILLISECONDS);
        return lockAndRecord(ctx, key, remaining);
     }