You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by pa...@apache.org on 2023/04/30 14:27:45 UTC

[shardingsphere] branch master updated: Rename ShowProcessListLock (#25421)

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

panjuan 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 c7191f6187d Rename ShowProcessListLock (#25421)
c7191f6187d is described below

commit c7191f6187d99b356430c65e25d7008383eead25
Author: Liang Zhang <zh...@apache.org>
AuthorDate: Sun Apr 30 22:27:38 2023 +0800

    Rename ShowProcessListLock (#25421)
---
 ...Sphere\342\200\231s_Show_processlist_&_Kill_Work.en.md" | 12 ++++++------
 .../infra/executor/sql/process/ShowProcessListManager.java |  7 ++++---
 ...ProcessListSimpleLock.java => ShowProcessListLock.java} |  4 ++--
 .../process/subscriber/ProcessRegistrySubscriber.java      | 12 ++++++------
 .../subscriber/ProcessListChangedSubscriber.java           | 14 +++++++-------
 .../subscriber/ProcessListChangedSubscriberTest.java       |  6 +++---
 .../standalone/subscriber/ProcessStandaloneSubscriber.java |  2 +-
 .../subscriber/ProcessStandaloneSubscriberTest.java        |  2 +-
 8 files changed, 30 insertions(+), 29 deletions(-)

diff --git "a/docs/blog/content/material/2022_09_22_How_does_ShardingSphere\342\200\231s_Show_processlist_&_Kill_Work.en.md" "b/docs/blog/content/material/2022_09_22_How_does_ShardingSphere\342\200\231s_Show_processlist_&_Kill_Work.en.md"
index 25a791bb0ca..e676b2ec1d0 100644
--- "a/docs/blog/content/material/2022_09_22_How_does_ShardingSphere\342\200\231s_Show_processlist_&_Kill_Work.en.md"
+++ "b/docs/blog/content/material/2022_09_22_How_does_ShardingSphere\342\200\231s_Show_processlist_&_Kill_Work.en.md"
@@ -330,9 +330,9 @@ public final class ClusterContextManagerCoordinator {
     
     @Subscribe
     public synchronized void completeUnitShowProcessList(final ShowProcessListUnitCompleteEvent event) {
-        ShowProcessListSimpleLock simpleLock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
-        if (null != simpleLock) {
-            simpleLock.doNotify();
+        ShowProcessListLock lock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
+        if (null != lock) {
+            lock.doNotify();
         }
     }
 }
@@ -349,9 +349,9 @@ public final class ClusterContextManagerCoordinator {
     
     @Subscribe
     public synchronized void completeUnitShowProcessList(final ShowProcessListUnitCompleteEvent event) {
-        ShowProcessListSimpleLock simpleLock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
-        if (null != simpleLock) {
-            simpleLock.doNotify();
+        ShowProcessListLock lock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
+        if (null != lock) {
+            lock.doNotify();
         }
     }
 }
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ShowProcessListManager.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ShowProcessListManager.java
index 7d14297168b..265e36d13f4 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ShowProcessListManager.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ShowProcessListManager.java
@@ -20,7 +20,7 @@ package org.apache.shardingsphere.infra.executor.sql.process;
 import lombok.AccessLevel;
 import lombok.Getter;
 import lombok.NoArgsConstructor;
-import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListSimpleLock;
+import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListLock;
 
 import java.sql.Statement;
 import java.util.Collection;
@@ -32,16 +32,17 @@ import java.util.concurrent.ConcurrentHashMap;
  * Show process list manager.
  */
 @NoArgsConstructor(access = AccessLevel.PRIVATE)
-@Getter
 public final class ShowProcessListManager {
     
     private static final ShowProcessListManager INSTANCE = new ShowProcessListManager();
     
     private final Map<String, ProcessContext> processContexts = new ConcurrentHashMap<>();
     
+    @Getter
     private final Map<String, Collection<Statement>> processStatements = new ConcurrentHashMap<>();
     
-    private final Map<String, ShowProcessListSimpleLock> locks = new ConcurrentHashMap<>();
+    @Getter
+    private final Map<String, ShowProcessListLock> locks = new ConcurrentHashMap<>();
     
     /**
      * Get show process list manager.
diff --git a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListSimpleLock.java b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListLock.java
similarity index 95%
rename from infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListSimpleLock.java
rename to infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListLock.java
index 412d7268790..8a1d3e67f66 100644
--- a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListSimpleLock.java
+++ b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/lock/ShowProcessListLock.java
@@ -25,9 +25,9 @@ import java.util.concurrent.locks.Lock;
 import java.util.concurrent.locks.ReentrantLock;
 
 /**
- * Show process list simple lock.
+ * Show process list lock.
  */
-public final class ShowProcessListSimpleLock {
+public final class ShowProcessListLock {
     
     private static final long DEFAULT_TIMEOUT_MILLISECONDS = 5000L;
     
diff --git a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/registry/process/subscriber/ProcessRegistrySubscriber.java b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/registry/process/subscriber/ProcessRegistrySubscriber.java
index 10205b424d3..e3e6f279885 100644
--- a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/registry/process/subscriber/ProcessRegistrySubscriber.java
+++ b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/registry/process/subscriber/ProcessRegistrySubscriber.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.mode.manager.cluster.coordinator.registry.proc
 
 import com.google.common.eventbus.Subscribe;
 import org.apache.shardingsphere.infra.executor.sql.process.ShowProcessListManager;
-import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListSimpleLock;
+import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListLock;
 import org.apache.shardingsphere.infra.instance.metadata.InstanceType;
 import org.apache.shardingsphere.infra.util.eventbus.EventBusContext;
 import org.apache.shardingsphere.metadata.persist.node.ComputeNode;
@@ -117,18 +117,18 @@ public final class ProcessRegistrySubscriber {
     }
     
     private boolean waitAllNodeDataReady(final String processId, final Collection<String> paths) {
-        ShowProcessListSimpleLock simpleLock = new ShowProcessListSimpleLock();
-        ShowProcessListManager.getInstance().getLocks().put(processId, simpleLock);
-        simpleLock.lock();
+        ShowProcessListLock lock = new ShowProcessListLock();
+        ShowProcessListManager.getInstance().getLocks().put(processId, lock);
+        lock.lock();
         try {
             while (!isReady(paths)) {
-                if (!simpleLock.awaitDefaultTime()) {
+                if (!lock.awaitDefaultTime()) {
                     return false;
                 }
             }
             return true;
         } finally {
-            simpleLock.unlock();
+            lock.unlock();
             ShowProcessListManager.getInstance().getLocks().remove(processId);
         }
     }
diff --git a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriber.java b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriber.java
index 890a7507c09..f5db97ce0b6 100644
--- a/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriber.java
+++ b/mode/type/cluster/core/src/main/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriber.java
@@ -19,7 +19,7 @@ package org.apache.shardingsphere.mode.manager.cluster.coordinator.subscriber;
 
 import com.google.common.eventbus.Subscribe;
 import org.apache.shardingsphere.infra.executor.sql.process.ShowProcessListManager;
-import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListSimpleLock;
+import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListLock;
 import org.apache.shardingsphere.infra.executor.sql.process.ProcessContext;
 import org.apache.shardingsphere.infra.executor.sql.process.yaml.swapper.YamlProcessListContextsSwapper;
 import org.apache.shardingsphere.infra.util.yaml.YamlEngine;
@@ -97,9 +97,9 @@ public final class ProcessListChangedSubscriber {
      */
     @Subscribe
     public synchronized void completeUnitShowProcessList(final ShowProcessListUnitCompleteEvent event) {
-        ShowProcessListSimpleLock simpleLock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
-        if (null != simpleLock) {
-            simpleLock.doNotify();
+        ShowProcessListLock lock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
+        if (null != lock) {
+            lock.doNotify();
         }
     }
     
@@ -110,9 +110,9 @@ public final class ProcessListChangedSubscriber {
      */
     @Subscribe
     public synchronized void completeUnitKillProcessId(final KillProcessIdUnitCompleteEvent event) {
-        ShowProcessListSimpleLock simpleLock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
-        if (null != simpleLock) {
-            simpleLock.doNotify();
+        ShowProcessListLock lock = ShowProcessListManager.getInstance().getLocks().get(event.getProcessId());
+        if (null != lock) {
+            lock.doNotify();
         }
     }
 }
diff --git a/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriberTest.java b/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriberTest.java
index d9650fa39bf..57921275ece 100644
--- a/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriberTest.java
+++ b/mode/type/cluster/core/src/test/java/org/apache/shardingsphere/mode/manager/cluster/coordinator/subscriber/ProcessListChangedSubscriberTest.java
@@ -21,7 +21,7 @@ import org.apache.shardingsphere.infra.config.mode.ModeConfiguration;
 import org.apache.shardingsphere.infra.config.props.ConfigurationProperties;
 import org.apache.shardingsphere.infra.database.type.dialect.MySQLDatabaseType;
 import org.apache.shardingsphere.infra.executor.sql.process.ShowProcessListManager;
-import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListSimpleLock;
+import org.apache.shardingsphere.infra.executor.sql.process.lock.ShowProcessListLock;
 import org.apache.shardingsphere.infra.executor.sql.process.ProcessContext;
 import org.apache.shardingsphere.infra.instance.metadata.InstanceMetaData;
 import org.apache.shardingsphere.infra.instance.metadata.proxy.ProxyInstanceMetaData;
@@ -101,7 +101,7 @@ class ProcessListChangedSubscriberTest {
     @Test
     void assertCompleteUnitShowProcessList() {
         String processId = "foo_process_id";
-        ShowProcessListSimpleLock lock = new ShowProcessListSimpleLock();
+        ShowProcessListLock lock = new ShowProcessListLock();
         ShowProcessListManager.getInstance().getLocks().put(processId, lock);
         long startTime = System.currentTimeMillis();
         ExecutorService executorService = Executors.newFixedThreadPool(1);
@@ -140,7 +140,7 @@ class ProcessListChangedSubscriberTest {
         verify(repository).delete("/nodes/compute_nodes/process_kill/" + instanceId + ":foo_process_id");
     }
     
-    private void lockAndAwaitDefaultTime(final ShowProcessListSimpleLock lock) {
+    private void lockAndAwaitDefaultTime(final ShowProcessListLock lock) {
         lock.lock();
         try {
             lock.awaitDefaultTime();
diff --git a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriber.java b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriber.java
index abc4e2877ff..0b7d1f6df13 100644
--- a/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriber.java
+++ b/mode/type/standalone/core/src/main/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriber.java
@@ -55,7 +55,7 @@ public final class ProcessStandaloneSubscriber {
      */
     @Subscribe
     public void loadShowProcessListData(final ShowProcessListRequestEvent event) {
-        YamlProcessListContexts yamlContexts = swapper.swapToYamlConfiguration(ShowProcessListManager.getInstance().getProcessContexts().values());
+        YamlProcessListContexts yamlContexts = swapper.swapToYamlConfiguration(ShowProcessListManager.getInstance().getAllProcessContexts());
         eventBusContext.post(new ShowProcessListResponseEvent(yamlContexts.getContexts().isEmpty() ? Collections.emptyList() : Collections.singleton(YamlEngine.marshal(yamlContexts))));
     }
     
diff --git a/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriberTest.java b/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriberTest.java
index 08c25270824..8a9c85be626 100644
--- a/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriberTest.java
+++ b/mode/type/standalone/core/src/test/java/org/apache/shardingsphere/mode/manager/standalone/subscriber/ProcessStandaloneSubscriberTest.java
@@ -38,6 +38,6 @@ class ProcessStandaloneSubscriberTest {
         ShowProcessListManager showProcessListManager = mock(ShowProcessListManager.class);
         when(ShowProcessListManager.getInstance()).thenReturn(showProcessListManager);
         new ProcessStandaloneSubscriber(new EventBusContext()).loadShowProcessListData(mock(ShowProcessListRequestEvent.class));
-        verify(showProcessListManager).getProcessContexts();
+        verify(showProcessListManager).getAllProcessContexts();
     }
 }