This is an automated email from the ASF dual-hosted git repository.
jackietien pushed a commit to branch dev/1.3
in repository https://gitbox.apache.org/repos/asf/iotdb.git
The following commit(s) were added to refs/heads/dev/1.3 by this push:
new 7bb1049e671 [to dev/1.3] RegionMigrateProcedure and
RegionReconstructProcedure no longer acquire lock
7bb1049e671 is described below
commit 7bb1049e671462e8efe6ef4256adda747fab84f7
Author: Li Yu Heng <[email protected]>
AuthorDate: Fri Mar 21 15:16:07 2025 +0800
[to dev/1.3] RegionMigrateProcedure and RegionReconstructProcedure no
longer acquire lock
---
.../procedure/env/ConfigNodeProcedureEnv.java | 4 ---
.../procedure/env/RegionMaintainHandler.java | 8 ------
.../impl/region/ReconstructRegionProcedure.java | 33 ----------------------
.../impl/region/RegionMigrateProcedure.java | 33 ----------------------
4 files changed, 78 deletions(-)
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
index 5ae4a303037..b6f4fe35d9e 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/ConfigNodeProcedureEnv.java
@@ -874,10 +874,6 @@ public class ConfigNodeProcedureEnv {
return scheduler;
}
- public LockQueue getRegionMigrateLock() {
- return regionMaintainHandler.getRegionMigrateLock();
- }
-
public ReentrantLock getSchedulerLock() {
return schedulerLock;
}
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/RegionMaintainHandler.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/RegionMaintainHandler.java
index 21214460424..c1b7ecdab93 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/RegionMaintainHandler.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/env/RegionMaintainHandler.java
@@ -45,7 +45,6 @@ import
org.apache.iotdb.confignode.consensus.request.write.partition.RemoveRegio
import org.apache.iotdb.confignode.manager.ConfigManager;
import
org.apache.iotdb.confignode.manager.load.cache.consensus.ConsensusGroupHeartbeatSample;
import org.apache.iotdb.confignode.procedure.exception.ProcedureException;
-import org.apache.iotdb.confignode.procedure.scheduler.LockQueue;
import org.apache.iotdb.mpp.rpc.thrift.TCreatePeerReq;
import org.apache.iotdb.mpp.rpc.thrift.TMaintainPeerReq;
import org.apache.iotdb.mpp.rpc.thrift.TRegionLeaderChangeResp;
@@ -77,9 +76,6 @@ public class RegionMaintainHandler {
private final ConfigManager configManager;
- /** region migrate lock */
- private final LockQueue regionMigrateLock = new LockQueue();
-
private final IClientManager<TEndPoint, SyncDataNodeInternalServiceClient>
dataNodeClientManager;
public RegionMaintainHandler(ConfigManager configManager) {
@@ -447,10 +443,6 @@ public class RegionMaintainHandler {
return !isSucceed(status);
}
- public LockQueue getRegionMigrateLock() {
- return regionMigrateLock;
- }
-
/**
* Change the leader of given Region.
*
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/ReconstructRegionProcedure.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/ReconstructRegionProcedure.java
index e3ea3471887..003e0c407b1 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/ReconstructRegionProcedure.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/ReconstructRegionProcedure.java
@@ -28,7 +28,6 @@ import
org.apache.iotdb.confignode.procedure.env.ConfigNodeProcedureEnv;
import org.apache.iotdb.confignode.procedure.exception.ProcedureException;
import
org.apache.iotdb.confignode.procedure.exception.ProcedureSuspendedException;
import org.apache.iotdb.confignode.procedure.exception.ProcedureYieldException;
-import org.apache.iotdb.confignode.procedure.state.ProcedureLockState;
import org.apache.iotdb.confignode.procedure.state.ReconstructRegionState;
import org.apache.iotdb.confignode.procedure.store.ProcedureType;
import org.apache.iotdb.db.utils.DateTimeUtils;
@@ -125,38 +124,6 @@ public class ReconstructRegionProcedure extends
RegionOperationProcedure<Reconst
ConfigNodeProcedureEnv configNodeProcedureEnv, ReconstructRegionState
reconstructRegionState)
throws IOException, InterruptedException, ProcedureException {}
- @Override
- protected ProcedureLockState acquireLock(ConfigNodeProcedureEnv
configNodeProcedureEnv) {
- configNodeProcedureEnv.getSchedulerLock().lock();
- try {
- if (configNodeProcedureEnv.getRegionMigrateLock().tryLock(this)) {
- LOGGER.info("procedureId {} acquire lock.", getProcId());
- return ProcedureLockState.LOCK_ACQUIRED;
- }
- configNodeProcedureEnv.getRegionMigrateLock().waitProcedure(this);
-
- LOGGER.info("procedureId {} wait for lock.", getProcId());
- return ProcedureLockState.LOCK_EVENT_WAIT;
- } finally {
- configNodeProcedureEnv.getSchedulerLock().unlock();
- }
- }
-
- @Override
- protected void releaseLock(ConfigNodeProcedureEnv configNodeProcedureEnv) {
- configNodeProcedureEnv.getSchedulerLock().lock();
- try {
- LOGGER.info("procedureId {} release lock.", getProcId());
- if (configNodeProcedureEnv.getRegionMigrateLock().releaseLock(this)) {
- configNodeProcedureEnv
- .getRegionMigrateLock()
- .wakeWaitingProcedures(configNodeProcedureEnv.getScheduler());
- }
- } finally {
- configNodeProcedureEnv.getSchedulerLock().unlock();
- }
- }
-
@Override
public void serialize(DataOutputStream stream) throws IOException {
stream.writeShort(ProcedureType.RECONSTRUCT_REGION_PROCEDURE.getTypeCode());
diff --git
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/RegionMigrateProcedure.java
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/RegionMigrateProcedure.java
index 951d521784b..f4d5dce26b6 100644
---
a/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/RegionMigrateProcedure.java
+++
b/iotdb-core/confignode/src/main/java/org/apache/iotdb/confignode/procedure/impl/region/RegionMigrateProcedure.java
@@ -27,7 +27,6 @@ import org.apache.iotdb.commons.utils.ThriftCommonsSerDeUtils;
import org.apache.iotdb.confignode.procedure.env.ConfigNodeProcedureEnv;
import org.apache.iotdb.confignode.procedure.env.RegionMaintainHandler;
import org.apache.iotdb.confignode.procedure.exception.ProcedureException;
-import org.apache.iotdb.confignode.procedure.state.ProcedureLockState;
import org.apache.iotdb.confignode.procedure.state.RegionTransitionState;
import org.apache.iotdb.confignode.procedure.store.ProcedureType;
import org.apache.iotdb.db.utils.DateTimeUtils;
@@ -142,38 +141,6 @@ public class RegionMigrateProcedure extends
RegionOperationProcedure<RegionTrans
protected void rollbackState(ConfigNodeProcedureEnv env,
RegionTransitionState state)
throws IOException, InterruptedException, ProcedureException {}
- @Override
- protected ProcedureLockState acquireLock(ConfigNodeProcedureEnv
configNodeProcedureEnv) {
- configNodeProcedureEnv.getSchedulerLock().lock();
- try {
- if (configNodeProcedureEnv.getRegionMigrateLock().tryLock(this)) {
- LOGGER.info("procedureId {} acquire lock.", getProcId());
- return ProcedureLockState.LOCK_ACQUIRED;
- }
- configNodeProcedureEnv.getRegionMigrateLock().waitProcedure(this);
-
- LOGGER.info("procedureId {} wait for lock.", getProcId());
- return ProcedureLockState.LOCK_EVENT_WAIT;
- } finally {
- configNodeProcedureEnv.getSchedulerLock().unlock();
- }
- }
-
- @Override
- protected void releaseLock(ConfigNodeProcedureEnv configNodeProcedureEnv) {
- configNodeProcedureEnv.getSchedulerLock().lock();
- try {
- LOGGER.info("procedureId {} release lock.", getProcId());
- if (configNodeProcedureEnv.getRegionMigrateLock().releaseLock(this)) {
- configNodeProcedureEnv
- .getRegionMigrateLock()
- .wakeWaitingProcedures(configNodeProcedureEnv.getScheduler());
- }
- } finally {
- configNodeProcedureEnv.getSchedulerLock().unlock();
- }
- }
-
@Override
protected RegionTransitionState getState(int stateId) {
return RegionTransitionState.values()[stateId];