You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@shardingsphere.apache.org by du...@apache.org on 2022/10/21 09:21:50 UTC

[shardingsphere] branch master updated: Update TableExtractor.java (#21597)

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 3c489535cd0 Update TableExtractor.java (#21597)
3c489535cd0 is described below

commit 3c489535cd0abea12df0fce8ceb677f7adc741b9
Author: xuejmnet <32...@qq.com>
AuthorDate: Fri Oct 21 17:21:42 2022 +0800

    Update TableExtractor.java (#21597)
    
    * Update TableExtractor.java
    
    防止静态方法多次调用和多次判断转换,当SelectStatement不在对应的if语句里面需要多判断4次
    
    * Update TableExtractor.java
---
 .../sql/parser/sql/common/extractor/TableExtractor.java              | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/sql-parser/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/extractor/TableExtractor.java b/sql-parser/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/extractor/TableExtractor.java
index b63dc09e69e..71675f77ed7 100644
--- a/sql-parser/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/extractor/TableExtractor.java
+++ b/sql-parser/statement/src/main/java/org/apache/shardingsphere/sql/parser/sql/common/extractor/TableExtractor.java
@@ -88,9 +88,8 @@ public final class TableExtractor {
         if (selectStatement.getOrderBy().isPresent()) {
             extractTablesFromOrderByItems(selectStatement.getOrderBy().get().getOrderByItems());
         }
-        if (SelectStatementHandler.getLockSegment(selectStatement).isPresent()) {
-            extractTablesFromLock(SelectStatementHandler.getLockSegment(selectStatement).get());
-        }
+        Optional<LockSegment> lockSegment = SelectStatementHandler.getLockSegment(selectStatement);
+        lockSegment.ifPresent(this::extractTablesFromLock);
         if (selectStatement.getCombine().isPresent()) {
             extractTablesFromSelect(selectStatement.getCombine().get().getSelectStatement());
         }