This is an automated email from the ASF dual-hosted git repository.

menghaoran pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shardingsphere.git


The following commit(s) were added to refs/heads/master by this push:
     new 0afc415174b Remove lock mode and lock scope (#19858)
0afc415174b is described below

commit 0afc415174b51d3ac980b4e16e07f41ac74463ad
Author: gin <[email protected]>
AuthorDate: Thu Aug 4 13:23:08 2022 +0800

    Remove lock mode and lock scope (#19858)
---
 .../shardingsphere/infra/lock/LockContext.java     |  3 +-
 .../shardingsphere/infra/lock/LockDefinition.java  |  7 ---
 .../apache/shardingsphere/infra/lock/LockMode.java | 26 ----------
 .../shardingsphere/infra/lock/LockScope.java       | 26 ----------
 .../rulealtered/RuleAlteredJobPreparer.java        |  3 +-
 .../lock/definition/DatabaseLockDefinition.java    |  3 --
 .../lock/definition/LockDefinitionFactory.java     |  3 +-
 .../coordinator/lock/DistributedLockContext.java   |  5 +-
 .../ShardingSphereDistributedStandardLock.java     | 58 ----------------------
 .../ShardingSphereDistributedLockManager.java      | 30 ++---------
 .../lock/manager/ShardingSphereLockManager.java    |  4 +-
 .../lock/DistributedLockContextTest.java           |  5 +-
 ...dingSphereDistributedGlobalLockManagerTest.java | 15 ++----
 .../standalone/lock/StandaloneLockContext.java     |  3 +-
 14 files changed, 18 insertions(+), 173 deletions(-)

diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockContext.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockContext.java
index c9f330b67bd..a2ee03fa24e 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockContext.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockContext.java
@@ -35,10 +35,9 @@ public interface LockContext {
     /**
      * Get lock.
      *
-     * @param lockScope lock scope
      * @return lock
      */
-    ShardingSphereLock getLock(LockScope lockScope);
+    ShardingSphereLock getLock();
     
     /**
      * Try lock.
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockDefinition.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockDefinition.java
index edd26835d19..d21ccb53c1b 100644
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockDefinition.java
+++ 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockDefinition.java
@@ -22,13 +22,6 @@ package org.apache.shardingsphere.infra.lock;
  */
 public interface LockDefinition {
     
-    /**
-     * Get lock mode.
-     *
-     * @return lock mode
-     */
-    LockMode getLockMode();
-    
     /**
      * Get lock name definition.
      *
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockMode.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockMode.java
deleted file mode 100644
index 84436b2c815..00000000000
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockMode.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.infra.lock;
-
-/**
- * Lock mode.
- */
-public enum LockMode {
-    
-    READ, WRITE
-}
diff --git 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockScope.java
 
b/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockScope.java
deleted file mode 100644
index 49e845342f6..00000000000
--- 
a/shardingsphere-infra/shardingsphere-infra-common/src/main/java/org/apache/shardingsphere/infra/lock/LockScope.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package org.apache.shardingsphere.infra.lock;
-
-/**
- * Lock scope.
- */
-public enum LockScope {
-    
-    STANDARD, GLOBAL
-}
diff --git 
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/rulealtered/RuleAlteredJobPreparer.java
 
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/rulealtered/RuleAlteredJobPreparer.java
index 7c0f1716a4a..70c03e06b6e 100644
--- 
a/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/rulealtered/RuleAlteredJobPreparer.java
+++ 
b/shardingsphere-kernel/shardingsphere-data-pipeline/shardingsphere-data-pipeline-core/src/main/java/org/apache/shardingsphere/data/pipeline/scenario/rulealtered/RuleAlteredJobPreparer.java
@@ -51,7 +51,6 @@ import 
org.apache.shardingsphere.infra.database.type.DatabaseType;
 import org.apache.shardingsphere.infra.database.type.DatabaseTypeFactory;
 import 
org.apache.shardingsphere.infra.datasource.pool.creator.DataSourcePoolCreator;
 import org.apache.shardingsphere.infra.datasource.props.DataSourceProperties;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import 
org.apache.shardingsphere.infra.yaml.config.swapper.YamlDataSourceConfigurationSwapper;
 import 
org.apache.shardingsphere.scaling.core.job.persist.AsyncPipelineJobPersistCallback;
@@ -105,7 +104,7 @@ public final class RuleAlteredJobPreparer {
         RuleAlteredJobConfiguration jobConfig = jobContext.getJobConfig();
         // TODO the lock will be replaced
         String lockName = "prepare-" + jobConfig.getJobId();
-        ShardingSphereLock lock = 
PipelineContext.getContextManager().getInstanceContext().getLockContext().getLock(LockScope.GLOBAL);
+        ShardingSphereLock lock = 
PipelineContext.getContextManager().getInstanceContext().getLockContext().getLock();
         if (lock.tryLock(lockName, 3000)) {
             try {
                 prepareAndCheckTarget(jobContext);
diff --git 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/DatabaseLockDefinition.java
 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/DatabaseLockDefinition.java
index deed8bfac69..87b878c435c 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/DatabaseLockDefinition.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/DatabaseLockDefinition.java
@@ -19,7 +19,6 @@ package 
org.apache.shardingsphere.mode.manager.lock.definition;
 
 import lombok.Getter;
 import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.infra.lock.LockMode;
 import org.apache.shardingsphere.infra.lock.LockDefinition;
 
 /**
@@ -29,7 +28,5 @@ import org.apache.shardingsphere.infra.lock.LockDefinition;
 @Getter
 public final class DatabaseLockDefinition implements LockDefinition {
     
-    private final LockMode lockMode;
-    
     private final DatabaseLockNameDefinition lockNameDefinition;
 }
diff --git 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/LockDefinitionFactory.java
 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/LockDefinitionFactory.java
index 38a4df328ea..052354dc5a5 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/LockDefinitionFactory.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/lock/definition/LockDefinitionFactory.java
@@ -19,7 +19,6 @@ package 
org.apache.shardingsphere.mode.manager.lock.definition;
 
 import lombok.AccessLevel;
 import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.infra.lock.LockMode;
 import org.apache.shardingsphere.infra.lock.LockDefinition;
 
 /**
@@ -35,6 +34,6 @@ public final class LockDefinitionFactory {
      * @return database lock definition
      */
     public static LockDefinition newDatabaseLockDefinition(final String 
databaseName) {
-        return new DatabaseLockDefinition(LockMode.READ, new 
DatabaseLockNameDefinition(databaseName));
+        return new DatabaseLockDefinition(new 
DatabaseLockNameDefinition(databaseName));
     }
 }
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContext.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContext.java
index deda4510195..3b0afc9135a 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContext.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContext.java
@@ -20,7 +20,6 @@ package 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock;
 import lombok.RequiredArgsConstructor;
 import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
 import org.apache.shardingsphere.infra.instance.InstanceContext;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.ShardingSphereLockManager;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.internal.ShardingSphereInternalLockHolder;
@@ -55,8 +54,8 @@ public final class DistributedLockContext extends 
AbstractLockContext {
     }
     
     @Override
-    public ShardingSphereLock getLock(final LockScope lockScope) {
-        return lockManager.getDistributedLock(lockScope);
+    public ShardingSphereLock getLock() {
+        return lockManager.getDistributedLock();
     }
     
     @Override
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/distributed/ShardingSphereDistributedStandardLock.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/distributed/ShardingSphereDistributedStandardLock.java
deleted file mode 100644
index 0329f08ce57..00000000000
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/distributed/ShardingSphereDistributedStandardLock.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.distributed;
-
-import lombok.RequiredArgsConstructor;
-import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.LockNodeService;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.internal.ShardingSphereInternalLockHolder;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.service.LockNodeServiceFactory;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.util.LockNodeType;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.util.TimeoutMilliseconds;
-
-/**
- * Distribute standard lock of ShardingSphere.
- */
-@RequiredArgsConstructor
-public final class ShardingSphereDistributedStandardLock implements 
ShardingSphereLock {
-    
-    private final LockNodeService lockNodeService = 
LockNodeServiceFactory.getInstance().getLockNodeService(LockNodeType.DISTRIBUTED);
-    
-    private final ShardingSphereInternalLockHolder lockHolder;
-    
-    @Override
-    public boolean tryLock(final String lockName) {
-        return tryLock(lockName, TimeoutMilliseconds.MAX_TRY_LOCK);
-        
-    }
-    
-    @Override
-    public boolean tryLock(final String lockName, final long timeoutMillis) {
-        return 
lockHolder.getOrCreateInterReentrantMutexLock(lockNodeService.generateLocksName(lockName)).tryLock(timeoutMillis);
-    }
-    
-    @Override
-    public void releaseLock(final String lockName) {
-        
lockHolder.getOrCreateInterReentrantMutexLock(lockNodeService.generateLocksName(lockName)).unlock();
-    }
-    
-    @Override
-    public boolean isLocked(final String lockName) {
-        throw new UnsupportedOperationException();
-    }
-}
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedLockManager.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedLockManager.java
index 05492d29ef0..5f1c1ce13ff 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedLockManager.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedLockManager.java
@@ -20,13 +20,10 @@ package 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager;
 import com.google.common.base.Preconditions;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
-import org.apache.shardingsphere.infra.lock.LockMode;
 import org.apache.shardingsphere.infra.lock.LockNameDefinition;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.database.ShardingSphereDistributedDatabaseLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.distributed.ShardingSphereDistributedGlobalLock;
-import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.distributed.ShardingSphereDistributedStandardLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.state.LockStateContext;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.state.LockStateContextFactory;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.internal.ShardingSphereInternalLockHolder;
@@ -42,8 +39,6 @@ public final class ShardingSphereDistributedLockManager 
implements ShardingSpher
     
     private LockStateContext lockStateContext;
     
-    private ShardingSphereLock standardDistributedLock;
-    
     private ShardingSphereLock globalDistributedLock;
     
     private ShardingSphereLock databaseLock;
@@ -51,21 +46,13 @@ public final class ShardingSphereDistributedLockManager 
implements ShardingSpher
     @Override
     public void init(final ShardingSphereInternalLockHolder lockHolder, final 
EventBusContext eventBusContext) {
         lockStateContext = LockStateContextFactory.getLockStateContext();
-        standardDistributedLock = new 
ShardingSphereDistributedStandardLock(lockHolder);
         globalDistributedLock = new 
ShardingSphereDistributedGlobalLock(lockHolder, eventBusContext);
         databaseLock = new ShardingSphereDistributedDatabaseLock(lockHolder, 
lockStateContext, eventBusContext);
     }
     
     @Override
-    public ShardingSphereLock getDistributedLock(final LockScope lockScope) {
-        switch (lockScope) {
-            case STANDARD:
-                return standardDistributedLock;
-            case GLOBAL:
-                return globalDistributedLock;
-            default:
-                throw new UnsupportedOperationException();
-        }
+    public ShardingSphereLock getDistributedLock() {
+        return globalDistributedLock;
     }
     
     @Override
@@ -77,19 +64,12 @@ public final class ShardingSphereDistributedLockManager 
implements ShardingSpher
     @Override
     public boolean tryLock(final DatabaseLockDefinition lockDefinition, final 
long timeoutMilliseconds) {
         Preconditions.checkNotNull(lockDefinition, "Try Lock for database arg 
lock definition can not be null.");
-        return innerTryLock(lockDefinition.getLockMode(), 
lockDefinition.getLockNameDefinition(), timeoutMilliseconds);
+        return innerTryLock(lockDefinition.getLockNameDefinition(), 
timeoutMilliseconds);
     }
     
-    private synchronized boolean innerTryLock(final LockMode lockMode, final 
DatabaseLockNameDefinition lockNameDefinition, final long timeoutMilliseconds) {
+    private synchronized boolean innerTryLock(final DatabaseLockNameDefinition 
lockNameDefinition, final long timeoutMilliseconds) {
         Preconditions.checkNotNull(lockNameDefinition, "Try Lock for database 
arg database name can not be null.");
-        Preconditions.checkNotNull(lockMode, "Try Lock for database args lock 
mode can not be null.");
-        switch (lockMode) {
-            case READ:
-                return 
innerDatabaseTryLock(lockNameDefinition.getDatabaseName(), timeoutMilliseconds);
-            case WRITE:
-            default:
-                throw new UnsupportedOperationException();
-        }
+        return innerDatabaseTryLock(lockNameDefinition.getDatabaseName(), 
timeoutMilliseconds);
     }
     
     private boolean innerDatabaseTryLock(final String databaseName, final long 
timeoutMilliseconds) {
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereLockManager.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereLockManager.java
index ce21ce33a57..7a87cc4a4d2 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereLockManager.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereLockManager.java
@@ -18,7 +18,6 @@
 package 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager;
 
 import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.internal.ShardingSphereInternalLockHolder;
 import 
org.apache.shardingsphere.mode.manager.lock.definition.DatabaseLockDefinition;
@@ -42,10 +41,9 @@ public interface ShardingSphereLockManager extends 
RequiredSPI {
     /**
      * Get distributed lock.
      *
-     * @param lockScope lock scope
      * @return distributed lock
      */
-    ShardingSphereLock getDistributedLock(LockScope lockScope);
+    ShardingSphereLock getDistributedLock();
     
     /**
      * Try lock for database.
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContextTest.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContextTest.java
index 3d312358c3f..ff2da7083b3 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContextTest.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/DistributedLockContextTest.java
@@ -23,7 +23,6 @@ import 
org.apache.shardingsphere.infra.instance.ComputeNodeInstance;
 import org.apache.shardingsphere.infra.instance.InstanceContext;
 import 
org.apache.shardingsphere.infra.instance.metadata.proxy.ProxyInstanceMetaData;
 import org.apache.shardingsphere.infra.instance.workerid.WorkerIdGenerator;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import 
org.apache.shardingsphere.mode.manager.lock.definition.LockDefinitionFactory;
 import 
org.apache.shardingsphere.mode.repository.cluster.ClusterPersistRepository;
@@ -44,7 +43,7 @@ public final class DistributedLockContextTest {
         DistributedLockContext distributedLockContext = new 
DistributedLockContext(mock(ClusterPersistRepository.class));
         ComputeNodeInstance currentInstance = new ComputeNodeInstance(new 
ProxyInstanceMetaData("1", 3307));
         new InstanceContext(currentInstance, mock(WorkerIdGenerator.class), 
mock(ModeConfiguration.class), distributedLockContext, eventBusContext);
-        assertThat(distributedLockContext.getLock(LockScope.GLOBAL), 
instanceOf(ShardingSphereLock.class));
+        assertThat(distributedLockContext.getLock(), 
instanceOf(ShardingSphereLock.class));
     }
     
     @Test
@@ -52,7 +51,7 @@ public final class DistributedLockContextTest {
         ComputeNodeInstance currentInstance = new ComputeNodeInstance(new 
ProxyInstanceMetaData("1", 3307));
         DistributedLockContext distributedLockContext = new 
DistributedLockContext(mock(ClusterPersistRepository.class));
         new InstanceContext(currentInstance, mock(WorkerIdGenerator.class), 
mock(ModeConfiguration.class), distributedLockContext, eventBusContext);
-        assertNotNull(distributedLockContext.getLock(LockScope.GLOBAL));
+        assertNotNull(distributedLockContext.getLock());
     }
     
     @Test
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedGlobalLockManagerTest.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedGlobalLockManager
 [...]
index 7d262938814..7ad57808706 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedGlobalLockManagerTest.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-cluster-mode/shardingsphere-cluster-mode-core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/lock/manager/ShardingSphereDistributedGlobalLockManagerTest.java
@@ -17,8 +17,6 @@
 
 package 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager;
 
-import org.apache.shardingsphere.infra.lock.LockMode;
-import org.apache.shardingsphere.infra.lock.LockScope;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.database.ShardingSphereDistributedDatabaseLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.distributed.ShardingSphereDistributedGlobalLock;
 import 
org.apache.shardingsphere.mode.manager.cluster.coordinator.lock.manager.state.ShardingSphereLockStateContext;
@@ -59,26 +57,21 @@ public final class 
ShardingSphereDistributedGlobalLockManagerTest {
     
     @Test
     public void assertGetDistributedLock() {
-        
assertNotNull(shardingSphereDistributedLockManager.getDistributedLock(LockScope.GLOBAL));
+        
assertNotNull(shardingSphereDistributedLockManager.getDistributedLock());
     }
     
     @Test
     public void assertTryReadLock() {
-        assertTrue(shardingSphereDistributedLockManager.tryLock(new 
DatabaseLockDefinition(LockMode.READ, new 
DatabaseLockNameDefinition("databaseName")), 3000L));
-    }
-    
-    @Test(expected = UnsupportedOperationException.class)
-    public void assertTryWriteLock() {
-        shardingSphereDistributedLockManager.tryLock(new 
DatabaseLockDefinition(LockMode.WRITE, new 
DatabaseLockNameDefinition("databaseName")), 3000L);
+        assertTrue(shardingSphereDistributedLockManager.tryLock(new 
DatabaseLockDefinition(new DatabaseLockNameDefinition("databaseName")), 3000L));
     }
     
     @Test
     public void assertReleaseLock() {
-        shardingSphereDistributedLockManager.releaseLock(new 
DatabaseLockDefinition(LockMode.READ, new 
DatabaseLockNameDefinition("databaseName")));
+        shardingSphereDistributedLockManager.releaseLock(new 
DatabaseLockDefinition(new DatabaseLockNameDefinition("databaseName")));
     }
     
     @Test
     public void assertIsLocked() {
-        assertFalse(shardingSphereDistributedLockManager.isLocked(new 
DatabaseLockDefinition(LockMode.READ, new 
DatabaseLockNameDefinition("databaseName"))));
+        assertFalse(shardingSphereDistributedLockManager.isLocked(new 
DatabaseLockDefinition(new DatabaseLockNameDefinition("databaseName"))));
     }
 }
diff --git 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-standalone-mode/shardingsphere-standalone-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/lock/StandaloneLockContext.java
 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-standalone-mode/shardingsphere-standalone-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/lock/StandaloneLockContext.java
index 3336e66ad6b..9b47685e075 100644
--- 
a/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-standalone-mode/shardingsphere-standalone-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/lock/StandaloneLockContext.java
+++ 
b/shardingsphere-mode/shardingsphere-mode-type/shardingsphere-standalone-mode/shardingsphere-standalone-mode-core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/lock/StandaloneLockContext.java
@@ -17,7 +17,6 @@
 
 package org.apache.shardingsphere.mode.manager.standalone.lock;
 
-import org.apache.shardingsphere.infra.lock.LockScope;
 import org.apache.shardingsphere.infra.lock.ShardingSphereLock;
 import org.apache.shardingsphere.mode.manager.lock.AbstractLockContext;
 import 
org.apache.shardingsphere.mode.manager.lock.definition.DatabaseLockDefinition;
@@ -30,7 +29,7 @@ public final class StandaloneLockContext extends 
AbstractLockContext {
     private final ShardingSphereLock standaloneLock = new 
ShardingSphereStandaloneLock();
     
     @Override
-    public ShardingSphereLock getLock(final LockScope lockScope) {
+    public ShardingSphereLock getLock() {
         return standaloneLock;
     }
     

Reply via email to