update - 暂时移除实例 ID 分布式锁

This commit is contained in:
wangli 2024-07-01 20:45:10 +08:00
parent 959361af55
commit c81ff4e58d

View File

@ -52,9 +52,11 @@ public class CustomLockProcessInstanceInterceptor extends AbstractCommandInterce
try {
do {
token = getLock(KEY_PREFIX + abstractCommand.getProcessInstanceId(), 10 * 1000, 11 * 1000);
log.info(" threadName: {}, token: {}", Thread.currentThread().getName(), token);
} while (Objects.isNull(token));
return next.execute(config, command, commandExecutor);
} finally {
log.info("finally unlock threadName: {}, token: {}", Thread.currentThread().getName(), token);
if (token != null) {
unlock(abstractCommand.getProcessInstanceId(), token);
}
@ -111,6 +113,10 @@ public class CustomLockProcessInstanceInterceptor extends AbstractCommandInterce
RedisStringCommands.SetOption.SET_IF_ABSENT); //如果name不存在创建
if (result != null && result)
return token;
} catch (Exception e) {
unlock(name, token);
log.warn("tryGetLock error: {}", e.getMessage(), e);
return null;
} finally {
RedisConnectionUtils.releaseConnection(conn, factory);
}