You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by wu...@apache.org on 2022/07/28 11:27:52 UTC
[shardingsphere] branch master updated: fix issue #18528 (#19640)
This is an automated email from the ASF dual-hosted git repository.
wuweijie 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 7721ed0eae8 fix issue #18528 (#19640)
7721ed0eae8 is described below
commit 7721ed0eae8411f06bd9c0a86e9f09af4efde85f
Author: xuup <33...@users.noreply.github.com>
AuthorDate: Thu Jul 28 19:27:38 2022 +0800
fix issue #18528 (#19640)
---
.../proxy/backend/text/admin/mysql/MySQLAdminExecutorCreator.java | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/admin/mysql/MySQLAdminExecutorCreator.java b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/admin/mysql/MySQLAdminExecutorCreator.java
index d96885d3554..1282dd8af20 100644
--- a/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/admin/mysql/MySQLAdminExecutorCreator.java
+++ b/shardingsphere-proxy/shardingsphere-proxy-backend/src/main/java/org/apache/shardingsphere/proxy/backend/text/admin/mysql/MySQLAdminExecutorCreator.java
@@ -51,6 +51,7 @@ import org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQ
import org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLShowProcessListStatement;
import org.apache.shardingsphere.sql.parser.sql.dialect.statement.mysql.dal.MySQLShowTablesStatement;
+import java.util.Iterator;
import java.util.Collection;
import java.util.Optional;
@@ -137,8 +138,10 @@ public final class MySQLAdminExecutorCreator implements DatabaseAdminExecutorCre
}
private boolean isShowSpecialFunction(final SelectStatement sqlStatement, final String functionName) {
- ProjectionSegment firstProjection = sqlStatement.getProjections().getProjections().iterator().next();
- return firstProjection instanceof ExpressionProjectionSegment && functionName.equalsIgnoreCase(((ExpressionProjectionSegment) firstProjection).getText());
+ Iterator<ProjectionSegment> segmentIterator = sqlStatement.getProjections().getProjections().iterator();
+ ProjectionSegment firstProjection = segmentIterator.next();
+ return !segmentIterator.hasNext() && firstProjection instanceof ExpressionProjectionSegment
+ && functionName.equalsIgnoreCase(((ExpressionProjectionSegment) firstProjection).getText());
}
private boolean isQueryInformationSchema(final SelectStatement sqlStatement) {