Uploaded image for project: 'Apache IoTDB'
  1. Apache IoTDB
  2. IOTDB-5959

show view :The error message is not accurate.

    XMLWordPrintableJSON

Details

    Description

      问题描述 :
      删除view 的源序列,show view 报错信息不正确。

      用例:
      drop database root.db;
      drop database root.view;
      create database root.db;
      create database root.view;
      create timeseries root.db.d01.s01 with datatype=INT32;
      create timeseries root.db.d01.s02 with datatype=INT64;
      create timeseries root.db.d02.s01 with datatype=BOOLEAN;
      create timeseries root.db.d02.s02 with datatype=TEXT;

      CREATE VIEW root.view.d(alpha, beta, gamma,delta) AS SELECT s01, s02 FROM root.db.d01, root.db.d02;
      show view root.view.d.*;
      insert into root.db.d01(time,s01,s02) values(1,1,1);
      insert into root.db.d02(time,s01,s02) values(2,true,"hello");
      select alpha, beta, gamma,delta from root.view.d;
      show view root.view.d.delta;
      delete timeseries root.db.d02.s02;
      show view root.view.d.delta;
      show view;
      show view;
      drop view root.view.d.delta;
      show view root.view.d.delta;
      create timeseries root.db.d02.s02 with datatype=TEXT;
      show view root.view.d.*;
      show view root.view.d.gamma;
      delete timeseries root.db.d01.s02;
      show view root.view.d.gamma;
      show view;
      show view;
      show view;
      show view;
      因为此环境,已经多次执行 view 功能的测试。
      运行到这个用例,才出现这个问题,可以参考log 定位:
      2023-05-31 18:02:26,448 [pool-28-IoTDB-ClientRPC-Processor-6] WARN o.a.i.d.u.ErrorHandlingUtils:89 - Status code: 301, Query Statement: "show view". executeStatement failed
      org.apache.iotdb.commons.exception.IoTDBException: java.lang.IllegalStateException: queue has been destroyed
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.dealWithException(QueryExecution.java:530)
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getResult(QueryExecution.java:513)
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getByteBufferBatchResult(QueryExecution.java:548)
      at org.apache.iotdb.db.utils.QueryDataSetUtils.convertQueryResultByFetchSize(QueryDataSetUtils.java:254)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.lambda$static$0(ClientRPCServiceImpl.java:173)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementInternal(ClientRPCServiceImpl.java:252)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementV2(ClientRPCServiceImpl.java:570)
      at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3749)
      at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3729)
      at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
      at org.apache.iotdb.db.service.thrift.ProcessorWithMetrics.process(ProcessorWithMetrics.java:64)
      at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)
      Caused by: java.lang.IllegalStateException: queue has been destroyed
      at org.apache.iotdb.db.mpp.execution.exchange.SharedTsBlockQueue.remove(SharedTsBlockQueue.java:178)
      at org.apache.iotdb.db.mpp.execution.exchange.source.LocalSourceHandle.receive(LocalSourceHandle.java:113)
      at org.apache.iotdb.db.mpp.execution.operator.source.ExchangeOperator.next(ExchangeOperator.java:76)
      at org.apache.iotdb.db.mpp.execution.operator.Operator.nextWithTimer(Operator.java:46)
      at org.apache.iotdb.db.mpp.execution.operator.schema.SchemaQueryMergeOperator.next(SchemaQueryMergeOperator.java:55)
      at org.apache.iotdb.db.mpp.execution.operator.sink.IdentitySinkOperator.next(IdentitySinkOperator.java:99)
      at org.apache.iotdb.db.mpp.execution.operator.Operator.nextWithTimer(Operator.java:46)
      at org.apache.iotdb.db.mpp.execution.driver.Driver.processInternal(Driver.java:229)
      at org.apache.iotdb.db.mpp.execution.driver.Driver.lambda$processFor$1(Driver.java:152)
      at org.apache.iotdb.db.mpp.execution.driver.Driver.tryWithLock(Driver.java:316)
      at org.apache.iotdb.db.mpp.execution.driver.Driver.processFor(Driver.java:133)
      at org.apache.iotdb.db.mpp.execution.schedule.DriverTaskThread.execute(DriverTaskThread.java:68)
      at org.apache.iotdb.db.mpp.execution.schedule.AbstractDriverThread.run(AbstractDriverThread.java:73)
      2023-05-31 18:05:30,453 [Query-Worker-Thread-2$20230531_100530_03199_1.3.0.0] WARN o.a.i.d.m.e.s.DriverScheduler$Scheduler:566 - The task 20230531_100530_03199_1.3.0.0 is aborted. All other tasks in the same query will be cancelled
      2023-05-31 18:05:30,454 [pool-28-IoTDB-ClientRPC-Processor-6] WARN o.a.i.d.u.ErrorHandlingUtils:89 - Status code: 301, Query Statement: "show view". executeStatement failed
      org.apache.iotdb.commons.exception.IoTDBException: org.apache.iotdb.db.mpp.execution.schedule.DriverTaskAbortedException: DriverTask 20230531_100530_03199_1.1.0.0 is aborted by query cascading aborted
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.dealWithException(QueryExecution.java:530)
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getResult(QueryExecution.java:513)
      at org.apache.iotdb.db.mpp.plan.execution.QueryExecution.getByteBufferBatchResult(QueryExecution.java:548)
      at org.apache.iotdb.db.utils.QueryDataSetUtils.convertQueryResultByFetchSize(QueryDataSetUtils.java:254)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.lambda$static$0(ClientRPCServiceImpl.java:173)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementInternal(ClientRPCServiceImpl.java:252)
      at org.apache.iotdb.db.service.thrift.impl.ClientRPCServiceImpl.executeStatementV2(ClientRPCServiceImpl.java:570)
      at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3749)
      at org.apache.iotdb.service.rpc.thrift.IClientRPCService$Processor$executeStatementV2.getResult(IClientRPCService.java:3729)
      at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:38)
      at org.apache.iotdb.db.service.thrift.ProcessorWithMetrics.process(ProcessorWithMetrics.java:64)
      at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:248)
      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
      at java.lang.Thread.run(Thread.java:748)
      Caused by: org.apache.iotdb.db.mpp.execution.schedule.DriverTaskAbortedException: DriverTask 20230531_100530_03199_1.1.0.0 is aborted by query cascading aborted
      at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler.clearDriverTask(DriverScheduler.java:384)
      at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler.access$1000(DriverScheduler.java:71)
      at org.apache.iotdb.db.mpp.execution.schedule.DriverScheduler$Scheduler.toAborted(DriverScheduler.java:584)
      at org.apache.iotdb.db.mpp.execution.schedule.AbstractDriverThread.run(AbstractDriverThread.java:81)

      Attachments

        Activity

          People

            citrusreticulata Xingyu Liu
            刘珍 刘珍
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: