alibaba/nacos · error · NacosLockException

lockType: {} is not exist.

Error message

lockType: {} is not exist.

What it means

Error "lockType: {} is not exist." thrown in alibaba/nacos.

Source

Thrown at lock/src/main/java/com/alibaba/nacos/lock/NacosLockManager.java:59

    private final Map<String, LockFactory> factoryMap;
    
    private final ConcurrentHashMap<LockKey, AtomicLockService> atomicLockMap =
        new ConcurrentHashMap<>();
    
    public NacosLockManager() {
        Collection<LockFactory> factories = NacosServiceLoader.load(LockFactory.class);
        factoryMap = factories.stream()
            .collect(
                Collectors.toConcurrentMap(LockFactory::getLockType, lockFactory -> lockFactory));
    }
    
    @Override
    public AtomicLockService getMutexLock(LockKey lockKey) {
        if (lockKey == null || lockKey.getLockType() == null || lockKey.getKey() == null) {
            throw new NacosLockException("lockType or lockKey is null.");
        }
        if (!factoryMap.containsKey(lockKey.getLockType())) {
            throw new NacosLockException("lockType: " + lockKey.getLockType() + " is not exist.");
        }
        return atomicLockMap.computeIfAbsent(lockKey, lock -> {
            LockFactory lockFactory = factoryMap.get(lock.getLockType());
            return lockFactory.createLock(lock.getKey());
        });
    }
    
    @Override
    public Map<LockKey, AtomicLockService> showLocks() {
        return Collections.unmodifiableMap(atomicLockMap);
    }
    
    /**
     * Return the raw mutable lock map for internal use (snapshot load/save).
     *
     * @return the mutable lock map
     */
    public ConcurrentHashMap<LockKey, AtomicLockService> getRawLockMap() {

View on GitHub (pinned to 9b989acdf1)

Solutions

  1. Verify the resource identifiers (namespace, name, version) and that the resource exists before retrying.

When it happens

Trigger: Thrown at lock/src/main/java/com/alibaba/nacos/lock/NacosLockManager.java:59 when the library encounters an invalid state.

Common situations: Acquiring a lock of a type that is not registered.


AI-assisted analysis of alibaba/nacos@9b989acdf1 (2026-08-14). Data as JSON: /api/errors/3ccbf7c47e096340. Report an issue: GitHub.