This is an automated email from the ASF dual-hosted git repository.
duanzhengqiang 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 a1d335b4ee4 Remove ExecuteProcessStatus (#25409)
a1d335b4ee4 is described below
commit a1d335b4ee45798a93ec9b5a4ffaefede316deae
Author: Liang Zhang <[email protected]>
AuthorDate: Sat Apr 29 08:47:41 2023 +0800
Remove ExecuteProcessStatus (#25409)
* Refactor ExecuteProcessUnit.isCompleted
* Refactor ExecuteProcessUnit
* Remove ExecuteProcessStatus
* Fix test case
* Fix test case
* Refactor ExecuteProcessContext
---
.../sql/process/ExecuteProcessReporter.java | 9 ++++----
.../sql/process/model/ExecuteProcessContext.java | 26 ++++++++++++++++------
.../sql/process/model/ExecuteProcessStatus.java | 26 ----------------------
.../sql/process/model/ExecuteProcessUnit.java | 15 ++++++++-----
.../process/yaml/YamlExecuteProcessContext.java | 3 +--
.../swapper/YamlExecuteProcessContextSwapper.java | 6 ++---
.../YamlAllExecuteProcessContextsSwapperTest.java | 6 ++---
.../YamlExecuteProcessContextSwapperTest.java | 6 ++---
.../ProcessListChangedSubscriberTest.java | 2 +-
.../admin/executor/ShowProcessListExecutor.java | 7 +++---
.../executor/ShowProcessListExecutorTest.java | 3 ++-
11 files changed, 49 insertions(+), 60 deletions(-)
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ExecuteProcessReporter.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ExecuteProcessReporter.java
index 6d66d076fbb..c645dc5c796 100644
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ExecuteProcessReporter.java
+++
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/ExecuteProcessReporter.java
@@ -21,7 +21,6 @@ import org.apache.shardingsphere.infra.binder.QueryContext;
import
org.apache.shardingsphere.infra.executor.kernel.model.ExecutionGroupContext;
import
org.apache.shardingsphere.infra.executor.sql.execute.engine.SQLExecutionUnit;
import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessContext;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessUnit;
import org.apache.shardingsphere.infra.util.spi.ShardingSphereServiceLoader;
@@ -38,7 +37,7 @@ public final class ExecuteProcessReporter {
* @param executionGroupContext execution group context
*/
public void reportConnect(final ExecutionGroupContext<? extends
SQLExecutionUnit> executionGroupContext) {
- ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext("", executionGroupContext, ExecuteProcessStatus.SLEEP);
+ ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext(executionGroupContext);
ShowProcessListManager.getInstance().putProcessContext(executeProcessContext.getExecutionID(),
executeProcessContext);
}
@@ -49,7 +48,7 @@ public final class ExecuteProcessReporter {
* @param executionGroupContext execution group context
*/
public void reportExecute(final QueryContext queryContext, final
ExecutionGroupContext<? extends SQLExecutionUnit> executionGroupContext) {
- ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext(queryContext.getSql(), executionGroupContext,
ExecuteProcessStatus.START);
+ ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext(queryContext.getSql(), executionGroupContext);
ShowProcessListManager.getInstance().putProcessContext(executeProcessContext.getExecutionID(),
executeProcessContext);
ShowProcessListManager.getInstance().putProcessStatement(executeProcessContext.getExecutionID(),
executeProcessContext.getProcessStatements());
}
@@ -61,9 +60,9 @@ public final class ExecuteProcessReporter {
* @param executionUnit execution unit
*/
public void reportComplete(final String executionID, final
SQLExecutionUnit executionUnit) {
- ExecuteProcessUnit executeProcessUnit = new
ExecuteProcessUnit(executionUnit.getExecutionUnit(), ExecuteProcessStatus.DONE);
+ ExecuteProcessUnit executeProcessUnit = new
ExecuteProcessUnit(executionUnit.getExecutionUnit());
ExecuteProcessContext executeProcessContext =
ShowProcessListManager.getInstance().getProcessContext(executionID);
-
Optional.ofNullable(executeProcessContext.getProcessUnits().get(executeProcessUnit.getUnitID())).ifPresent(optional
-> optional.setStatus(ExecuteProcessStatus.DONE));
+
Optional.ofNullable(executeProcessContext.getProcessUnits().get(executeProcessUnit.getUnitID())).ifPresent(ExecuteProcessUnit::switchComplete);
}
/**
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessContext.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessContext.java
index ebbc32d577f..44dc7d65d09 100644
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessContext.java
+++
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessContext.java
@@ -52,24 +52,36 @@ public final class ExecuteProcessContext {
private long startMillis;
- private ExecuteProcessStatus status;
+ private volatile boolean executing;
- public ExecuteProcessContext(final String sql, final
ExecutionGroupContext<? extends SQLExecutionUnit> executionGroupContext, final
ExecuteProcessStatus status) {
+ public ExecuteProcessContext(final ExecutionGroupContext<? extends
SQLExecutionUnit> executionGroupContext) {
+ executionID =
executionGroupContext.getReportContext().getExecutionID();
+ databaseName =
executionGroupContext.getReportContext().getDatabaseName();
+ Grantee grantee =
executionGroupContext.getReportContext().getGrantee();
+ username = null == grantee ? null : grantee.getUsername();
+ hostname = null == grantee ? null : grantee.getHostname();
+ sql = "";
+ startMillis = System.currentTimeMillis();
+ executing = false;
+ addProcessUnitsAndStatements(executionGroupContext);
+ }
+
+ public ExecuteProcessContext(final String sql, final
ExecutionGroupContext<? extends SQLExecutionUnit> executionGroupContext) {
executionID =
executionGroupContext.getReportContext().getExecutionID();
databaseName =
executionGroupContext.getReportContext().getDatabaseName();
Grantee grantee =
executionGroupContext.getReportContext().getGrantee();
username = null == grantee ? null : grantee.getUsername();
hostname = null == grantee ? null : grantee.getHostname();
this.sql = sql;
- this.status = status;
startMillis = System.currentTimeMillis();
- addProcessUnitsAndStatements(executionGroupContext, status);
+ executing = true;
+ addProcessUnitsAndStatements(executionGroupContext);
}
- private void addProcessUnitsAndStatements(final ExecutionGroupContext<?
extends SQLExecutionUnit> executionGroupContext, final ExecuteProcessStatus
processStatus) {
+ private void addProcessUnitsAndStatements(final ExecutionGroupContext<?
extends SQLExecutionUnit> executionGroupContext) {
for (ExecutionGroup<? extends SQLExecutionUnit> each :
executionGroupContext.getInputGroups()) {
for (SQLExecutionUnit executionUnit : each.getInputs()) {
- ExecuteProcessUnit processUnit = new
ExecuteProcessUnit(executionUnit.getExecutionUnit(), processStatus);
+ ExecuteProcessUnit processUnit = new
ExecuteProcessUnit(executionUnit.getExecutionUnit());
processUnits.put(processUnit.getUnitID(), processUnit);
if (executionUnit instanceof JDBCExecutionUnit) {
processStatements.add(((JDBCExecutionUnit)
executionUnit).getStorageResource());
@@ -84,6 +96,6 @@ public final class ExecuteProcessContext {
public void reset() {
sql = "";
startMillis = System.currentTimeMillis();
- status = ExecuteProcessStatus.SLEEP;
+ executing = false;
}
}
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessStatus.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessStatus.java
deleted file mode 100644
index 36d928144e4..00000000000
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessStatus.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.executor.sql.process.model;
-
-/**
- * Execute process status.
- */
-public enum ExecuteProcessStatus {
-
- START, DONE, SLEEP
-}
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessUnit.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessUnit.java
index cce46bc0be4..441356273c9 100644
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessUnit.java
+++
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/model/ExecuteProcessUnit.java
@@ -18,22 +18,27 @@
package org.apache.shardingsphere.infra.executor.sql.process.model;
import lombok.Getter;
-import lombok.Setter;
import org.apache.shardingsphere.infra.executor.sql.context.ExecutionUnit;
/**
* Execute process unit.
*/
@Getter
-@Setter
public final class ExecuteProcessUnit {
private final String unitID;
- private volatile ExecuteProcessStatus status;
+ private volatile boolean completed;
- public ExecuteProcessUnit(final ExecutionUnit executionUnit, final
ExecuteProcessStatus status) {
+ public ExecuteProcessUnit(final ExecutionUnit executionUnit) {
this.unitID = String.valueOf(executionUnit.hashCode());
- this.status = status;
+ completed = false;
+ }
+
+ /**
+ * Switch to complete.
+ */
+ public void switchComplete() {
+ completed = true;
}
}
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/YamlExecuteProcessContext.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/YamlExecuteProcessContext.java
index 48f181eba82..ef771f239d2 100644
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/YamlExecuteProcessContext.java
+++
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/YamlExecuteProcessContext.java
@@ -19,7 +19,6 @@ package
org.apache.shardingsphere.infra.executor.sql.process.yaml;
import lombok.Getter;
import lombok.Setter;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
import org.apache.shardingsphere.infra.util.yaml.YamlConfiguration;
/**
@@ -45,5 +44,5 @@ public final class YamlExecuteProcessContext implements
YamlConfiguration {
private Long startTimeMillis;
- private ExecuteProcessStatus processStatus;
+ private boolean executing;
}
diff --git
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapper.java
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapper.java
index a44d5cd9027..03ef69d78c8 100644
---
a/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapper.java
+++
b/infra/executor/src/main/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapper.java
@@ -18,7 +18,7 @@
package org.apache.shardingsphere.infra.executor.sql.process.yaml.swapper;
import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessContext;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
+import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessUnit;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlExecuteProcessContext;
import
org.apache.shardingsphere.infra.util.yaml.swapper.YamlConfigurationSwapper;
@@ -36,9 +36,9 @@ public final class YamlExecuteProcessContextSwapper
implements YamlConfiguration
result.setHostname(data.getHostname());
result.setSql(data.getSql());
result.setTotalUnitCount(data.getProcessUnits().size());
-
result.setCompletedUnitCount(Long.valueOf(data.getProcessUnits().values().stream().filter(each
-> ExecuteProcessStatus.DONE == each.getStatus()).count()).intValue());
+
result.setCompletedUnitCount(Long.valueOf(data.getProcessUnits().values().stream().filter(ExecuteProcessUnit::isCompleted).count()).intValue());
result.setStartTimeMillis(data.getStartMillis());
- result.setProcessStatus(data.getStatus());
+ result.setExecuting(data.isExecuting());
return result;
}
diff --git
a/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlAllExecuteProcessContextsSwapperTest.java
b/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlAllExecuteProcessContextsSwapperTest.java
index 51fa0dfed37..4b03612c2b0 100644
---
a/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlAllExecuteProcessContextsSwapperTest.java
+++
b/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlAllExecuteProcessContextsSwapperTest.java
@@ -21,7 +21,6 @@ import
org.apache.shardingsphere.infra.executor.kernel.model.ExecutionGroupConte
import
org.apache.shardingsphere.infra.executor.kernel.model.ExecutionGroupReportContext;
import
org.apache.shardingsphere.infra.executor.sql.execute.engine.SQLExecutionUnit;
import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessContext;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlAllExecuteProcessContexts;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlExecuteProcessContext;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
@@ -34,6 +33,7 @@ import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.lessThanOrEqualTo;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
class YamlAllExecuteProcessContextsSwapperTest {
@@ -41,7 +41,7 @@ class YamlAllExecuteProcessContextsSwapperTest {
void assertSwapToYamlConfiguration() {
ExecutionGroupReportContext reportContext = new
ExecutionGroupReportContext("foo_db", new Grantee("root", "localhost"));
ExecutionGroupContext<? extends SQLExecutionUnit>
executionGroupContext = new ExecutionGroupContext<>(Collections.emptyList(),
reportContext);
- ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext("SELECT 1", executionGroupContext,
ExecuteProcessStatus.START);
+ ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext("SELECT 1", executionGroupContext);
YamlAllExecuteProcessContexts actual = new
YamlAllExecuteProcessContextsSwapper().swapToYamlConfiguration(Collections.singleton(executeProcessContext));
assertThat(actual.getContexts().size(), is(1));
assertYamlExecuteProcessContext(actual.getContexts().iterator().next());
@@ -56,7 +56,7 @@ class YamlAllExecuteProcessContextsSwapperTest {
assertThat(actual.getCompletedUnitCount(), is(0));
assertThat(actual.getTotalUnitCount(), is(0));
assertThat(actual.getStartTimeMillis(),
lessThanOrEqualTo(System.currentTimeMillis()));
- assertThat(actual.getProcessStatus(), is(ExecuteProcessStatus.START));
+ assertTrue(actual.isExecuting());
}
@Test
diff --git
a/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapperTest.java
b/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapperTest.java
index f0ede46a69f..77653e47e69 100644
---
a/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapperTest.java
+++
b/infra/executor/src/test/java/org/apache/shardingsphere/infra/executor/sql/process/yaml/swapper/YamlExecuteProcessContextSwapperTest.java
@@ -21,7 +21,6 @@ import
org.apache.shardingsphere.infra.executor.kernel.model.ExecutionGroupConte
import
org.apache.shardingsphere.infra.executor.kernel.model.ExecutionGroupReportContext;
import
org.apache.shardingsphere.infra.executor.sql.execute.engine.SQLExecutionUnit;
import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessContext;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlExecuteProcessContext;
import org.apache.shardingsphere.infra.metadata.user.Grantee;
import org.junit.jupiter.api.Test;
@@ -33,6 +32,7 @@ import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.lessThanOrEqualTo;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import static org.junit.jupiter.api.Assertions.assertThrows;
+import static org.junit.jupiter.api.Assertions.assertTrue;
class YamlExecuteProcessContextSwapperTest {
@@ -40,7 +40,7 @@ class YamlExecuteProcessContextSwapperTest {
void assertSwapToYamlConfiguration() {
ExecutionGroupReportContext reportContext = new
ExecutionGroupReportContext("foo_db", new Grantee("root", "localhost"));
ExecutionGroupContext<? extends SQLExecutionUnit>
executionGroupContext = new ExecutionGroupContext<>(Collections.emptyList(),
reportContext);
- ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext("SELECT 1", executionGroupContext,
ExecuteProcessStatus.START);
+ ExecuteProcessContext executeProcessContext = new
ExecuteProcessContext("SELECT 1", executionGroupContext);
YamlExecuteProcessContext actual = new
YamlExecuteProcessContextSwapper().swapToYamlConfiguration(executeProcessContext);
assertNotNull(actual.getExecutionID());
assertThat(actual.getDatabaseName(), is("foo_db"));
@@ -50,7 +50,7 @@ class YamlExecuteProcessContextSwapperTest {
assertThat(actual.getCompletedUnitCount(), is(0));
assertThat(actual.getTotalUnitCount(), is(0));
assertThat(actual.getStartTimeMillis(),
lessThanOrEqualTo(System.currentTimeMillis()));
- assertThat(actual.getProcessStatus(), is(ExecuteProcessStatus.START));
+ assertTrue(actual.isExecuting());
}
@Test
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 ff0d89ea65a..fc7693049ee 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
@@ -127,7 +127,7 @@ class ProcessListChangedSubscriberTest {
subscriber.triggerShowProcessList(new
ShowProcessListTriggerEvent(instanceId, processListId));
ClusterPersistRepository repository = ((RegistryCenter)
Plugins.getMemberAccessor().get(ProcessListChangedSubscriber.class.getDeclaredField("registryCenter"),
subscriber)).getRepository();
verify(repository).persist("/execution_nodes/foo_process_id/" +
instanceId,
- "contexts:" + System.lineSeparator() + "- completedUnitCount:
0\n startTimeMillis: 0\n totalUnitCount: 0" + System.lineSeparator());
+ "contexts:" + System.lineSeparator() + "- completedUnitCount:
0\n executing: false\n startTimeMillis: 0\n totalUnitCount: 0" +
System.lineSeparator());
verify(repository).delete("/nodes/compute_nodes/process_trigger/" +
instanceId + ":foo_process_id");
}
diff --git
a/proxy/backend/type/mysql/src/main/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutor.java
b/proxy/backend/type/mysql/src/main/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutor.java
index 741bfbcbd14..5c735d26031 100644
---
a/proxy/backend/type/mysql/src/main/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutor.java
+++
b/proxy/backend/type/mysql/src/main/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutor.java
@@ -25,7 +25,6 @@ import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.ra
import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.raw.metadata.RawQueryResultMetaData;
import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.impl.raw.type.RawMemoryQueryResult;
import
org.apache.shardingsphere.infra.executor.sql.execute.result.query.type.memory.row.MemoryQueryResultDataRow;
-import
org.apache.shardingsphere.infra.executor.sql.process.model.ExecuteProcessStatus;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlAllExecuteProcessContexts;
import
org.apache.shardingsphere.infra.executor.sql.process.yaml.YamlExecuteProcessContext;
import org.apache.shardingsphere.infra.merge.result.MergedResult;
@@ -99,10 +98,10 @@ public final class ShowProcessListExecutor implements
DatabaseAdminQueryExecutor
rowValues.add(yamlExecuteProcessContext.getUsername());
rowValues.add(yamlExecuteProcessContext.getHostname());
rowValues.add(yamlExecuteProcessContext.getDatabaseName());
- rowValues.add(ExecuteProcessStatus.SLEEP ==
yamlExecuteProcessContext.getProcessStatus() ? "Sleep" : "Execute");
+ rowValues.add(yamlExecuteProcessContext.isExecuting() ? "Execute" :
"Sleep");
rowValues.add(TimeUnit.MILLISECONDS.toSeconds(System.currentTimeMillis() -
yamlExecuteProcessContext.getStartTimeMillis()));
String sql = null;
- if (ExecuteProcessStatus.SLEEP ==
yamlExecuteProcessContext.getProcessStatus()) {
+ if (!yamlExecuteProcessContext.isExecuting()) {
rowValues.add("");
} else {
int processDoneCount =
yamlExecuteProcessContext.getCompletedUnitCount();
@@ -118,7 +117,7 @@ public final class ShowProcessListExecutor implements
DatabaseAdminQueryExecutor
}
private QueryResultMetaData createQueryResultMetaData() {
- List<RawQueryResultColumnMetaData> columns = new ArrayList<>();
+ List<RawQueryResultColumnMetaData> columns = new ArrayList<>(8);
columns.add(new RawQueryResultColumnMetaData("", "Id", "Id",
Types.VARCHAR, "VARCHAR", 20, 0));
columns.add(new RawQueryResultColumnMetaData("", "User", "User",
Types.VARCHAR, "VARCHAR", 20, 0));
columns.add(new RawQueryResultColumnMetaData("", "Host", "Host",
Types.VARCHAR, "VARCHAR", 64, 0));
diff --git
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutorTest.java
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutorTest.java
index ac5e62d87d6..01aef6d5259 100644
---
a/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutorTest.java
+++
b/proxy/backend/type/mysql/src/test/java/org/apache/shardingsphere/proxy/backend/mysql/handler/admin/executor/ShowProcessListExecutorTest.java
@@ -71,7 +71,8 @@ class ShowProcessListExecutorTest {
+ " username: sharding\n"
+ " hostname: 127.0.0.1\n"
+ " totalUnitCount: 2\n"
- + " completedUnitCount: 1\n";
+ + " completedUnitCount: 1\n"
+ + " executing: true\n";
Plugins.getMemberAccessor().set(showProcessListExecutor.getClass().getDeclaredField("batchProcessContexts"),
showProcessListExecutor, Collections.singleton(executionNodeValue));
}
}