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

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


The following commit(s) were added to refs/heads/master by this push:
     new 11a0ae9a87 [fix](ctas) fix show load throw NPE after ctas (#17937)
11a0ae9a87 is described below

commit 11a0ae9a87b41dd650c868447f15d4231717ec71
Author: Mingyu Chen <morning...@163.com>
AuthorDate: Tue Mar 21 08:49:51 2023 +0800

    [fix](ctas) fix show load throw NPE after ctas (#17937)
    
    Missing userinfo
    
    java.lang.NullPointerException: null
            at 
org.apache.doris.load.loadv2.LoadJob.getShowInfo(LoadJob.java:816) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.load.loadv2.LoadManager.getLoadJobInfosByDb(LoadManager.java:557)
 ~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.qe.ShowExecutor.handleShowLoad(ShowExecutor.java:1094) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at org.apache.doris.qe.ShowExecutor.execute(ShowExecutor.java:280) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.qe.StmtExecutor.handleShow(StmtExecutor.java:1862) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:619) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at org.apache.doris.qe.StmtExecutor.execute(StmtExecutor.java:435) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.qe.ConnectProcessor.handleQuery(ConnectProcessor.java:414) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.qe.ConnectProcessor.dispatch(ConnectProcessor.java:558) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.qe.ConnectProcessor.processOnce(ConnectProcessor.java:799) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
org.apache.doris.mysql.ReadListener.lambda$handleEvent$0(ReadListener.java:52) 
~[doris-fe.jar:1.2-SNAPSHOT]
            at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
~[?:1.8.0_131]
            at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
~[?:1.8.0_131]
            at java.lang.Thread.run(Thread.java:748) ~[?:1.8.0_131]
---
 .../src/main/java/org/apache/doris/qe/StmtExecutor.java |  1 +
 regression-test/suites/ddl_p0/test_ctas.groovy          | 17 ++++++++++++++---
 2 files changed, 15 insertions(+), 3 deletions(-)

diff --git a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java 
b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java
index 8f9e060e4e..02f869ffea 100644
--- a/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java
+++ b/fe/fe-core/src/main/java/org/apache/doris/qe/StmtExecutor.java
@@ -2020,6 +2020,7 @@ public class StmtExecutor implements ProfileWriter {
         if (MysqlStateType.OK.equals(context.getState().getStateType())) {
             try {
                 parsedStmt = ctasStmt.getInsertStmt();
+                parsedStmt.setUserInfo(context.getCurrentUserIdentity());
                 execute();
                 if 
(MysqlStateType.ERR.equals(context.getState().getStateType())) {
                     LOG.warn("CTAS insert data error, stmt={}", 
ctasStmt.toSql());
diff --git a/regression-test/suites/ddl_p0/test_ctas.groovy 
b/regression-test/suites/ddl_p0/test_ctas.groovy
index 744aa7232b..1fdb93cc58 100644
--- a/regression-test/suites/ddl_p0/test_ctas.groovy
+++ b/regression-test/suites/ddl_p0/test_ctas.groovy
@@ -16,6 +16,12 @@
 // under the License.
 
 suite("test_ctas") {
+    def dbname = "test_ctas";
+    sql """drop database if exists ${dbname}"""
+    sql """create database ${dbname}"""
+    sql """use ${dbname}"""
+    sql """clean label from ${dbname}"""
+
     try {
         sql """
     CREATE TABLE IF NOT EXISTS `test_ctas` (
@@ -77,9 +83,9 @@ suite("test_ctas") {
     )
     """
 
-      sql """ insert into test_ctas_json_object(c1, v1, v2) values ('r1', 1.1, 
1.2),('r2', 2.1, 2.2) """
+        sql """ insert into test_ctas_json_object(c1, v1, v2) values ('r1', 
1.1, 1.2),('r2', 2.1, 2.2) """
 
-      sql """
+        sql """
     CREATE TABLE IF NOT EXISTS `test_ctas_json_object1`
     PROPERTIES (
       "replication_allocation" = "tag.location.default: 1",
@@ -88,7 +94,7 @@ suite("test_ctas") {
     ) as select c1, json_object('title', 'Amount', 'value', v1) from 
test_ctas_json_object;
     """
 
-      qt_select """select * from test_ctas_json_object1 order by c1;"""
+        qt_select """select * from test_ctas_json_object1 order by c1;"""
 
         sql """create table a properties("replication_num"="1") as select null 
as c;"""
         test {
@@ -96,6 +102,11 @@ suite("test_ctas") {
             result([[null]])
         }
 
+        test {
+            sql """show load from ${dbname}"""
+            rowNum 6
+        }
+
     } finally {
         sql """ DROP TABLE IF EXISTS test_ctas """
 


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@doris.apache.org
For additional commands, e-mail: commits-h...@doris.apache.org

Reply via email to