diff --git a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/ProcedureInfo.java b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/ProcedureInfo.java index 44be0571e28f..0f6b55f74998 100644 --- a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/ProcedureInfo.java +++ b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/persistence/ProcedureInfo.java @@ -135,7 +135,7 @@ public void upgrade() { public TSStatus updateProcedure(UpdateProcedurePlan updateProcedurePlan) { Procedure procedure = updateProcedurePlan.getProcedure(); procedureMap.put(procedure.getProcId(), procedure); - lastProcId.set(Math.max(lastProcId.get(), procedure.getProcId())); + lastProcId.updateAndGet(id -> Math.max(id, procedure.getProcId())); return new TSStatus(TSStatusCode.SUCCESS_STATUS.getStatusCode()); }